Founding Engineer — Full-Stack (TypeScript / Postgres / APIs)
Publicada el 2026-07-16
Descripción de la oferta
Founding Engineer — Full-Stack (TypeScript / Postgres / APIs) Location: Delhi NCR (hybrid or remote-first, your call — state your preference) Type: 8-week paid contract → full-time Reports to: Founder What we're building A multi-tenant SaaS for SMB (Micro niche) in India. Businesses spend ₹50K–₹2L/month on Meta and Google ads. The leads arrive on WhatsApp. Then they rot — nobody replies at 9pm, follow-up is a receptionist with a notebook, and most enquiries never become appointments. We connect their ad accounts and their existing WhatsApp number, qualify inbound clients with an AI loop, book them into the calendar, chase the confirmation, track who actually showed up, and report the outcome back to the business— and back to Meta, so the ad algorithm learns which campaigns produce clients instead of chatter. The hard parts are not the UI. They are: keeping fifty OAuth tokens and data hermetically separated, ingesting webhooks that arrive out of order and duplicated, refreshing tokens that expire at 3am, and making an AI conversation feel like a human being replying from the client's own phone. Stack Decided, up for a rewrite: Next.js (App Router) + TypeScript Postgres via Supabase — RLS for tenant isolation Redis + BullMQ for queues and scheduled sends Docker, self-hosted on Hetzner Meta WhatsApp Cloud API, Meta Marketing API, Google Ads API Anthropic API for the qualification loop You will have opinions about parts of this. Bring them. But we are shipping on this stack. The first 90 days Weeks 1–4 — make the loop work, ugly. One client Hardcoded. Single-tenant. WhatsApp message arrives → AI qualifies → books a slot → writes to Google Calendar → chases confirmation. It does not need to scale. It needs to be real, and it needs to be demoable to a business owner in week 4. Weeks 5–8 — make it a platform. Multi-tenant schema with RLS. Meta + Google OAuth with encrypted token storage and a refresh worker. Ad spend sync. CTWA referral capture on inbound messages. Weeks 9–12 — close the loop. Show/no-show tracking. CAPI write-back of qualified and booked events. Outcome reporting: booked · confirmed · showed · rebooked. We build the risky thing first. OAuth will definitely work; that's why it isn't week 1. What you'll own Most of it. This is a two-person engineering team where the other person is the founder, who also has to sell. You will make architectural decisions alone and live with them. If that sounds stressful rather than appealing, this isn't the role. Must have 4+ years production TypeScript. Next.js App Router specifically — not "I've used React." Postgres at depth. RLS policies, index strategy, reading query plans, knowing why your query got slow. Not "I used Supabase's client library." OAuth 2.0 implemented from scratch — authorisation code flow, refresh, revocation, and the failure modes. Not "I used NextAuth." Queues in production — BullMQ, SQS, Celery, whatever. Retries, idempotency, dead letters, backoff. Webhook ingestion at volume — ordering, deduplication, replay. Multi-tenant data isolation. You have enforced it, and you can explain what breaks when you get it wrong. Strong plus Meta Graph / Marketing API, or Google Ads API (either — both is rare) WhatsApp Cloud API, especially Coexistence An LLM in production, handling real users, not a demo Worked on a team of 1–3 where you owned entire systems Built something that held other people's credentials and didn't leak them Not required Marketing domain knowledge. We'll teach you. A degree from anywhere in particular. Open source contributions. Nice, not necessary. Compensation Contract phase (8 weeks) Full-time, on conversion We convert at week 8 or we part ways cleanly. The contract is a real evaluation in both directions — you're assessing us too. Terms Code lives in our GitHub org from the first commit. Our Meta Business Manager, our Google MCC, our Supabase project, our Hetzner account. IP assignment signed before you start. You get full access to everything. We're not going to hire a senior engineer and then hide the codebase from them. Answers to these are MUST Your GitHub, or code you can share One system you built that you're proud of, and one thing about it you'd do differently now Your availability and notice period We read every application. If your answers to questions 1–3 are good, we'll talk within a week. Please don't send a generic cover letter. The screening answers are the application. If they're good, nothing else matters much. If they're not, nothing else saves it.
Skills
- PostgreSQL
- TypeScript
- OAuth
- Next.js
- Docker
- Redis
- JavaScript
- Google Ads
- React
- Anthropic Claude
- Supabase
- Hetzner
- GitHub
- Node.js
- SQL
Fuente original: freelancer