Skip to main content

LambdaLynx: Architect Clarity. Build Momentum

What Happens to Your Product If Your Developer Quits Tomorrow?

A founder I’d been advising got the message on a Sunday night: her only developer was leaving. Two weeks’ notice, nothing personal, a bigger company had offered him more than she could match. She called me Monday morning and the first thing she said was, “I don’t even know what I don’t know.”

She wasn’t being dramatic. She didn’t know where the product actually ran. She couldn’t log into the cloud account because it was registered under his email. She didn’t know how a bug fix got from his laptop to her customers, and she had no idea whether anyone else on earth could figure it out.

Let me answer the question in the title up front: your product can survive losing its developer, but only if four things stay behind when they walk out: the access, the knowledge of how it runs, the record of why it was built the way it was, and the ability to ship a change without them. Most early-stage products keep none of these, and the founders don’t find out until the two weeks are already ticking.

The good news is that fixing this costs almost nothing. It’s a few hours of unglamorous work that nobody will congratulate you for, and it might be the highest-return time you spend on your company this quarter.

Why this matters more right now

Early products have always depended on one or two people. What’s changed is how many founders are in this exact position without realizing it.

If you built your first version with Lovable, Replit, or Bolt.new and then brought in a contractor to take it further, that contractor is probably the only human who understands how the whole thing hangs together. If you hired one developer, they are your entire engineering department. There’s no second person absorbing knowledge by osmosis, no team wiki that grew up organically, no colleague who can cover. The knowledge lives in one head, and heads take new jobs.

I want to be clear that this isn’t about trust. Your developer is probably great, probably loyal, and probably not going anywhere. But people take other offers, get sick, and have family emergencies, and none of those events check with your product roadmap first. Planning for it is company hygiene, the same way you’d keep the business bank account in the company’s name even though you trust your co-founder.

Access: who actually holds the keys

Start here, because it’s the easiest to fix and the ugliest to fix late.

Make a list of every account your product depends on. The code repository (usually GitHub). The cloud account where the product runs (AWS, Azure, Google Cloud, or a host like Vercel or Render). The domain registrar. DNS. The payment processor, most often Stripe. The email-sending service. App store accounts if you have mobile apps.

For each one, answer a single question: if my developer disappeared today, could I log in?

The rule to enforce is simple. Every one of those accounts should be owned by you or the company, with your developer invited in as a member or admin. Owned means the root credentials, the billing, and the recovery email are yours. I’ve helped founders untangle products where the repository lived in a former contractor’s personal GitHub account and the cloud bill went to his personal card for reimbursement. It’s usually recoverable, but you do not want to be negotiating access to your own product with someone who no longer works for you.

This one takes an afternoon. Do it first.

Knowledge: when your infrastructure is someone’s memory

A question I ask founders that tends to land hard: if your product’s servers vanished tonight, does a written record exist of how to rebuild them, or does that record only exist in your developer’s memory of which buttons they clicked?

For most early products, it’s the memory. Someone set up the cloud environment by hand months or years ago, it works, and nobody has touched it since. The setup was never written down because it never needed to be, right up until the person who did it is gone.

The fix has a name: Infrastructure as Code. Instead of clicking through a cloud provider’s console, your infrastructure gets described in files, using a tool like Terraform, and those files live in your code repository next to everything else. Which means your setup is readable, reviewable, and rebuildable by any competent developer who comes after. It stops being tribal knowledge and becomes part of the product.

In one organization I worked with, we moved more than 125 cloud resources into Terraform. The headline result was that infrastructure changes got about 90% faster. The result that mattered more, in my view, was quieter: the infrastructure stopped depending on any individual. Anyone on the team could read exactly what existed and why.

For a small product, you don’t need that scale of effort. You need two things. Ask your developer whether the infrastructure is in code, and if it isn’t, ask what it would take to get there. And ask for a one-page deployment doc: the steps to get a change from a laptop into production, written so that someone new could follow them. If your developer can produce that page in an hour, you’re in decent shape. If the honest answer is “it’s complicated,” you’ve just learned something important while you still have time to act on it.

