Building secure, production-deployed web applications end to end — APIs, databases, background jobs, and the interfaces on top of them.
About · Tech Stack · Projects · Philosophy · Stats · Contact
I'm a Computer Science graduate from UET Lahore, building full-stack web apps end to end — REST APIs, authentication, and database design on the backend; responsive, type-safe interfaces on the frontend.
Most of my projects are solo-built and deployed to production, not tutorial-scale exercises: real authentication (JWT, OAuth, RBAC), real background jobs (BullMQ/Redis), and CI/CD pipelines that block a release if the tests fail. My strongest area is backend architecture and access control — I found and fixed a real privilege-escalation bug in one of my own APIs, the kind of issue you only learn to catch once you've shipped real software.
I work across two backend stacks (NestJS/Express, PostgreSQL/MongoDB) and two frontend frameworks (React/Next.js, Vue 3), and I'm currently looking for Software Engineer, Full-Stack, or Backend Developer roles.
| 🚀 | Built and deployed Dev-Collab, a solo full-stack team collaboration platform (August 2026) |
| 🏗️ | Sharpening backend skills: transactions, background workers, caching, and system design |
| ✅ | Writing tests earlier — Dev-Collab shipped with 123 backend tests gating its CI/CD pipeline |
| 💼 | Open to Software Engineering, Full-Stack, and Backend Developer roles |
| Category | Technologies |
|---|---|
| Languages | |
| Frontend | |
| Backend | |
| Databases | |
| Testing & CI/CD | |
| Tools |
| Project | Type | Stack | Link |
|---|---|---|---|
| Dev-Collab | Solo | Vue 3, Express, MongoDB, Redis | Live |
| PetSoft | Solo | Next.js 15, Prisma, Stripe | Live |
| Evento | Solo | Next.js 15, Prisma, Zod | Live |
| NanoLink | Team (4) | NestJS, Next.js, PostgreSQL | Private repo |
Dev-Collab — Team Collaboration Platform
Solo project · Live at dev-collab.tech
A GitHub/Linear-style collaboration platform — teams, projects, Kanban tasks, comments, notifications, and analytics — built as a pnpm monorepo with a shared Zod schema package used by both the API and the client.
- Two permission systems (JWT platform role + database-checked team role) chained through four access middlewares
- Found and closed a real privilege-escalation bug where self-assigning a task silently granted delete rights
- MongoDB transactions for cascading deletes and multi-document status changes
- BullMQ + Redis notification worker running as a separate process from the API
- 123 Jest + Supertest tests against a real in-memory MongoDB replica set
- Deployed to Heroku (API + worker dynos) and Vercel, released through a GitHub Actions pipeline gated on the full test suite
Stack: Vue 3 · TypeScript · Express.js · MongoDB · Redis · BullMQ · Zod · Tailwind CSS
PetSoft — Pet Daycare Management Platform
Solo project · Live at pet-soft-beige.vercel.app
A full-stack pet management app with authenticated CRUD, Stripe-gated premium subscriptions, and Server Actions throughout.
- CRUD workflows via Next.js Server Actions and Prisma, with a reusable shadcn/ui component library
- Stripe subscription payments verified server-side through webhook signatures, not client-reported state
- Solved a Next.js 15 edge middleware bundle-size limit with a two-layer auth check — lightweight JWT at the edge, full NextAuth v5 session check in-app
- Found and fixed a real production bug: a gap in the middleware's authorization logic let one request state fall through unhandled, crashing a live Server Action instead of redirecting
Stack: Next.js 15 · TypeScript · Prisma · NextAuth v5 · Stripe · Tailwind CSS
Evento — Event Discovery Platform
Solo project · Live at evento-pi-ashen.vercel.app
A server-rendered event discovery platform with dynamic city-based routing.
- Server Components for Prisma-backed, paginated event listings — no separate API route
- Zod-validated data boundaries between the database and UI
- Responsive interface with Framer Motion page transitions
- Came back a year after shipping to patch a critical Next.js RCE (React Flight protocol) plus several SSRF/DoS/cache-poisoning CVEs — ongoing maintenance, not just initial delivery
Stack: Next.js 15 · TypeScript · Prisma · Zod · Tailwind CSS · Framer Motion
4-person team · Primary contributor for authentication · Repository private (academic team project)
A URL management, analytics, and monetization platform built as a capstone project in a Turborepo monorepo. My part was the authentication system end to end — the short-link, analytics, and AI features were built by my teammates.
- Local + Google/GitHub OAuth login via Passport.js strategies, unified into a single TokenService
- 6-digit OTP email verification and rate-limited password reset
- Role-based access control via custom NestJS Guards
- Shared Zod validation schemas between the NestJS API and Next.js frontend
Stack: Next.js · NestJS · TypeScript · PostgreSQL · Prisma · Turborepo
I want to understand why something works before I worry about how to use it. Frameworks and tools change quickly, but the mental models behind databases, networking, architecture, concurrency, and distributed systems stay useful.
When I build something, I try to understand the trade-offs behind the design — what happens when it fails, where the boundaries should be, and how the system behaves beyond the happy path. I use AI to move faster, not as a substitute for understanding the code or the decisions behind it.
- Understand why before learning how
- Build mental models, not just framework knowledge
- Think about failure, not only the happy path
- Choose architecture around real constraints
- Keep systems understandable as they grow
- Use AI to accelerate engineering, not replace it
- Learn through building and debugging
- Prefer depth over collecting tools
I'm always glad to talk about software engineering, backend architecture, and full-stack development. If you're hiring or want to collaborate, feel free to reach out.

