Applied Programming LLC

Fifty services. One.

I'm Adrian Perez. The fifty were country microservices, with fifty-one databases behind them; they are one platform now. That is the work — distributed systems that have grown past the point of maintenance, consolidated into architecture a small team can actually operate. Firmware roots, cloud present.

Est. 2018
Domain Platform · Cloud
Prior HP · Enertia · NexGen
01 — Selected work

Case study 01

The Billings
platform migration

A fertility-charting platform used in 51 countries had grown one .NET microservice and one SQL Server database per country — fifty-odd of each, deployed on two machines in a home office, with a separate identity server and four ageing Angular front-ends.

I consolidated it to a single .NET 10 API on ECS, one PostgreSQL database partitioned by country code, and managed auth — then kept both systems in sync until the old one could be retired without losing a day of anyone's records.

Stack
.NET 10EF Core 10 PostgreSQLAngular 19+ TypeScriptTerraform AWS ECSRDS CognitoLambda CloudFrontCapacitor Azure DevOpsPython
100,566Users migrated
51Countries
6,727,367Chart entries
314,604Cycles
14Languages
0Records lost
Migrating without downtime

A Python sync kept PostgreSQL current with the live SQL Server every few minutes for the whole transition, so the old application kept working while the new one took traffic. Cutover was a DNS change, not an outage.

Identity without lockouts

IdentityServer4 gave way to Cognito with a UserMigration Lambda that re-homed each account on first sign-in against the legacy password hash — no mass reset, no support queue.

Finding what was already broken

Consolidation surfaced years of latent damage: colliding per-country identifiers, duplicate records, charts filed under the wrong owner. Each was measured before it was touched, and reversible after.

One codebase, four apps

Four Angular applications on three major versions became one Angular 19 monorepo with shared libraries, and a Cordova app became Capacitor — iOS and Android from the same build.

Case study 02

Field data capture
without a signal

Pumpers in oil & gas spend their day on well sites that have no mobile coverage. They still have to arrive with their route, record readings at each well, and have those readings reach the office — where administrators work in Enertia's main database, not on a phone.

Operators had also standardised on different hardware. Some crews ran Android, some iOS; some on phones, some on tablets. The application had to meet each of them where they were rather than dictate a device.

Shipped to
iOS · phoneiOS · tablet Android · phoneAndroid · tablet Windows desktop
Built with
AngularJSAngular Material Kendo UIOkta Electron.jsSQLite
Offline is the normal case

A well site having no coverage is not an error state, it is the working day. The device carries the route and records against it regardless, so a pumper never waits on a signal to do the job.

Their hardware, not ours

Operators had already chosen their devices. One codebase shipped to iOS and Android, phone and tablet, rather than asking crews to change what they carry.

Both directions, or it is not sync

The office edits routes while the field records readings. Reconciliation had to carry changes each way on reconnect — a one-way push would have quietly discarded whichever side moved second.

Into the system of record

Captured data landed in Enertia's mainstream database, not a side store, so the office saw field readings in the platform they already worked in.

02 — Portfolio

Projects

BillingsApp icon
Shipped · 2018 — 2026

Billings — platform & migration

Fertility-charting platform for 51 countries: 50+ microservices and 51 databases consolidated onto one .NET 10 API and one PostgreSQL instance, with web, teacher, admin and mobile clients from a single monorepo.

.NET 10PostgreSQL Angular 19+AWS TerraformCapacitor
Read the case study
Enertia Software
In progress · 2025 —

Enertia — SaaS migration

Moving an established on-premise oil & gas platform to the cloud on a hybrid tenancy model — single-tenant and multi-tenant deployments, each with an isolated database. I designed and deployed the cloud architecture, the full path from check-in to production, and the disaster recovery plan behind it.

Hybrid tenancyIsolated databases Cloud architectureCI/CD Disaster recovery.NET
Enertia FDC icon
Shipped · 2017

Enertia — FDC App

Field data capture for pumpers in the oil & gas industry, shipped to Android, iOS and Windows desktop from one codebase, with an admin portal for user administration backed by Okta identity services.

