A few pieces of professional work that are representative rather than
exhaustive. Details stay at the level the systems can be described publicly.
In-app purchase service
Electrolux · Lead Backend Engineer
Led design and implementation of the API service that sits between the
consumer mobile app and the payment provider. A money path, so the
interesting work was in the parts that are not the happy path: idempotency,
reconciliation, token handling, and making failure states legible to the
client instead of ambiguous.
C# / .NETREST
PostgreSQLRedis
JWTKubernetes
TerraformAWS
DatadogxUnit
Azure → AWS migration of a backend estate
Electrolux · Migration lead
Led and implemented the move of the backend services off Azure onto AWS,
end to end — source control and pipelines, data stores, secrets, gateway,
and the Kubernetes workloads. Each component was re-provisioned as
Terraform rather than lifted as-is, so the destination was reproducible
instead of merely running.
Azure DevOps → GitHub Actions
CircleCIAKS → EKS
SQL DB → RDS Postgres
APIM → API Gateway
ElastiCacheVault / AWS Secrets
KafkaTerraform
API federation for the mobile app
Electrolux · Senior Backend Engineer
Designed a federation layer that collapsed the mobile client’s start-up
fan-out into far fewer round trips, cutting app start-up time by roughly
40%. Most of the gain came from moving the composition and caching to the
server side, where it could be measured and tuned once rather than in every
client release.
C# / .NETRedis
EKSDatadog
Internal platforms for a rail operator, containerised
MTR Group · Senior Backend Engineer
Led design and delivery of three internal applications behind Stockholm's
commuter rail and metro operations, and drove the transition of those
workloads to containers and Kubernetes — which removed update downtime as a
category of problem rather than reducing it.
C# / .NETAngular
SQL ServerCosmos DB
RedisDocker
AKSAzure DevOps