VC

Senior Full-Stack Product Engineer

Vairified Corp
Posted 5 hours ago
IndiaRemoteEngineering & Development
Is this job info correct?

About the role


Vairified is looking for a senior engineer to take ownership of the parts of the platform that other companies depend on.


We are a five-engineer team maintaining two products that share accounts and data, four active codebases, a public API with live partner integrations, and twenty-eight locales. Work currently arrives faster than it can be prioritised, which means the loudest request tends to win and the durable work waits. This role exists to change that: to take a significant surface, own it end to end, and be trusted to decide what happens to it.


All of our work goes through an agent harness. We develop with Claude Code inside a system that specifies work before it is built and puts it through automated gates and more than one independent review before it reaches a customer. This is not a tool we are trialling — it is how the codebase gets changed. We are looking for someone who already works this way, not someone who intends to learn.


The position suits an engineer who would rather write the specification than receive one, and who is comfortable being accountable for a system rather than a contributor to it.


About the products


Vairified is a player rating system and the platform built around it: players, clubs and venues, events and matches, certified raters, video-based rating analysis, payments, and a partner API that external companies build production software against.


Heart is our facility and tournament management product — registration, divisions, brackets, court scheduling, check-in and payments for pickleball facilities and municipalities. The two products share accounts and publish programming to one another.


We have paying customers, several live partner integrations, and payments moving through both systems daily. Events run on the platform every weekend.


What you would own


The exact remit would be agreed with you. These are the areas where the need is clearest:


• The partner API and the SDKs. Several companies build against our public API today. The specification, the TypeScript and Python SDKs and the backend do not agree with one another in every detail; scope and trust models need defining properly; and partners are asking for webhook receiver registration, signing secrets and richer rating payloads. There is no sandbox in which a partner integration can be exercised before it reaches production. This is the largest gap we have and it currently has no owner.


• Authorization and tenancy. Both products carry accumulated access-control debt: permission checks duplicated across modules and drifted apart, endpoints that identify a caller but do not confirm what that caller may reach, and audit trails that record the action but not the reason. This is a coherent body of work, not a list of unrelated bugs, and it needs someone who will model it once and apply it consistently.


• Payment correctness. Our failures here are concurrency and reconciliation rather than integration: eligibility decided before a charge and recorded after it, limits evaluated against the wrong identifier, and no handling for disputes, chargebacks or refunds. We need someone who treats the payment provider as the source of truth and designs for the paths where it disagrees with us.


• The integration surface. Stripe, Clerk for identity, Mux for video, a CRM that receives our contact data, and partner OAuth. Most of these fail in ways we do not control, and product quality depends on how well we absorb that.


• The data layer. PostgreSQL and Prisma across three schemas, geospatial search, and query performance that has to hold as event and match volume grows.


You would also carry ordinary feature work across the stack, take your turn on production releases, and extend our automated end-to-end coverage as you go.


What we are looking for


Demonstrated fluency directing AI coding agents on production work. We are listing this first because it is the first thing we assess, and because it is the one requirement here that we will not train. You have shipped real production code through Claude Code, Cursor, Codex or an equivalent agent, in a codebase with users on it, and you were accountable for what the agent produced. You can decompose work for an agent, supply the context it needs, and reliably recognise output that is confidently wrong. A passing gate is where review begins here, not where it concludes. If your experience is enthusiasm for these tools rather than production work done through them, this is not the role.


Public API ownership. You have designed, shipped and versioned an API that external developers consumed, and you understand that a published contract cannot be quietly corrected. Experience maintaining client SDKs alongside it is a strong advantage.


Authentication and authorization as an implementer. Sessions, SSO, OAuth 2.0 flows, scopes, API keys and signed webhooks — built rather than consumed through somebody else's SDK. Our partners depend on ours, so this is a requirement rather than an advantage.


Correctness under concurrency. You can reason about what happens when a billing webhook arrives twice, out of order or not at all; why a check performed before a charge and recorded after it is a race; what happens when a queued job fails halfway through; and why one successful run does not establish correctness.


Data modelling and SQL you can defend. Schema decisions that survive contact with production volume, and the ability to find and fix a slow query rather than work around it.


Comfort with breadth. A feature here routinely spans three repositories and two languages. Engineers who prefer a single well-defined component find this uncomfortable.


Strong written communication. Clear specifications and clear rejections. Ambiguous writing produces ambiguous software, and it degrades AI output faster than anything else.


Self-direction. We are distributed across several countries with no standup culture.


Useful, but not required


• Our stack specifically — NestJS, Next.js, Prisma, PostgreSQL, BullMQ, Python. Relevant experience is welcome, but we would choose sound judgement and strong fundamentals over framework familiarity. A framework is the fastest thing on this page to learn; the way we work is not, which is why one is optional and the other is not.


• Internationalisation at scale. We ship in twenty-eight locales and it is a recurring source of defects.


• Geospatial data — geocoding, distance search, map interfaces.


• Playing a racket sport seriously. Several of the requirements that matter most are ones you notice only as a player. Tell us your sport, your level and where you play.


A degree is not required and carries no weight in our assessment. We evaluate capability from work you have actually done.


What this role is not


• It is not a specified-tickets role. Work arrives as a problem, frequently an ambiguous one.


• It is not greenfield. Both codebases have real history, some of it written quickly to serve early customers, and raising that floor is part of the work.


• It is not a single-component role. You will not be able to avoid the half of the stack you are less comfortable with.


• It is not a role where generated code ships unread, where a passing build is treated as a finished change, or where agent-driven development is something you plan to pick up once you arrive. We are hiring for what you already do, not for what you are willing to try.


Practicalities


Employment: full-time, remote. Our team is distributed across several countries, currently spanning India to the US East Coast.


Hours: you set them. We ask for three to four hours of daily overlap with US Eastern for the conversations that genuinely need to happen live. Everything else is asynchronous.


Compensation: ₹40–48 lakh per annum, depending on experience. This is a senior individual contributor position at a small company; growth is in scope and compensation as the business grows rather than through a title ladder.


Interview process: an initial conversation, then a working session on a real ticket from our backlog, conducted on a shared screen. Nothing to install. We are assessing your judgement, not your familiarity with our tooling. For candidates who progress further, a paid day on a real backlog request. We do not set unpaid take-home exercises or algorithm puzzles.


How to apply


Please answer these three questions with your application. A few sentences each is enough. We read these before the CV, and applications without them are unlikely to progress.


1. Describe an API or integration surface that external developers depended on and that you owned. What did you get wrong, and what did correcting it cost once people were already using it?


2. Describe how you work with AI coding agents today, and specifically how you determine whether what came back is correct.


3. Describe a time you pushed back on a feature you were asked to build. What was your reasoning, what was the outcome, and how did you know your position was correct?


Links to substantive work are welcome — a repository, a product, a specification you wrote. A resume is optional.


Vairified is an equal opportunity employer. We consider all qualified applicants without regard to race, colour, religion, sex, sexual orientation, gender identity, national origin, disability or veteran status.

Similar jobs