AngularJSAngular Material Kendo UIOkta Electron.jsSQLite iOS · Android · Desktop
Read the case study
03 — Profile

Hardware taught me
what software costs.

Adrian Perez, founder of Applied Programming LLC
Adrian PerezFounder

I spent ten years at Hewlett-Packard before I wrote a line of production web code — designing paper-handling mechanisms in Guadalajara, negotiating engineering changes with Canon in Japan, then building web tooling and leading delivery across teams in three countries.

That background is why I think about software the way I do. Firmware teaches you that a defect shipped is a defect you live with, that the interesting failures are the ones nobody instrumented, and that a system you cannot measure is a system you do not understand. I bring that to platforms: find the real number before changing anything, make the change reversible, and leave the reasoning behind for whoever reads it next.

Applied Programming is the vehicle for that work — small engagements where the problem is architectural rather than cosmetic, and where someone has to own the whole path from database to deployment.

04 — History

Where the
work happened

2025 — now
DataAnnotation · Code Expert

Training AI on software engineering

  • Authoring and reviewing production-grade code used to train large language models
  • Evaluating and correcting model output across multiple languages and frameworks
  • Writing the reasoning behind each judgement, not just the verdict
2018 — now
Applied Programming LLC · Founder

Billings platform — architecture & delivery

  • Consolidated 50+ country microservices into one .NET 10 API on AWS ECS
  • Merged 51 SQL Server databases into a single PostgreSQL instance
  • Replaced IdentityServer4 with Cognito via migration Lambdas
  • Rebuilt four Angular front-ends as one Angular 19 monorepo
  • Infrastructure as code in Terraform; CI/CD on Azure DevOps
2017 — now
Enertia Software
Enertia Software

SaaS migration · FDC mobile app & admin portal

  • Designed and deployed the cloud architecture for the SaaS migration — hybrid single- and multi-tenant, isolated database per tenant
  • Owns the end-to-end cycle from check-in to production deployment, with a disaster recovery plan in place
  • Field data capture for pumpers — Android, iOS, Windows desktop
  • Admin portal for user administration, integrated with Okta identity services
  • AngularJS, Angular Material, Kendo UI
2016
NexGen IT Partners
NexGen IT Partners

App Builder

  • Web platform driving a CRM, with a Python engine that built and signed custom apps automatically
  • UI/UX design through to implementation
  • Facebook integration, authentication and security standards
2004 — 2014
Hewlett-Packard
Hewlett-Packard · Mexico and United States

Expert Software Engineer

  • Web development tooling — Node.js, JavaScript, MongoDB
  • Feature development, defect triage and resolution
  • Led implementation schedule; team liaison across the USA, India and Mexico

Mechanical & firmware engineer

  • Designed and developed new paper-handling products
  • Negotiated technical modifications with Canon Inc.
  • Team liaison across the USA, Mexico and Japan
05 — Capability

What I work in

Current to 2026. Listed by where the work actually happened, not by familiarity.

Backend

  • .NET 10 / C# Primary
  • EF Core 10 · Npgsql Primary
  • PostgreSQL Primary
  • SQL Server Production
  • Python Production
  • Node.js Working

Frontend

  • Angular 19+ · TypeScript Primary
  • RxJS · Angular Material Primary
  • Capacitor · iOS / Android Production
  • Electron · desktop Production
  • Jasmine · Karma Production
  • SCSS · responsive Production

Cloud & infrastructure

  • AWS ECS · Fargate · ALB Primary
  • RDS · S3 · CloudFront Primary
  • Cognito · Lambda Primary
  • Terraform Production
  • Docker Production
  • Azure DevOps CI/CD Production

Engineering practice

  • Zero-downtime migration Delivered
  • Data recovery & forensics Delivered
  • Internationalisation · 14 locales Delivered
  • Monorepo architecture Delivered
  • Hardware / firmware origins 9 years
06 — Contact

Let's talk.

If you have a platform that has outgrown the way it was built, or a migration nobody wants to own, that is the work I like most.

adrian@appliedprogramming.io