Experience
Experience
A concise overview of my professional engineering experience - the responsibilities I’ve taken on, the systems I’ve worked in, and the work I’m happy to go deeper on.
Current role
Where I am now
Senior Software Engineer
2022 - PresentMindfire Solutions
I have worked on an e-commerce platform since its early development, with particular responsibility for the order module. My day-to-day work includes refining requirements, implementing changes, making technical decisions within my scope, and investigating production issues.
I collaborate with QA, business analysts, other platform teams, and clients throughout delivery. I also help teammates resolve technical questions and sometimes coordinate tasks and follow their progress.
Engineering scope
What I work across
The areas of the stack I spend the most time in. Each item is backed by work that lives on this site.
Backend Engineering
- .NET / C#
- ASP.NET Core
- API design
- Clean Architecture
- CQRS
Cloud & Infrastructure
- Azure Functions
- Azure Service Bus
- Blob Storage
- Key Vault
- CI/CD
Data & Performance
- SQL Server
- EF Core
- Query optimization
- Caching
- Large-scale data
Responsibilities
What I take responsibility for
My responsibilities across implementation, production support, and collaboration throughout delivery.
Implementing and maintaining order-module features, primarily on the backend, with frontend changes where needed
API design - contracts, versioning, idempotency
Database and schema design for evolving product needs
Investigating production issues end-to-end, not just at the surface
Performance analysis and query / data-path tuning
Participating in architecture discussions and design reviews
Refining requirements with business analysts and clients, breaking them into technical tasks, and contributing estimates
Making implementation decisions within my scope and discussing wider changes with the team
Collaborating with QA on expected behaviour, defects, and validation
Helping teammates with technical problems and coordinating work when needed
Participating in the team's Agile planning and delivery process
Selected work
Engineering case studies
The work that most directly supports the experience above - each entry goes into the problem, the investigation, and the trade-offs.
- 01
Payment & Order Processing
Investigating a production issue in an asynchronous payment and order workflow.
- 02
Multi-Tenancy
Introducing tenant isolation into an existing system without scattering conditionals across the codebase.
- 03
Large-Scale Database Performance
Complex queries against large relational datasets, with CPU and query bottlenecks at the boundary of what the database could do.
