Senior Full-Stack Engineer/Los Angeles, CA

I build the internal platforms thousands of people rely on — and never think about, because they just work.

Senior full-stack engineer with 7+ years architecting and shipping internal platforms end-to-end. Go & Python on the back end, Next.js on the front, Azure underneath — from greenfield database design through production support.

01Data02API03Frontend04Deploy
Working in
7+years shipping
10+platforms owned end-to-end
5,000+employees served
15+country missions
01

What I own

End-to-end. A request passes through every layer below — and I’ve designed, built, and deployed all of them.

L1

Frontend

Interfaces people actually use — including offline, in the field.

  • Next.js
  • React
  • PWA · offline + QR scanning
  • iframe SDK design
  • Tailwind CSS
L2

API

The contract everything else depends on. Lately: Go, stdlib only.

  • Go (stdlib, SSE streaming)
  • Django / DRF
  • REST
  • JWT — HMAC & RSA / JWK
  • LLM tool-calling · RAG
L3

Data

The right store for each job — transactional, audit, cache, graph.

  • MS SQL Server
  • PostgreSQL
  • Neo4j / Cypher
  • Redis — cache, sessions, queues
  • Azure Blob Tables
L4

Platform

Containerized, CI/CD-delivered, SSO-secured, globally routed.

  • Azure Container Apps
  • Front Door
  • Azure DevOps CI/CD
  • Docker · Nginx
  • Entra ID SSO · RBAC
02

Selected work

These platforms are internal and proprietary — so here’s the engineering, not the screenshots: the constraint, the architecture, and the call that mattered.

Internal LLM Platform

Luma

A multi-tenant LLM assistant platform embedded across 5+ internal apps.

Constraint

Many internal apps wanted an embedded assistant — but each has its own knowledge base and its own access boundaries. One shared bot could not be allowed to leak one app’s data into another.

Approach
  • Architected end-to-end: Go backend with Server-Sent Events streaming, a Next.js admin UI for agent & tool configuration, and a React iframe-based SDK for drop-in chat embedding.
  • Client / tenant model — each embedding app gets a dedicated client ID and signing secret; JWTs scope tool access to that app’s knowledge base.
  • Integrated a sibling document-ingestion / graph (RAG) service, exposing its retrieval tools through Luma’s per-client tool-config layer.
  • Built an automated evaluation harness for regression detection and low-friction migration to new model versions.
The call

Isolation by signed identity, not by deployment. One platform serves every app, but a per-client JWT makes data bleed structurally impossible instead of a thing you hope nobody misconfigures.

  • LLM platform engineering
  • Multi-tenancy
  • SSE streaming
  • SDK design
  • Eval harnesses
  • Go
  • Next.js
  • React
  • JWT
  • RAG

Self-Initiated · Auth Infrastructure

Identity Service

A centralized JWT identity service for the whole app portfolio — proposed and built solo.

Constraint

The same LDAP / auth boilerplate was duplicated across every application, with shared secrets spread around the portfolio. Nobody owned the problem — so I proposed the fix and took it from prototype to production.

Approach
  • Migrated v1 (Django + HMAC shared secret) to v2 in Go with RSA-signed JWTs and published JWK endpoints — eliminating shared-secret distribution and improving key-rotation hygiene.
  • Moved refresh-token (JTI) persistence from SQL to Azure Blob Storage Tables — removing a database dependency for the service entirely.
  • Added container-scoped Azure SAS token issuance so client apps upload straight from browser to Blob Storage — fewer API hops, less backend memory pressure.
The call

Asymmetric over shared-secret. Publishing a public JWK set means apps can verify tokens without ever holding a secret to distribute, leak, or rotate in lockstep. Security that gets easier to operate, not harder.

  • Identity architecture
  • Initiative
  • Dependency reduction
  • Key rotation
  • Cloud security
  • Go
  • RSA / JWK
  • Azure Blob
  • SAS tokens

Offline-First Field PWA

Asset Verification

Bi-annual asset verification for 5,000+ staff across 15+ country missions — usable with no network.

Constraint

Field staff in low-connectivity locations have to verify physical assets twice a year. A connection cannot be assumed — the app has to work fully offline and reconcile later.

