Available for AWS / DevOps / Backend roles

Niranjan Gain

AI-driven Backend & Cloud Engineer
shipping production systems solo.

DevOps + backend fundamentals, agentic-first workflow, and four production systems shipped end-to-end — across e-commerce, live commerce, multi-tenant SaaS, and headless-browser APIs. Currently migrating my Train API personal project from Hetzner to AWS as the public artifact for the cloud chapter.

Raipur, India · B.Tech CSE · 1.5+ years solo principal engineer

Work

Five production deliverables across four products. One personal, four at my previous role as the sole engineer for a D2C retail brand. Different stacks; same way I ship — DevOps maturity for operational discipline, agentic-first workflow for execution velocity.

Train API

Personal · Public

Live Indian-Railways train-status REST API. Replaced a $5K/year enterprise contract with a $5/month VPS using Hono + Playwright, dual-source resilience, and senior-grade ops on a personal project.

Personal project · sole author · public on GitHub

TypeScript Hono Playwright Zod Swagger / OpenAPI PM2 Docker Hetzner → AWS (in progress)
  • Single global Chromium pool with isConnected() guard + lazy crash-recovery — saves ~3s and ~400MB per request
  • Intercepts upstream internal JSON API instead of brittle DOM scraping; ConfirmTkt DOM fallback for uncorrelated failure modes
  • Aggressive resource blocking (ads, trackers, images, fonts) drops ~70% of requests; domcontentloaded wait viable
  • Graceful SIGINT/SIGTERM closes Chromium before exit — prevents zombie processes under PM2 autorestart
  • Active migration to AWS: ECS Fargate + ElastiCache + BullMQ + EventBridge webhook callbacks (Project A)

Luxe Storefront (Web)

Work product

Headless e-commerce platform for a D2C ethnic-wear brand — Vite + React storefront, Medusa backend, Directus CMS, dual-gateway payments. Senior-grade CI/CD on Hetzner.

Sole / principal engineer · ex-employer Shree Shivam Attires Pvt Ltd

React 18 Vite TypeScript Medusa 2.14 Postgres / MikroORM Redis Razorpay + Cashfree Shiprocket Cloudinary Directus Nginx + Brotli Docker / Dokploy / Hetzner
  • 3 GitHub Actions workflows with immutable commit-SHA Docker tags pushed to GHCR; two-step Dokploy API deploy with OWASP least-privilege scopes
  • Production hardening: fail-fast at boot — rejects weak JWT secrets, requires Redis in prod for multi-pod webhook idempotency
  • Razorpay + Cashfree fallback with Redis-backed event-ID idempotency keys — zero double-fulfillments since launch
  • Programmatic SEO via Directus Flows: 8 schema.org types including Speakable + GEO/AI-native llms.txt patterns
  • Nginx hardening: HSTS 2-year max-age, Brotli + Gzip dual pre-compression, security headers — companion native iOS/Android app shipped separately (see next card)

Luxe Mobile App (iOS + Android)

Work product

Native iOS + Android shopping app for the Luxe brand. Real customers, real payments, real-time live commerce — Expo SDK 54 + RN 0.81 + Fabric. Not a webview wrapper.

Sole / principal engineer · ex-employer Shree Shivam Attires Pvt Ltd

Expo SDK 54 React Native 0.81 React 19 Fabric (new architecture) TypeScript Tamagui expo-router (typed routes) expo-video expo-secure-store MMKV Cashfree-pg native SDK react-native-reanimated 4 @gorhom/bottom-sheet @shopify/flash-list 2.0 Sentry EAS Build
  • Native iOS + Android (`com.shreeshivam.luxe`) on Expo SDK 54 + RN 0.81 + React 19 with Fabric — full native bridge with synchronous layout, not a hybrid webview
  • Native UPI flow: Cashfree-pg in-app SDK + iOS LSApplicationQueriesSchemes deep-links to PhonePe / Google Pay (Tez) / Paytm / BHIM / CRED — picker surfaces only installed apps, fallback to UPI ID input
  • Live shopping via expo-video (HLS streaming) inside the native app — cart updates synchronized in real-time during streams
  • Tamagui compile-time-optimized styling — design tokens shared with the web storefront for brand consistency, near-zero runtime cost
  • MMKV (~30x faster than AsyncStorage) for hot-path reads — cart, recent searches, user prefs; expo-secure-store (Keychain/Keystore-backed) for auth tokens and payment session IDs
  • Sentry crash monitoring with PII scrubbing + source-map upload via EAS Build hooks — every production crash symbolicates back to TS source
  • EAS Build pipeline for App Store / Play Store distribution with production / dev-client / internal-testing release tracks

Shree Shivam Instagram Queries Web App

Work product

Instagram-live shopping companion — viewer count, push-to-cart, lightweight admin. Right-sized stack: SQLite over Postgres because the workload didn't justify the upgrade.

Sole / principal engineer · ex-employer Shree Shivam Attires Pvt Ltd

Vite React 18 shadcn/ui Tailwind Express Drizzle ORM better-sqlite3 JWT + bcrypt Cloudinary PM2 + rsync cutover
  • Picked SQLite over Postgres after mapping the workload — single-writer, read-heavy, no cross-region needs. Postgres would have been ops burden with zero capability gain
  • Custom JWT + bcrypt auth middleware (no Auth0/Clerk) — wrote the bouncer myself, with explicit token rotation and revocation
  • PWA-installable for Instagram in-app browser quirks; service worker for offline shell
  • Zero-downtime deploys via rsync cutover + PM2 ecosystem reload

Sale Automation Monitor

Work product

Multi-tenant phone-monitoring SaaS with multi-campaign automation. Tenant isolation enforced at the database layer via Supabase RLS — defense-in-depth, not app-level filtering.

Sole / principal engineer · ex-employer Shree Shivam Attires Pvt Ltd

Vite React 18 shadcn/ui Recharts Supabase (Postgres + RLS) cron-parser react-hook-form + zod PM2
  • Row-Level Security policies per campaign — even a buggy app query cannot leak across tenants
  • cron-parser-driven scheduler with idempotent job execution + webhook ingestion API
  • End-to-end zod validation: form schemas resolve through to Postgres column types
  • Recharts dashboards with server-driven aggregations

About

I'm an engineer who runs an agentic-first workflow on top of DevOps + backend fundamentals — the combination is what lets me ship at the rate of a small team while keeping production discipline.

DevOps maturity gives me the safety layer: immutable artifacts, fail-fast at boot, graceful shutdown, idempotent webhooks, defense-in-depth tenant isolation. Agentic workflow gives me the velocity layer: Claude Code and MCP servers do the high-volume work while I architect, review, and override.

The agent ships the code; I ship the system.

Currently prepping for AWS DevOps roles. Migrating my Train API project to AWS as the public AWS-on-Hetzner-engineer transition artifact.

Stack

Languages
TypeScript JavaScript SQL
Backend
Node.js Hono Express Medusa Drizzle MikroORM
Frontend
React 18 Vite React Native (Expo) Tamagui shadcn/ui
Data
Postgres Supabase + RLS SQLite Redis
DevOps
Docker GitHub Actions GHCR PM2 Dokploy Hetzner AWS (in progress)
AI / Agentic
Claude Code MCP servers Custom agents Tool-use Hybrid retrieval
Other
Playwright Zod OpenAPI / Swagger Sentry Cloudinary

Let's talk

Open to AWS DevOps, Backend, and Cloud Engineer roles — full-time at consultancies or product companies, and selectively for foreign-remote work. Bhilai/Raipur on-site or remote across India works.