Connor McGee Senior .NET Developer
New York, NY • dotnetdev@gmail.com • +1 (212) 555 0182
Profile Summary
- Senior .NET Developer with 9 years of experience building enterprise .NET services at scale across developer platforms, public Q&A, and enterprise SaaS, specializing in ASP.NET Core microservices, EF Core tuning, and Azure-native event-driven design.
- Hands-on coverage across .NET LTS (.NET 9), ASP.NET Core (ASP.NET Core Web API), persistence (EF Core 9, PostgreSQL), messaging (Azure Service Bus), and containers (AKS, Azure) with strong fundamentals in solid OOP, generics, and async/await fundamentals with a working command of records, pattern matching, and Span<T>.
- Deep expertise in clean-architecture microservices, event-driven Service Bus design, EF Core modelling and query tuning, and cloud-native AKS delivery, applying methodologies such as CQRS with MediatR and strict bounded contexts and Span and ValueTask hot-path tuning with source generators and AOT to deliver reliable, high-throughput .NET services fit for enterprise scale.
- Engaged collaborator working cross-functionally with Product, Data, SRE, and Platform teams in Scrum and trunk-based delivery environments, contributing to architecture forums, sprint planning, and design reviews with an ownership-first mindset and clean handoffs.
- Mentor who shares technical excellence and fosters a culture of service reliability and secure-coding discipline through PR reviews and pattern docs, while running .NET guild and architecture review sessions and authoring widely used service and persistence templates.
Technical Skills
- Languages & Runtime:
- .NET 9, .NET 8 LTS, .NET 6 LTS, C# 13, C# 12, F# (basic), VB.NET (basic), records, pattern matching, primary constructors, nullable refs, async/await
- ASP.NET Core Ecosystem:
- ASP.NET Core, Web API, Minimal APIs, MVC, Razor Pages, Blazor Server, Blazor WASM, SignalR, middleware pipeline, model binding
- APIs & Microservices:
- REST, OpenAPI / Swashbuckle, System.Text.Json, FluentValidation, gRPC, GraphQL (HotChocolate), Polly, Refit, YARP gateway
- Persistence & Data:
- EF Core 9, Dapper, ADO.NET, LINQ, SQL Server, PostgreSQL, Cosmos DB, Redis, FluentMigrator, query tuning
- Messaging & Events:
- Azure Service Bus, RabbitMQ, Kafka, MassTransit, NServiceBus, Event Grid, Dapr, idempotent consumers
- Build, Test & Quality:
- dotnet CLI, MSBuild, NuGet, xUnit, NUnit, Moq, NSubstitute, FluentAssertions, WebApplicationFactory, Testcontainers
- Cloud, Containers & CI/CD:
- Docker, AKS, Helm, Azure (App Service, Functions, Key Vault), Azure DevOps, GitHub Actions, ArgoCD, Native AOT
- Security & Observability:
- ASP.NET Core Identity, OAuth 2.0, OIDC, JWT, Duende IdentityServer, Azure AD / Entra ID, OWASP Top 10, Key Vault, Serilog, OpenTelemetry, Application Insights
Education
Work Experience
- Owned C# and modern .NET service development end to end on the public Q&A and Teams developer platform serving 120M page views / month, shipping question rendering, reputation pipelines, and Teams admin APIs across 16 modular ASP.NET Core services on modern .NET LTS.
- Built API surfaces on ASP.NET Core Web API with Minimal APIs for hot paths, MVC for admin tooling, custom middleware, dependency injection, and FluentValidation, leaning on versioned REST with OpenAPI contracts across 140+ endpoints, pulling p95 latency from 580ms down to 160ms on the hot read path.
- Tuned persistence and data access through EF Core 9, Dapper for read-heavy hot paths, FluentMigrator schema versions, and compiled LINQ with split queries and AsNoTracking against a PostgreSQL cluster with 220+ tables, dropping slow-query incidents per release by 64%.
- Drove architectural design with CQRS with MediatR, clean-architecture layering, repository and unit-of-work patterns, and DDD aggregates across 6 bounded contexts, cutting cyclomatic complexity on the core domain by 38% while keeping SOLID boundaries clean across squads.
- Owned microservices and messaging on Azure Service Bus with MassTransit, schema-versioned contracts, and Service Bus with idempotent consumers and outbox across 24 production topics, sustaining peak load of 42k msg/s with zero duplicate-event incidents over the last four quarters.
- Drove performance, async, and diagnostics work with Span<T>, ValueTask, and source generators, BenchmarkDotNet harnesses, dotnet-counters tracing, and OpenTelemetry spans, dropping hot-path allocations from 1.8GB/min to 320MB/min and cutting Gen-2 GC pause time on critical services by 71%.
- Shipped cloud-native deployments with Native AOT containers on AKS, Helm charts, Azure DevOps pipelines, and 12-factor configuration via Azure Key Vault on AKS running 16 services with daily production releases, cutting cold-start time on critical services by 78%.
- Drove testing and code quality with xUnit with Testcontainers and WebApplicationFactory, Moq, NSubstitute, FluentAssertions, and Verify snapshot tests for integration coverage, lifting line coverage from 46% to 84% and cutting regression-escape incidents per release by 62%.
- Hardened authentication and secure coding with ASP.NET Core Identity with OIDC via Duende IdentityServer, JWT bearer tokens, secret rotation via Azure Key Vault, and OWASP Top 10 review gates across 90+ secured endpoints, dropping audit-cycle OWASP findings on the legal-docs tenant module by 76%.
- Shipped frontend surfaces with Blazor Server with SignalR push updates, Razor component composition, server-rendered prerender, and CSS isolation, contributing 38 reusable Blazor components to the design system and cutting the marketing-funnel JS bundle by 44% through prerender plus per-component lazy loading.
- Strengthened modern C# foundations across the team through records, pattern matching, and LINQ pipelines, generics-heavy API design, and immutability-first refactors, while mentoring 5 junior .NET developers through pair-programming, code-review checklists, and a written modern-C# idiom guide adopted across two squads.