Karel Zikmund

Karel Zikmund

.NET team in Microsoft - Software Engineering Manager

Redmond, Washington, United States

Karel is on .NET team since 2005:
• Started as developer on Runtime/CLR components (7 years).
• Manager of reliability and performance team (incl. Quick Response Team) (3 years).
• Manager of .NET Native toolchain team (1 year).
• Community manager of CoreFX repo and Manager of a few CoreFX/BCL areas like Networking (3 years).
• Manager of Networking team (since 2019).
Details: https://karelz.github.io

Area of Expertise

  • Information & Communications Technology


  • .NET
  • OpenSource
  • .net core
  • .NET Standard
  • Visual Studio / .NET
  • .net framework

Networking in .NET 7.0

What's new in .NET 7.0 Networking
- HTTP/3 & QUIC protocols - Evolution of HTTP protocol, benefits of HTTP/3 and QUIC. What is available in .NET 7.0.
- HTTP/2 WebSockets - Benefits compared to HTTP/1.1 WebSockets. How to use it in .NET 7.0.

Duration 30-60 min
Presented at:
- WUG Days 2020 Brno (in CZ)

[Archived] Challenges of Managing CoreFX repo

.NET Core's CoreFX repo is a large repo with unique challenges to handle bugs, contributions, triage issues, etc. Its size is a challenge to monitor due to high traffic.
The talk will explore some of the key challenges our team encountered and how we handle them.

We will cover:
• Distributed monitoring model (per-area responsibility),
• Data-driven decisions for porting APIs from .NET Framework,
• Responding to new API proposals,
• Why sometimes you say NO to perf improvements,
How being open-source is shifting our engineering culture and interaction with customers.

Duration: 30-60 min
Presented at:
- .NET Fringe 2017
- DotNext Moscow 2017
- NDC London 2020 - https://www.youtube.com/watch?v=zLB2_h-3ZS4
- See more MeetUp presentations at https://karelz.github.io/details

[Archived] .NET Core Networking stack evolution to high-performance

Architecture of .NET Core client-side networking stack focused on portability and performance.
Sharing with server-side networking stack (Kestrel).

The talk will cover:
• Evolution of networking client-stack from .NET Framework to .NET Core 2.1,
• Design goals of the new high-performance networking client-stack (SocketsHttpHandler),
• .NET Core 3.0 roadmap for client-stack (HTTP/2) and beyond,
• Performance goals and strategy,
General CoreFX/BCL performance goals.

Duration: 30-60 min
Presented at:
- DotNext 2017 Moscow - https://www.youtube.com/watch?v=M3FZZhnRvQY&list=PLtWrKx3nUGBfYHhmiGih2lanzmRigE9cc&index=24&t=0s
- See more MeetUp presentations at https://karelz.github.io/details

Async demystified

Do you struggle to fully understand async in C#? How it works and why?
I did. So I asked the best - the author of async, Stephen Toub. This talk is summary of the most interesting insights from him that helped me finally truly understand the magic behind async.

The talk will cover:
* History and evolution of asynchronous programming patterns in C# and their problems. Leading to async and demonstrating the "why" behind its design choices.
* Touch on the "how" it works behind the scenes.
* Reasons for customizing and hyper-optimizing async for high-performance (like Networking stack).
* Touch on related building block - ThreadPool.
* Hands on sync-over-async pattern and associated problems. Workarounds in your code if you hit it. Potential solutions in future .NET versions.

Duration: 45-60 min (talk in making)
Presented at:
- NDC Sydney 2019 - https://www.youtube.com/watch?v=TgUYcZV-foM
- See more MeetUp presentations at https://karelz.github.io/details

War stories from .NET team

Expect deep dive into a few interesting investigations we faced on .NET team in the last decade.
War stories about:
• Investigations spanning years,
• Dormant bugs coming to life after a decade,
• Root-causes leading to surprising places,
• How we rooted-cause problems with minimal information available,
• Shocking impact of bugs on real world.

We will also cover:
• Root-causing HW bugs (avoid the one-machine problem),
• The value and art of minimal repro,
• Innovation and compatibility - the age-old rivals.

Duration: 30-60 min (variable content)
Presented at:
- NDC Oslo 2019 - https://www.youtube.com/watch?v=ntGBRi_I3MM&t=48s
- See more MeetUp presentations at https://karelz.github.io/details

Karel Zikmund

.NET team in Microsoft - Software Engineering Manager

Redmond, Washington, United States