What I built in production — without the client or product name. Open a card for role, stack, and contributions.
01
Admin and portal
Two-sided product
A React admin panel and a Next.js user portal on the same microservices backend — access and screens that follow who is signed in.
Two surfaces
Staff admin and user portal, designed as one product.
Role-aware
Access and screens that follow who is signed in.
operations · overview
Operations overview
All regionsThis week
Open apps
128
Pending
24
Approved
86
Exceptions
7
Application activity
Approval status
In review38%
Approved47%
Queried15%
Recent activity
APP-2041 moved to review
Approval completed · Region West
Query raised on APP-1998
Applications
APP-2041
Review
APP-2038
Queued
APP-2032
Queried
02
Large listings
User workflows
A React product with multi-step workflows and listing modules that stay usable when the data gets heavy.
Complex journeys
Redux-driven flows across real user paths.
Modern React
Legacy pieces rebuilt with hooks and cleaner structure.
employment · job listings
Job listings
All districtsOpen roles
Open
1,240
Applied
86
Shortlisted
12
Role
Location
Status
Field officer
District A
Open
Data assistant
District B
Open
Coordinator
District C
Review
03
Custom SSR
Public site
Custom Node server rendering for a React site — the first response is real HTML, and the client hydrates the same markup.
Custom SSR
Node pre-renders React pages for SEO and speed.
Clean hydration
Server and client stay in sync.
public site · page
Public page
Server-rendered page · ready for index
Overview
Services
Booking
Render path
Node SSR
HTML to client
Hydration
Indexed route
04
Contract signing
Document workflow
Digital contract signing in the product — a document API, dynamic fields, and a production rollout that left the rest of the app stable.
Signing flow
End-to-end digital contract experience.
Document API
Live document generation from product data.
contracts · signing
Agreement
Awaiting signature
Document fields
Investor name · bound
Amount · bound
Date · bound
Contract APIVariables mapped
05
Seats and payments
Booking flow
A booking frontend with a clear API service layer, careful payment handling, and an interactive seat map.
Service layer
Frontend infrastructure built for scalable APIs.
Payments
Request handling and validation that reduces failures.
booking · seats
Seat map
Live map
Selected · 2Checkout ready
01 · One system. Two surfaces. · Click card for case study
How I can help
If your process looks like my work,I can build the software for it.
Same craft as production — fullstack when you need the UI and the API glue together.
01
Fullstack product builds
React / Next.js apps with auth, APIs, and a structure that sits cleanly next to Azure or AWS microservices.
02
Admin + customer portals
Two-sided products: staff tools on one side, a clear portal for customers or partners on the other.
03
Workflows that leave the inbox
Approvals, documents, payments, and handoffs — wired to real APIs with the error handling those flows need.
04
Internal tools for growing teams
The smallest useful system around a repetitive process — then expand only when the business proves it needs more.
Approach
I don’t start with a tech stack.
I start with how the work already happens.
01
Step 01
Watch the work
Walk through the real process — who touches what, where it stalls, what they already use.
Step 01
Watch the work
Walk through the real process — who touches what, where it stalls, what they already use.
01
02
Step 02
Name the friction
Find the one bottleneck worth solving first: a handoff, a report, an approval, a missing view.
02
Step 02
Name the friction
Find the one bottleneck worth solving first: a handoff, a report, an approval, a missing view.
03
Step 03
Ship the smallest useful build
A focused release the team can use — not a platform deck of features.
Step 03
Ship the smallest useful build
A focused release the team can use — not a platform deck of features.
03
04
Step 04
Grow what earns its keep
Once it’s proven, extend it based on what the business actually needs next.
04
Step 04
Grow what earns its keep
Once it’s proven, extend it based on what the business actually needs next.
Working together
What you get when you hire me.
01
Fullstack ownership
5+ years shipping React, Next.js, and API-connected systems in real business environments.
02
Production instincts
Role-based access, microservices on Azure/AWS, and UIs that have to hold when traffic and data get real.
03
Clarity over theatre
I explain the tradeoffs in plain language and build only what moves the process forward.
04
Long game
A small useful tool can become the foundation for a larger system as the team grows.
Questions
Before you write.
Contact
Tell me what’s stuck.
A repetitive process, a portal that needs to grow, or a product that has to sit on a real backend — book a 30 minute call, or email me, and we’ll figure out the smallest useful next step.