I lead frontend architecture for TAMM, Saudi Arabia's national government services platform.
[N] product teams build on the component library and standards I own. On the side, I designed, built, deployed, and now run a production SaaS by myself. Ten years across government, oilfield, healthcare, and payments — Java/Spring Boot · Angular · PostgreSQL · AWS.

TAMM — national government services platform
2021 — PresentTAMM is how citizens in Saudi Arabia access government services online — [N] services, [N] product teams shipping into it, some in Angular, some in React.
I own the shared component library, the design system, and the frontend engineering standards those teams build on. The technically interesting part isn't the components — it's that my decisions are expensive to reverse. A breaking change in the library is a breaking change in [N] products at once, so the work is mostly versioning discipline, deprecation paths, and getting agreement from teams that each had their own way of doing things before I showed up.
Alongside that I build the backend services that connect government systems to the citizen-facing apps (Spring Boot, NestJS, PostgreSQL, MongoDB), and designed the platform's authentication and access model: JWT/OAuth2, RBAC, and API key management for third-party integrations.
[ADD: one honest paragraph — a migration that went sideways, a standard teams resisted, or a decision you'd reverse.]
SponsorOne — sponsorship and donation platform for education NGOs
2024 — PresentSmall education NGOs track child sponsorships in spreadsheets and WhatsApp threads and reconcile donations by hand. The failure mode isn't inefficiency — it's that when a board member or a donor asks where a specific payment went, nobody can answer with confidence.
SponsorOne records every payment against an append-only ledger. Sponsors see their own money trail. Admins get reconciliation and a system-wide audit log. Zakat is tracked separately from general donations, because the accounting rules differ and combining them is a genuine problem for the organizations I built this for.
I did all of it: requirements with the stakeholders, domain model, schema, API, Angular frontend, deployment, and support.
- The ledger is append-only in the domain model and enforced again in PostgreSQL. One layer can be bypassed by a future developer in a hurry; two is harder to bypass by accident.
- Access is claims-scoped rather than filtered per request, so swapping an ID in a URL returns nothing instead of someone else's data.
[ADD: one honest line — a decision you'd reverse or a shortcut you regret.]
I own systems end to end, and answer for them.
I've spent ten years on systems where mistakes are expensive: government services, oilfield operations, healthcare devices, and money movement. Most of that work has been the unglamorous kind — a component library that [N] engineers have to live with, a WebSocket stream that has to survive a drilling site's connectivity, a ledger that can't be edited after the fact.
What I'm actually good at is owning a system end to end and being the person who answers for it: the domain model, the API surface, the pipeline, and what happens when it breaks at an inconvenient hour. I'm looking for a role where I do that for a product rather than a ticket queue — architecture ownership with hands still on the code.
A decade of increasing ownership.
Elm Company
- Lead frontend architecture for TAMM, a national-scale government platform — owning the shared component library, design system, and engineering standards every Angular and React product team builds on. Full story above.
- Build and maintain the backend services (Java Spring Boot, Node.js/NestJS, PostgreSQL, MongoDB) that connect government systems to citizen-facing applications.
- Designed platform-wide security: JWT/OAuth2 authentication, role-based access control, and API key management for third-party integrations — plus WebSocket infrastructure for real-time notifications.
- Operate production workloads on AWS, Kubernetes, and OpenShift with Datadog observability that catches problems before users do.
- Mentor [N] engineers, lead code reviews, and document architecture decisions so quality scales with the team — and the architecture outlives any one person.
LMKR
- Built mission-critical software for Halliburton's Digital Well Program — well planning and daily operations tools drilling engineers depend on.
- Designed versioned REST and GraphQL APIs so evolving the system never broke existing clients — an early lesson in designing for change.
- Engineered real-time well monitoring over WebSocket streams with retry and exponential backoff, built for unstable field networks where naive implementations fail.
- Consolidated scattered backend calls into a single aggregation layer, cutting API response times ~15%; refactored a legacy Node.js codebase into independently deployable services.
RISETech
- Built enterprise Angular and React applications for healthcare and IoT clients — domains where correctness and security are non-negotiable.
- Implemented authentication and role-based access control end to end: JWT, route guards, session management, secure API access.
Independent — SponsorOne
- Designed, built, deployed, and now run a sponsorship and donation platform for education NGOs end to end — see the SponsorOne case study above.
How I build — the part that doesn't show up in a stack list.
Boundaries first
Domain logic stays free of the framework. It's a discipline that costs you speed early and pays back the first time you replace a database, a queue, or a cloud. I've had to do all three.
Enforce critical rules twice
An append-only ledger lives in the domain model and again as a database constraint. A future developer under deadline pressure will find the one path you didn't guard.
Test against a real database
Integration tests run on Testcontainers, not mocks. A mocked test tells you your mocks agree with each other.
Deep where it matters.
What I'm looking for
Senior engineering or architecture roles where I own a system rather than a backlog. Riyadh-based, open to relocation. I'm currently on a transferable Iqama, so I can move without a release complication. Email is fastest — I'll get back to you quickly.