Zoriko.wtf
/About/Works/Expertise/Résumé/Hire Me
Home
.docx PDF

Shaad KhanShaad Khan

Full-Stack Product Engineer

TypeScript · React · Next.js · Node.js · PostgreSQL

Delhi, India · Remote · IST (UTC+5:30) · zoriko.xyz@gmail.com · +91 97179 72620 · zoriko.wtf · github.com/Zorik0

  • 8+ years shipping
  • 4 systems live for businesses
  • 504 passing tests
  • 40+ deployed projects

Summary

Eight years building and running the software businesses operate on: ERPs, CRMs, payroll and booking systems. I own it end to end, from product decisions and UI to API, data model, auth, infrastructure and support, working directly with the people who use it.

Selected impact

  • Built, priced and sold Viato, a multi-tenant travel ERP with an isolated database per agency.
  • Moved a live nine-app platform off Firebase and Vercel onto a server I run, frontends untouched.
  • Cut a CRM inbox payload from 6.31 MB to 32.4 KB and email ingest from 988 to 198 ms.

Experience

Independent product engineer

2018 – present

Self-employed: contract engineering for businesses, and products of my own.

Viato · Founder and lead engineer · viato.pro

2026 – present

Multi-tenant ERP for travel agencies, live and sold.

Case study ↗zoriko.wtf/work/viato
  • Built 18 modules that carry one record from enquiry to quote, booking, ticket, GST invoice and itinerary, plus attendance, approvals and access control, as an installable, offline-capable PWA.
  • Automated tenant provisioning as an idempotent, resumable 8-step pipeline: per-agency Google Cloud/Firebase project, least-privilege service accounts, security rules, Vercel project and subdomain.
  • Put margin control inside the quote (cost and selling price on every line) and traced each booking's revenue to its source channel; supplier fare search sits behind a swappable API seam.
  • Built the operator console that runs the business: a deduplicated sales pipeline, billing, self-serve onboarding, per-person access codes and a daily LLM job with spend limits. 314 passing tests.

Travel group (confidential client) · Lead engineer, contract

2026 – present

Nine production apps and the backend they share.

Case study ↗zoriko.wtf/work/travel-platform
  • Build and run nine production apps: staff ERP, hotel property-management system with three portals, B2B agent booking panel, double-entry accounting with GST/TDS registers and a customer booking PWA.
  • Moved the estate onto a self-hosted Node.js + SQLite backend that serves the same realtime API, so no frontend was rewritten; cut over with a timestamp-aware merge so no newer write was lost.
  • Wrote authorization as one deny-by-default rules module with permissions below module level, mirrored in the UI; 190 passing tests plus security-rules tests on the ERP.
  • Run the infrastructure: a Caddy allow-list, systemd services on loopback ports, nightly snapshots with retention, a hardened Linux host, and on-call support when something breaks.

EMS Consulting · Full-stack engineer, client project · emsconsulting.in

2026

Site and back office for a recruitment consultancy.

Case study ↗zoriko.wtf/work/ems
  • Rebuilt the site and back office on Next.js and Supabase (Postgres, Auth, row-level security): CV intake, a job board with Google Jobs data, CRM, invoicing and a recruiter workspace with PDF packs.
  • Built an inbox inside the CRM (Cloudflare Email Routing, a Worker and an HMAC-signed webhook into Postgres) and fixed a race reproduced with 12 simultaneous deliveries using an advisory lock.
  • Cut the inbox payload from 6.31 MB to 32.4 KB, the list query from 4.90 to 1.20 ms and ingest from 988 to 198 ms, each measured before and after.

Salon operations app · Full-stack engineer

2025 – present

The app a Delhi salon runs its day on.

Case study ↗zoriko.wtf/work/salon-ops
  • In daily use since November 2025 (141 commits): service logs, location-checked attendance, approvals matched against bank statements, leave, payroll cycles and profit reporting.
  • Redesigned reads to fit the free database quota (one summary document per day, updated in the same transaction as each write); write paths tested with Playwright against the Firestore emulator.

Own products and earlier clients

2018 – present
  • Point-of-sale and billing systems for small retailers since 2018 (UPI, cash, card and credit-book), and websites with lead capture for construction, hospitality, healthcare-billing and recruitment firms.
  • Linkord (linkord.lol): link-in-bio SaaS with Clerk auth, Razorpay payments behind HMAC-verified webhooks, self-hosted S3-compatible media and an SSRF-hardened importer (262 commits).
  • Lead-intelligence engine (private): a prospecting pipeline where every stored fact carries its source; Postgres with a 38-model Prisma schema, BullMQ workers and 104 tests.
  • Open source: TouchPDF (12 PDF tools that run in the browser) and SkyGuard (weather-station fault detection), taken from a domain I had never worked in to a working demo in three days.

Technical skills

LanguagesTypeScript, JavaScript, SQL, HTML, CSS
FrontendReact 19, Next.js (App Router, Server Components, Server Actions), Tailwind CSS, PWAs (service workers, offline), accessibility, design systems
Backend and dataNode.js, REST APIs, webhooks, PostgreSQL (functions, views, row-level security), SQLite, Prisma, Redis and BullMQ, Firebase/Firestore (security rules and rules tests), Supabase
InfrastructureVercel, Linux (systemd, Caddy), Cloudflare (Workers, Email Routing, DNS), Google Cloud (IAM, project automation), Docker, GitHub
SecurityRole-based access with sub-module scopes, tenant isolation, JWT/JWKS, Clerk, rate limiting, SSRF protection, HMAC webhook verification
AILLM APIs (DeepSeek, Gemini, OpenAI-compatible), structured JSON output, guardrails, retries and spend limits; AI-assisted development with Claude Code
Testingnode:test, Vitest, Playwright, Firebase emulator
ProductUI/UX design, prototyping, pricing and packaging, working directly with business owners

Education

Self-taught: software engineering, product and design

2018 – present

Learned by building and running production software for paying clients.

Higher Secondary, Class X and XII

Languages

English (professional), Hindi (native), German (beginner)