Judgment: the decisions nobody wrote down

Access and knowledge get you a product that keeps running. There’s a third thing that leaves with a developer, and it’s subtler: the reasons.

Why Postgres and not something else? Why does the app talk to that particular login provider? Why is there a strange workaround in the billing code that looks wrong but apparently isn’t? Every product accumulates decisions like these, and the next developer will hit each one and have to choose between guessing and re-deciding. Re-deciding is expensive. I’ve watched new teams rip out things that were load-bearing because nobody could explain why they were there.

The lightweight fix is a decision log. In the industry these are called Architecture Decision Records, or ADRs, but strip the jargon and each one is a half page: what we decided, when, and why, including what we considered and rejected. On one recent project I put ADRs in place on a team of two, which sounds like overkill until you realize the log isn’t for the two people who made the decision. It’s for whoever inherits it. A year of decisions fits in a dozen short notes, and it turns “why on earth does it work this way?” into a two-minute read instead of a week of guessing.

The test that tells you where you stand

All of this rolls up into one question you can ask today, and I’d encourage you to ask it out loud in your next conversation with your developer:

“If a competent developer we’d never met started on Monday, could they ship a small fix by Friday?”

That’s the whole test. It quietly checks everything: whether the new person could get access, find the code, understand the setup, run the product on their own machine, and get a change deployed. You don’t need to understand the technical answer. You need to watch how the question lands. A developer with nothing to hide finds this question interesting and will give you an honest map of the gaps. A defensive or dismissive answer is a signal worth paying attention to, and not because your developer is scheming. Usually it means they know the answer is no and they’re embarrassed about it.

A gentler version, if you want one: “Could you take two weeks fully offline without us needing to call you?” Good developers want that to be true. It’s their vacation on the line too.

Anti-patterns to avoid

Waiting until it feels urgent. The worst time to sort out access and documentation is during a resignation, and the second worst is when the relationship is strained, because then the request reads as distrust. Do it now, while everything is fine, and frame it exactly as what it is: standard practice you’d want in place regardless of who’s on the team.

Accepting “it’s all in the code” as an answer. The code says what the product does. It doesn’t say how it gets deployed, where it runs, which accounts it depends on, or why it was built this way. Those live outside the code unless someone deliberately writes them down.

Hiring a second developer as your backup plan. Redundancy through headcount sounds sensible and mostly isn’t, at this stage. Two developers sharing undocumented knowledge just means you now have two people who can resign. Write things down first. It’s cheaper than a salary and it doesn’t quit.

Doing it once and calling it done. Account lists rot. Deployment docs drift out of date the third time the process changes. Put a recurring reminder in your calendar, quarterly is plenty, to re-ask the Friday-ship question and refresh the list.

How to start, gently

This week, make the account inventory. Thirty minutes with a spreadsheet: every account, who owns it, who can log in. Transfer ownership of the big three (code repository, cloud account, domain) to the company if they aren’t there already.

Next week, ask for the one-page deployment doc. Frame it as onboarding material for a future hire, because that’s what it is.

The week after, start the decision log. It’s a single file in the repository. Ask your developer to write the first entry about whatever decision they made most recently, and to add one whenever something significant gets decided from now on.

Then, when there’s room to breathe, raise Infrastructure as Code. For a small product, moving to Terraform might be a week of work, and it converts your entire setup from memory into a document. Each of these steps is small, and each one makes the next easier.

My friend with the Sunday-night message? Her story ended fine, but only because her departing developer was generous with his last two weeks and spent most of them writing down what should have been written down all along. She got lucky. I’d rather you didn’t need to be.

Founders, an honest question: if your developer handed in notice tonight, which of the four would you scramble for first: the passwords, the setup, the reasons, or the ability to ship?

#FractionalCTO #StartupTech #TechLeadership



Leave a Reply