Senior .NET Backend Engineer & Software Architect

I design, build, and troubleshoot scalable .NET systems.

I help teams build reliable backend systems, microservices, distributed applications, and production infrastructure — from architecture and implementation to debugging difficult production problems.

10+ Years of Software Engineering Experience

SYSTEM / 01Systems thinking. Production focus.
DISTRIBUTED BY DESIGN
01
Web
PWA
Client
API GatewayOne entry point. Clear boundaries.
HTTPS
02
Identity.NET
Product.NET
Order.NET
RabbitMQ·MassTransitgRPC
03
Identity DB
Product DB
Order DB
Architecture schematic · not live telemetry
[A system, not a collection of services.Clear boundaries. Explicit contracts. Reliable communication.]
10+

Years of professional engineering

6 + 4

Years across two major professional environments

M.Sc.

Computer Engineering · Computer Systems Architecture

Production

Enterprise & distributed systems

Beyond the code

Good architecture has to work in production.

I work where application code, distributed services, identity, and infrastructure meet. My focus is on clear boundaries, reliable behavior, and understanding why a system fails before deciding how to fix it.

How I can help

Engineering help for the problems that matter.

Services
01

Architecture & Distributed Systems

Design and review scalable backend architectures, microservices, service boundaries, CQRS, event-driven systems, and distributed workflows.

02

.NET Backend Engineering

Build reliable backend systems and APIs using modern .NET technologies and clean engineering practices.

03

Identity & Security

Design and troubleshoot modern authentication and authorization systems.

04

Production Troubleshooting

Find root causes behind difficult backend, infrastructure, networking, authentication, and deployment problems.

Technical expertise

The right tools. For the right reasons.

Backend

C#.NETASP.NET CoreEF CoreREST APIs

Architecture

MicroservicesDistributed SystemsCQRSClean ArchitectureDDDEvent-Driven Architecture

Messaging

RabbitMQMassTransitgRPC

Identity & Security

OAuth 2.0OpenID ConnectDuendeJWTPKCEAPI Scopes

Infrastructure

DockerLinuxTraefikDNSTLS/SSL

Data

SQL Server

Frontend / Product

Next.jsReactTypeScriptPWA

The engineering process

How I solve difficult engineering problems.

  1. 01

    Understand

    Define the behavior, constraints and the impact.

  2. 02

    Investigate

    Follow the evidence across the system.

  3. 03

    Find the root cause

    Separate the symptom from the mechanism.

  4. 04

    Design

    Choose the smallest reliable solution.

  5. 05

    Implement

    Make the change with clear boundaries.

  6. 06

    Validate

    Verify the full workflow and failure paths.

From the engineering notebook

Engineering Notes

View all
02Identity

Debugging OAuth 2.0 and PKCE in SPAs

Follow the authorization-code flow one boundary at a time, and distinguish the browser, identity provider and API responsibilities.

1 min read

Looking to hire?

Senior Backend Engineer / Staff Engineer / Software Architect

Experience

Need engineering help?

From a difficult problem to a reliable solution.

Services

Contact

Have a difficult .NET problem?

Need help with a microservices architecture, production issue, authentication problem, or distributed system?

Let’s Talk