I build .NET applications for organisations that need them to run: enterprise reporting systems, internal business tooling, and the back-ends behind consumer-facing and AI products. My current role at MSD Animal Health puts me in the middle of exactly that — large-scale C# systems, MSSQL data platforms, and the automation that keeps them dependable.
The approach is pragmatic. Service layers, API integrations, PowerShell automation, and the boring, reliable DevOps that keeps production quiet — Jenkins, Ansible, Docker. Whatever the estate actually runs, not whatever is fashionable.
What I build
- ASP.NET Core REST APIs — the back-end tier for modern web and mobile products, including AI-enabled applications.
- Blazor front-ends — interactive user interfaces built on the same stack as the API, with no separate JavaScript codebase to maintain.
- C# business applications — internal tools, integrations, and reporting platforms for enterprise operations.
- MSSQL engineering — schema design, query tuning, and data-integrity work for systems that organisations cannot afford to get wrong.
- PowerShell automation — routine administrative and deployment tasks turned into reliable, auditable scripts.
- DevOps — Jenkins, Ansible, and Docker pipelines; containerised staging environments; reproducible deployments.
Reference work
MSD Animal Health — enterprise reporting platform
As Senior Developer at MSD Animal Health I developed and maintained the company’s internal Reporting platform — a C# application that, despite its modest name, manages the full distribution lifecycle for animal-tag ear tagging: stock movement, ordering, field deployment, and compliance reporting across the programme.
My focus on this platform was robustness, database integrity, and integration with the public-facing web properties that fed into the same data estate. Alongside the .NET work I also wrote and deployed PowerShell scripts to automate routine system and administrative tasks, and applied upgrades to the legacy PHP web platforms that interfaced with the core estate.
ASP.NET Core for Sedno
For Sedno — the mobile RAG application I am currently building — ASP.NET Core sits at the heart of the stack. It brokers authentication, rate limiting, subscription entitlements from RevenueCat, pgvector retrieval, and tiered Anthropic Claude calls, all behind a single REST API hosted in the EU for GDPR compliance.
It is the same .NET toolset as the enterprise work, pointed at a very different product — which is precisely the strength of the stack.
How I work
Every engagement starts with a small, testable slice — a first release that proves the architecture and gives the team something concrete to react to. From there we iterate in small batches, with code review as a habit and database migrations that are reversible by default. Where appropriate I pair .NET with Blazor on the front end, with Flutter for mobile, or with Drupal when the content model demands it.
Related services
- Fractional CTO — technical leadership for the broader product
- AI and RAG — retrieval-augmented systems sitting on this same back-end
- Drupal consultancy — when PHP is the right tool for the content layer

