11 Apr
Initialize
Laurentides
.NET Performance Engineer- Global tech. company - Canada - remote
Excellent chance to join a new team, owning the runtime health and throughput characteristics of the platform. This is a specialist contributor role — you wont be building feature logic, youll be ensuring the systems that run it do so efficiently, reliably, and at scale.
Skills/experience
AI development experience - usage of AI tools (Claude, CoPilot, ChatGPT)
4-5+ years of .NET / C# development with a demonstrable specialism in performance engineering Deep, hands-on experience with .NET profiling tools — dotMemory, dotTrace, PerfView, Visual Studio Diagnostic Tools, or equivalent
Strong understanding of .NET memory management internals — GC generations, LOH, pinned objects, finalisation, and how allocation patterns affect runtime behaviour
Experience optimising high-throughput data processing pipelines — including async/await patterns, Channel, pipelines, and avoiding synchronisation bottlenecks
Proven ability to diagnose large dataset query performance issues across both relational (SQL) and document databases, including index analysis and query plan interpretationFamiliarity with ETW, EventPipe, and diagnostics tooling (dotnet-trace, dotnet-counters, dotnet-dump)
Duties:
Orofile, diagnose,
and resolve performance bottlenecks across .NET services — from GC pressure and memory leaks to thread contention and I/O saturation
Own memory management strategy across long-running services — heap allocation patterns, LOH fragmentation, finaliser queues, and GC tuning (gen0/1/2, server vs. workstation, DATAS)
Investigate and optimise high-throughput data pipelines — batch processing, streaming patterns, buffer management, and backpressure handlingIdentify and resolve large dataset query performance issues — index utilisation, query plan analysis, pagination strategies, and aggregation efficiency across both relational and document databases
Establish and maintain performance benchmarking infrastructure using BenchmarkDotNet and load testing tooling — define baselines, track regressions, and gate releases on performance criteria Conduct performance-focused code reviews — identify allocations, boxing, closure captures, LINQ misuse, and other common .NET performance anti-patterns
Collaborate with product engineers to surface performance constraints early in design, without blocking feature delivery
Produce clear diagnostics and findings documentation that non-specialists can act on
Excellent company, team and opportunities, apply now!!
Impress this employer describing Your skills and abilities, fill out the form below and leave Your personal touch in the presentation letter.