Clean architecture
Scalable application structure with clear boundaries between the interface, the service layer and the data — so features can be added without unpicking what already works.
I build scalable web applications end to end — REST APIs, authentication, databases and the interfaces on top of them.
I'm a full-stack software engineer with hands-on experience building scalable web applications using Next.js, React.js, NestJS and Node.js / Express.
My work covers REST and GraphQL API design, authentication and third-party integrations, backed by PostgreSQL, MySQL, MongoDB and Supabase. I build microservices and event-driven systems with real-time communication over WebSockets, SSE and message queues, and on the infrastructure side I work with Docker, Redis, AWS and GCP — containerising services, caching hot data paths and shipping through CI/CD pipelines on GitHub Actions.
Throughout, the focus stays the same: clean architecture, maintainable code and collaborative delivery through Git and GitHub. Based in Lahore, Pakistan, working on-site locally and remotely with distributed teams.
Scalable application structure with clear boundaries between the interface, the service layer and the data — so features can be added without unpicking what already works.
React and Next.js on the front, Node.js, NestJS and Express behind it, and PostgreSQL, MongoDB or MySQL underneath — designed together rather than handed between teams.
Authentication and third-party integrations implemented properly, performance optimised, complex issues resolved, and code kept at a standard that survives real usage.
Core strengths
Tools are only worth listing if you know when not to use them. These are the ones I've shipped with in production.
The full toolkit · 38 technologies
Composable component UI
Server rendering and routing
Type-safe application code
Design-system styling
Semantic, accessible markup
Modern layout and styling
Async server runtime
Modular, scalable services
Lightweight HTTP services
Secure, documented endpoints
Typed query APIs
Relational transactional core
Relational data workloads
Document data models
Postgres platform and auth
Caching and queues
Schema modelling and queries
Independently deployable services
Asynchronous, decoupled flows
Bidirectional real-time channels
Server-pushed event streams
Buffered, reliable work handoff
On-demand compute
Cloud infrastructure
Cloud deployment and GKE
Containerised services
Automated build and deploy
Frontend deployment
Managed service hosting
Infrastructure as code
Browser end-to-end testing
Coverage raised 5% → 70%
Services verified together
AI-native editing workflow
Agentic refactoring and review
Inline code completion
Exploration and problem solving
Test generation and automation
Building and maintaining full-stack products that run in production.
Devsarch · Full-time
Architecture-through-production ownership of multi-tenant products — real-time services, AI and RAG pipelines, and secure payment and healthcare integrations.
Architected and delivered scalable, multi-tenant applications using Next.js, React, TypeScript, NestJS, tRPC, PostgreSQL, Supabase, Prisma and REST/GraphQL APIs, owning features from architecture through production.
Designed microservices and event-driven systems with real-time communication using WebSockets, Pusher, SSE, Redis and message queues, optimizing applications for scalability and low latency.
Built production-grade AI/LLM workflows and RAG pipelines for summarization, classification, semantic search and automation, integrating vector databases to ground AI responses in product and customer data.
Delivered real-time platforms using Python microservices, GCP/GKE, Kubernetes, Docker and CI/CD, with scalable cloud infrastructure and reliable deployment workflows.
Architected secure payment and healthcare solutions integrating Stripe, Square, HelloSign and Google APIs, implementing row-level security and secure data-access patterns for sensitive application data.
Applied Playwright E2E and integration testing alongside AI-assisted development tools such as Cursor, Claude Code, GitHub Copilot, ChatGPT and Codex to improve engineering productivity and code quality.
Full-time · 2 yrs 7 mos
Node.js and TypeScript services behind a database-automation SaaS platform, alongside a substantial lift in test coverage and access control.
Developed and maintained Node.js/TypeScript services for database automation, monitoring, backups and failover within a core SaaS platform.
Increased Playwright E2E test coverage from 5% to 70%, reducing production regressions and improving release confidence.
Integrated Keycloak SSO and access control, and introduced a monorepo architecture for reusable components and scalable development.
Improved React/TypeScript UI responsiveness and dashboard performance across key platform modules.
Full-stack product delivery with real-time features and Docker-based CI/CD pipelines deploying across four cloud providers.
Built and maintained full-stack products using React, Next.js, TypeScript, Node.js, NestJS, PostgreSQL, MongoDB and Supabase, owning features from development to production.
Developed scalable REST APIs, real-time features with WebSockets/SSE, and backend services using microservices and event-driven architectures.
Implemented Docker-based CI/CD pipelines with GitHub Actions, supporting reliable deployments across AWS, GCP, Vercel and Railway.
Added E2E and integration testing with Playwright and used AI-assisted development tools for refactoring, debugging, test generation and code exploration.
BS in Computer Science
Virtual University
Sep 2020 — Jun 2024
A property snagging and renovation platform — 120-point inspections, graded defect reports, blind vendor bidding and milestone-protected payments, built end to end on Next.js and NestJS.
PropTech Platform
Proptoc carries a property owner from handover to finished repairs without leaving the product. An inspection team works the property room by room, a graded report evidences every defect with photos and a Snag Score, vetted trades bid blind on the scoped work, and payment releases against milestones as repairs are approved. I built the platform end to end — the Next.js frontend, the NestJS API behind it, the PostgreSQL model, the Redis caching and the containerised deployment.
My role
Full-stack development — architecture through production
Live demo — source code is private.
REST API
Scalable NestJS REST APIs serving core platform features
Architecture diagram — illustrative, not a product screenshot.
Built the platform end to end — Next.js frontend, NestJS REST API, PostgreSQL data model, Redis caching and containerised deployment.
Modelled the inspection domain: a 120-point room-by-room method with severity grading, photo evidence and a computed Snag Score, generated into a shareable report.
Implemented the blind bidding marketplace so approved vendors quote without visibility of competitors' pricing, comparable across price, timeline and experience.
Built milestone-based payments with approval gates, releasing funds in stages as work is completed and signed off rather than up front.
Delivered vendor onboarding across specialist trades, with role-separated access for owners, vendors and inspectors.
Shipped tiered plans spanning apartments to unlimited-area properties, including re-inspection and extended defect monitoring.
At handover a new owner has no structured way to find what is wrong, price the fix fairly, or hold a contractor to it. Defects get missed, quotes are not comparable because every trade scopes the job differently, and paying up front removes any leverage once work begins.
One platform covering the whole chain. A 120-point room-by-room inspection produces a severity-graded report with photo evidence and a Snag Score within 48 hours. That scoped defect list goes to vetted trades who bid blind — no vendor sees another's price — so quotes compare on price, timeline and experience rather than on scope. Work is then tracked room by room with photo evidence, and payment splits across milestones behind approval gates.
A responsive Next.js application covering the owner, vendor and inspector journeys.
NestJS REST APIs serving inspections, reports, bidding and payments, organised along clean architecture boundaries.
Authentication and role-based authorization separating owners, vendors and internal inspectors.
Redis in front of frequently read report and marketplace data, keeping hot reads off the database.
PostgreSQL modelling properties, inspections, defects, bids and payment milestones.
Services containerised with Docker so the deployed environment matches local development.
The platform takes a property from handover inspection to signed-off repairs in one place: defects are graded and evidenced rather than argued over, quotes arrive comparable because every trade bids against the same scope, and staged payments keep the owner's leverage until the work is approved.
Product work across social media analytics and creator platforms — backend APIs, third-party integrations and the responsive interfaces on top of them.
cybrology.com
A creator platform where I built product features and the secure REST APIs behind them, including the Stripe and payment integrations that carry its transaction workflows.
talkspresso.com
A creator platform where I built product features and the secure REST APIs behind them, including the payment integration that drives its transaction workflows.
The same sequence on every build — designed up front, implemented across the stack, then deployed and measured.
Start with the requirement and the constraint behind it — what the feature has to do, who it serves and where it has to fit in what already exists.
Design the shape before writing it: scalable application architecture with clear boundaries between the interface, the service layer and the data, following clean architecture practices.
Implement across the stack — responsive interfaces, REST APIs with authentication and third-party integrations, and the relational or document schema underneath them.
Cover the paths that matter with Playwright end-to-end and integration tests, and keep changes reviewable — small, readable commits over a shared branch history.
Containerise the services so the deployed environment behaves like the development one, then ship to the cloud.
Optimise performance where the measurements point — caching frequently accessed data, resolving complex technical issues and keeping the code production-ready.
Every tool named above appears on my CV — this is the workflow I actually use, not an idealised one.
Opinions earned from shipping and then maintaining what I shipped.
Comfortable across the whole stack — the interface, the service behind it and the database underneath are one system, not three handoffs.
APIs designed as contracts: predictable resources, secure endpoints and responses the frontend can rely on.
Relational and document schemas modelled around the domain, across PostgreSQL, MySQL and MongoDB.
Clean architecture and scalable application structure, so features can be added without unpicking what already works.
Containerised services with Docker, deployed to Google Cloud Platform and Vercel with consistent environments.
Caching frequently accessed data and optimising slow paths, so applications stay responsive under real usage.
Maintainable, high-quality, production-ready code — written to be read by whoever picks it up next.
Collaborative delivery through Git and GitHub — reviews, shared conventions and a history that explains itself.
The kinds of systems I'm brought in for — and what I make sure gets designed in rather than retrofitted.
Scalable web and mobile applications.
End-to-end delivery in JavaScript and TypeScript — React and Next.js on the front, Node services behind them, styled with Tailwind CSS.
Robust backend services and RESTful APIs.
Backend services and REST, GraphQL and tRPC endpoints built with Node.js, NestJS and Express, structured for scale and owned from architecture through production.
Schemas designed and managed properly.
Relational and document data modelled with Prisma across PostgreSQL, MongoDB and MySQL — and maintained as the product grows.
Secure access and third-party services.
Authentication and authorization on protected routes, plus third-party integrations wired into real application workflows.
Faster applications, fewer surprises.
Profiling and optimising application performance, caching frequently accessed data with Redis, and resolving complex technical issues in production code.
Microservices that talk to each other as things happen.
Event-driven services with real-time communication over WebSockets, SSE and message queues, with Redis in the middle — designed for scalability and low latency.
Confidence before release, not after.
Playwright end-to-end and integration coverage built into the pipeline — the approach that took one platform's E2E coverage from 5% to 70% and cut production regressions.
Containerised delivery to the cloud.
Services containerised with Docker and deployed to Google Cloud Platform or Vercel, with environments that behave the same everywhere.
Open to full-stack engineering roles and remote opportunities worldwide.