PunarvPawade

Software engineer building AI-native systems.

I've spent 3+ years across web, backend, AI and infrastructure. I pick up whatever the problem needs, learn fast, and take it all the way to production. Right now I'm going deep on system design.

  • TypeScript
  • Python
  • Next.js
  • FastAPI
  • Postgres
  • Redis
  • MCP
  • Vercel AI SDK
  • Twilio
  • Docker

GitHubLinkedIn

Punarv Pawade
Software Engineer, AFT GroupSince Dec 2024. Maharashtra, India · working remotely

Experience

  1. Dec 2024 — Present

    AFT Group

    Software Engineer

    Automotive retail and finance software for UK dealers: a multi-tenant website platform with an AI page builder, cloud telephony, a dealer management system and a used-car marketplace.

    Key projects

    AI agents on live websitesLet Claude or ChatGPT manage a customer's website without being able to break it.Compare-and-set, Idempotency keys, Preview-then-confirm writes, Spend caps and concurrency limits, Least-privilege scoped keys

    Agents could act outside their tenant, overwrite human edits, publish by accident, run up the platform's AI bill, or apply a retried call twice.

    • MCP server with about 60 tools, OAuth with a consent screen, and scoped, expiring, tenant-bound keys
    • Draft-only writes with confirm tokens tied to the exact previewed state, plus idempotency keys on every write
    • Compare-and-set on a SHA-256 config version, Redis concurrency slots and per-tenant daily spend caps
    • Agent-written pages became the default, with a validator and an authoring guide: $0 platform AI spend, verified in production

    The hard part: Timestamps couldn't serve as the version because browser saves never bumped them. The version is a hash of the stored config instead.

    • FastAPI
    • Next.js
    • MongoDB
    • Redis
    • OAuth 2
    • MCP
    Cloud phone system for dealershipsBrowser and mobile softphone, call queues, recordings and usage billing, embedded in a CRM.Idempotent claims, Outbox pattern, Reconciliation, Lease-based jobs, Fan-out routing

    Calls had to reach every free salesperson at once, ring exactly once on a phone that was killed, and every billable second had to be accounted for.

    • Ring-everyone routing on Twilio TaskRouter, made idempotent with a Postgres partial-unique-index claim
    • Outbox billing pipeline with nightly reconciliation, closing call paths that had gone unbilled
    • Recording offload to Cloudflare R2 with SHA-256 read-back verification and manager-only column-level access
    • Native calling in React Native (FCM, PushKit, CallKit), taken through iOS App Review

    The hard part: One unanswered call re-entered the assignment callback four times in 30 seconds. Making the claim idempotent at the database layer fixed the whole class of bug.

    • TanStack Start
    • Cloudflare Workers
    • Supabase
    • Twilio
    • React Native
    LLM page builder that doesn't regressA chat-to-React page builder that is still stable on the tenth edit.AST-based patching, Intent routing, Provider pinning, Cost and latency observability

    Follow-up edits quietly changed sections the user never touched, and some model failures were intermittent and silent.

    • Babel AST section extraction and splicing, with a validated intent router and undo
    • Database-managed model catalog with provider pinning and served-by logging
    • Diagnosed failures by pinning each of a model's six upstream hosts in turn, and found three distinct failure modes
    • Billed-cost tracking and per-model timeouts based on measured latency

    The hard part: The model was copying the full-page code from its own earlier turns, which outweighed the system prompt. Normalising the chat history fixed it.

    • Next.js
    • Vercel AI SDK
    • OpenRouter
    • Babel
    • Zod
    Keeping 100+ dealer sites healthyIncident-driven reliability and security work on a multi-tenant platform.Tenant isolation, Allow-listed data exposure, Retention policies, Keyset pagination, Covering indexes

    One platform hosts every dealer's site, so one tenant's bug, leak or slow query becomes everyone's problem.

    • Tenant-isolation hardening: tenant derived from the session, allow-listed public data, constant-time secret checks, CI guard tests
    • Found why backups grew unbounded and pruned the store from 120 GiB to 47 GiB
    • Traced a frozen analytics dashboard to a hidden 1,000-row cap; in-database aggregation took it from ~160 to the real ~23,900 visitors
    • Rebuilt a silently stalling logging pipeline, and fixed intermittent TLS certificate failures

    The hard part: The backups grew because snapshots were grouped by an ephemeral container ID, so retention never matched anything.

    • Docker
    • Traefik
    • Grafana / Loki
    • Postgres
    • GitHub Actions

    Also

    • Built CRM single sign-on with algorithm pinning, issuer allow-listing and replay protection
    • Re-architected the nightly multi-dealer stock sync into a BullMQ fan-out with per-dealer retries
    • Built WhatsApp magic-link login that signs in the original tab in real time over Socket.IO and Redis
    • Built and ran a FastAPI vehicle recommender, and migrated it from Pinecone to self-hosted Qdrant
  2. Jun 2024 — Dec 2024

    MetabotAI

    Software Engineer

    Crypto trading tools for Solana and EVM chains.

    • Built a high-speed Telegram trading bot with real-time market data
    • Built an indexer that picks up new Solana and EVM tokens as they launch
    • Integrated 1inch, Uniswap and Jupiter for cross-chain swaps
  3. Apr 2023 — May 2024

    Lazarus Network

    Full Stack Developer

    Joined as an intern and was promoted to full-time. Backend in Go and Node, frontend in Next.js, cloud infrastructure.

    • Erebrus: gRPC auth middleware and a central gateway for VPN nodes, with peer discovery over libp2p
    • Sotreus: wallet-authenticated VPN and firewall deployment with Stripe subscriptions
    • MyriadFlow: complete backend for an NFT launchpad and marketplace

