About Us
We are a Silicon Valley startup building RE, a social platform designed around real human connection rather than reach and vanity metrics. The product is live — a React Native app backed by a TypeScript service layer, real-time messaging, push notifications, a personalised feed, and an internal admin and moderation console. The founding team is in San Francisco; engineering works across the US and India.
The Role
We are hiring a senior full stack engineer who is backend-heavy — roughly 70% backend and platform, 30% internal frontend. You will own the services behind the mobile app: API, data model, authorisation, real-time messaging, background jobs, notifications, and the feed ranking pipeline — plus the admin panel our operations and moderation team lives in.
This is a build-and-own role, not a maintenance role. The platform is past zero-to-one and has real users and real data volume, so the interesting problems have shifted from "does it work" to "does it hold up." You will make the calls on schema design, query performance, job orchestration and rollout safety — and you will live with them.
What You Will Own
• Backend features end to end — design, schema and migrations, implementation, tests, review, deploy, and verifying behaviour in production afterwards.
• Authorisation correctness. Our access model is enforced in the database through Row-Level Security and connection-pool discipline; you will need to understand it deeply and catch the mistakes that quietly bypass it.
• The real-time layer — messaging, presence, conversation handlers — and the background job system behind notifications, moderation, media processing and analytics.
• The feed and ranking pipeline: scoring, personalisation signals, snapshot materialisation, and the freshness-versus-cost trade-off as volume grows.
• The admin panel: moderation queues, user and post management, referral and affiliate tooling, audit views, analytics dashboards.
• Releases through dev → staging → production, including migration safety and rollback thinking. Merging is the deploy here.
Our Stack — Naming this explicitly so you can judge fit honestly. We don't expect experience with every item — we do expect depth in the equivalents.
Backend — Bun + TypeScript (strict, no build step), Hono, Zod with OpenAPI generation, GraphQL Yoga for search. Functional, module-based services — we avoid class-heavy DI.
Data — PostgreSQL on Supabase with Drizzle ORM, ~200 append-only migrations, Postgres RLS as the real authorisation layer. ClickHouse for analytics, Redis for pub/sub and presence.
Real-time & jobs — Socket.IO on the Bun engine with the Redis adapter; pg-boss workers for notifications, moderation, email, media and feed scoring. APNs and FCM for push, Resend for email, Twilio for OTP, OpenAI for content moderation.
Frontend — React 19, TanStack Start / Router / Query / Table, Tailwind v4, shadcn + Radix, Vite, Vitest — deployed to Cloudflare Workers.
Infra & CI — Docker on Railway, Cloudflare Tunnel, Terraform. GitHub Actions running lint, strict type-check and an integration-heavy test suite against ephemeral Postgres. OpenTelemetry and structured logging.
What We Are Looking For
• 5+ years of professional engineering, mostly on production backend systems.
• Deep, current TypeScript — strict mode, generics, discriminated unions, types that make invalid states unrepresentable. Not "JavaScript with some types."
• Strong PostgreSQL: normalised schema design, non-trivial SQL, reading an EXPLAIN, reasoning about indexes and transactions — and having run migrations against a live production database safely.
• ⚠️ Hands-on experience with a database-level authorisation model (Postgres RLS or an equivalent you can describe in detail). This is what we screen hardest on.
• Production experience with background job queues and with a WebSocket / real-time feature at scale — connection state, horizontal scaling, reconnection semantics.
• You have shipped mobile push through APNs and/or FCM, and you understand what API backward compatibility means when you cannot force users to update the app.
• Genuinely capable in modern React — you can build a real internal tool (tables, filters, forms, charts, auth-gated routes) to a good standard without a frontend engineer finishing it.
• Comfortable with Docker and CI/CD, you write tests by habit, you communicate clearly in written English, and you own outcomes rather than tickets.
Explicitly Not a Fit
• Frontend-heavy full stack engineers whose backend work is thin CRUD over an ORM. This role is backend-first.
• Engineers who have always had a DevOps or platform team behind them and have never owned a schema change or a deployment.
• Anyone who needs a fully specified ticket to start, or who treats "it passed review" as the end of their responsibility for a change.
• Candidates who cannot commit to reliable overlap with the San Francisco team, or whose production experience is in another ecosystem with no serious TypeScript.
Nice to Have
• Bun, Hono, Drizzle, Supabase or Better-Auth specifically.
• Social products — feeds, ranking, graph relationships, engagement systems.
• Trust & safety and automated content moderation; analytics or aggregation pipelines (ClickHouse or similar).
• Terraform, Cloudflare Workers, Railway; observability practice — having debugged a production incident from telemetry rather than guesswork.
Location & Work Setup
• Full-time, long-term. Bangalore preferred so you can join the team in person as it grows; remote-friendly within India for the right candidate.
• ⚠️ Meeting overlap is non-negotiable — you must be reliably available for scheduled calls with the San Francisco team, typically in your evening (IST). Async-only working styles will not work here.
• We optimise for outcomes and ownership rather than tracked hours. Tooling, cloud and AI-assistant costs are covered; our codebase is set up for AI-assisted development and we expect engineers to use it with judgement.
Compensation
• USD 2,000 per month, based on experience, fit, and your demonstrated ability to deliver complex requirements independently.
• Reviewed after the first six months and annually thereafter, based on the ownership you take and the impact you deliver.