Approach
  • Built a PWA with offline support and in-browser QR scanning, so staff verify assets with zero network and sync when they’re back online.
  • Migrated the API from Django to Go (stdlib, no framework) for better performance and simpler async handling under bi-annual peak load.
  • Multi-database design: MS SQL for primary transactional data, PostgreSQL for audit logs and a dead-letter queue, Redis for caching and queues.
  • Companion Python service drives org-wide HTML email alerts — pending-verification nudges to custodians, mission-level progress to managers.
The call

Design for the worst network, not the average one. Treating offline as the default case — not an error state — is what makes the tool actually usable for the people it’s built for.

  • Offline-first PWA
  • Constraint engineering
  • Multi-database design
  • Async & queues
  • Go
  • PWA
  • MS SQL
  • PostgreSQL
  • Redis
  • Python

More, owned end-to-end

Production Latency Debugging

Fleet Management

Vehicle, driver & trip management — one API serving a web admin and a partner mobile app.

Believe the users, then measure. The slowness was real but invisible from HQ — the fix lived in edge routing and caching, not application code. Knowing where to look saved chasing the wrong layer.

  • Go
  • Next.js
  • Azure Front Door

Integration · Reporting at Scale

Balance & Exec Reporting

Multi-country daily balance entry with automated Citi Bank API sync and executive dashboards.

One surface, two audiences. Entry and executive reporting share a single source of truth, so the numbers leadership sees are the numbers finance just entered — no export step to drift out of sync.

  • Django
  • Next.js
  • Citi API

Same Stack · Owned End-to-End

And several more

10+ internal platforms on the same Django / Go + Next.js + Azure stack, owned from design to deploy.

A consistent stack is a feature. Standardizing on Django / Go + Next.js + Azure means every new platform inherits the same auth, deploy pipeline, and operational playbook — so shipping the tenth is far cheaper than the first.

  • Django
  • Go
  • Next.js
  • Azure
03

How I work

How I work matters as much as what I ship — especially in the age of AI-assisted development.

01

Adversarial, dual-model review

AI-assisted code goes through a dual-model generation and review cycle — one model writes, another critiques — before a human ever signs off. Speed from the tools, judgment from the engineer.

02

Tested across tiers

Comprehensive coverage across unit, integration, and smoke tiers — with testcontainers and evaluation harnesses for LLM apps — so regressions surface before users do.

03

Human-owned judgment

Architecture decisions, trade-off calls, and final verification stay human-owned. The tools accelerate the work; they don’t make the decisions.

04

Measure twice, cut once

Greenfield design through Azure deployment and production support — I’d rather spend the time getting the architecture right than rushing to ship something I’ll be paging myself about later.

04

About

Senior Full-Stack Engineer

International Medical Corps · Aug 2018 – Present

Architect and lead developer on 10+ internal web platforms used by 5,000+ employees across 15+ country missions — spanning finance, operations, IT, and HR. Drove the team’s adoption of Go for new services and own end-to-end delivery: database design, API, front end, containerization, and deployment via Azure DevOps to Azure Container Apps.

Languages
  • Go
  • Python
  • JavaScript / TypeScript
  • SQL
Backend
  • Go (stdlib, SSE streaming)
  • Django / DRF
  • REST APIs
  • JWT (HMAC & RSA / JWK)
  • LLM tool-calling
  • RAG patterns
Frontend
  • Next.js
  • React
  • PWA (offline, QR scanning)
  • iframe SDK design
  • Tailwind CSS
Databases
  • MS SQL Server
  • PostgreSQL
  • Neo4j / Cypher
  • Redis
  • Azure Blob Tables
Cloud & DevOps
  • Azure Container Apps
  • Container Registry
  • Front Door
  • Blob Storage
  • Cache for Redis
  • Entra ID
  • Azure DevOps CI/CD
  • Docker
  • Nginx
  • Linux
Architecture & Practices
  • RBAC design
  • SSO (Entra ID)
  • Short-lived SAS tokens
  • Async task patterns
  • Caching strategies
  • HTML email pipelines
  • Testcontainers
  • LLM eval harnesses
M.S., Electrical EngineeringFairleigh Dickinson University — Metropolitan Campus2018
B.Tech, Electronics & Communication EngineeringJNTU Kakinada2016

05 — Contact

Building something that needs to just work?

Open to senior full-stack & platform roles · open to relocation · visa sponsorship needed