Range

I go where the problem is. These are the areas I've shipped real work in.

  • AI & LLMs

    MCP server that lets AI agents edit live sites safely, a chat-to-React page builder, model routing and cost tracking

    Vercel AI SDK, OpenRouter, MCP, Qdrant

  • Security

    Multi-tenant isolation hardening, SSRF guards with DNS pinning, SSO with replay protection, OAuth for agent access

    OAuth 2, JWT, Postgres RLS

  • Systems & infra

    Rebuilt a logging pipeline, fixed unbounded backups and TLS automation, built a custom Android Linux kernel

    Docker, Traefik, Grafana / Loki, Cloudflare Workers, GitHub Actions

  • Backend & data

    Usage billing with reconciliation, job queues, in-database analytics with keyset pagination

    FastAPI, Node / NestJS, Postgres, MongoDB, Redis, BullMQ

  • Web & mobile

    Multi-tenant Next.js sites for 100+ dealers, a React Native app with native calling

    TypeScript, React, Next.js, React Native, Tailwind

  • Realtime

    Call routing and softphones, live sign-in across tabs over websockets

    Twilio Voice & TaskRouter, Socket.IO, webhooks

Currently learning: System design: distributed systems, data consistency, and how queues and storage behave at scale.

About

Lately a lot of my work has been where LLMs meet production. I built an MCP server that lets AI agents like Claude and ChatGPT edit live customer websites, behind scoped keys and a preview-then-confirm publish step. I've also debugged flaky model output down to the individual upstream host serving it.

I'm just as comfortable in an incident. I've dealt with a stalled logging pipeline, backups growing without bound and a connection pool leaking under load. I move fast, but I own the architecture and the root cause, and every fix leaves a guard test behind.

Before this I spent two years in Web3, building trading bots, chain indexers, VPN infrastructure and hackathon projects. I like not being boxed in: if a problem lives in a kernel, a network or a model, that is where I want to be. Away from the keyboard: guitar, music production, sport and games.

Side projects

  • GitSplitShowcaseCode

    Crypto donations for open-source projects, split automatically to contributors by smart contract. Built at ETHGlobal.

    Next.js, Go, Solidity, AWS

  • PolyPassShowcaseCode

    Decentralised password manager as a browser extension, with encrypted storage and autofill. Built at ETHGlobal 2023.

    React, TypeScript, Polybase

  • Custom Linux kernelCode

    Kernel for the Asus Zenfone Max Pro M1 with driver integration, performance tuning and automated builds.

    C, Make, shell

Let's build something

Always happy to talk about interesting problems, systems and ideas. Email is the fastest way to reach me.