Career

What Should a Technical Founder Not Build Themselves?

Rob Walling ran the numbers on this back in 2008: 348 hours to build what you could buy at roughly 20% of the cost. The pull to build it yourself is strongest exactly where it's most expensive — payments, auth, email deliverability — because those are the parts that feel like real engineering.

Published February 9, 202611 min readUpdated Feb 9, 2026

Written by · Full-Stack Agentic AI Software Engineer — AI Agents, Automation & Revenue Systems for GTM/RevOps teams

In brief

Which parts of a new company should a technical founder build themselves, and which should they buy or rent instead?

The rule of thumb that holds up under scrutiny: build the thing that is the actual product, and buy everything that is merely a precondition for shipping it. Rob Walling's 2008 essay on build-vs-buy estimated a typical software build at 348 hours — about two months — costing somewhere in the mid five figures once design, hosting, documentation and go-to-market are counted; he bought one product, DotNetInvoice, for roughly 20% of what building it would have cost, and got existing revenue and search rankings along with the code. Payments, authentication, transactional email and basic analytics are the recurring examples because each one looks like ordinary engineering and is actually a regulated, adversarial, or reputation-sensitive discipline with a decade of edge cases already paid for by someone else. The counter-case matters too: Ciphera, a smaller identity vendor, deliberately built its own sign-in system because no hosted identity platform would sell them the specific privacy guarantee they needed — proof that 'always buy' is as wrong as 'always build.' The actual question isn't build-versus-buy in the abstract. It's whether this specific piece is the reason a customer pays you, or just a wall between you and the reason.

  • Rob Walling's build-vs-buy essay put a typical from-scratch build at 348 hours (~2 months) and mid five figures, and he bought a product for roughly 20% of that cost, getting existing revenue and rankings along with it
  • Payments, auth, transactional email and analytics recur as 'don't build it' examples because each hides a decade of edge cases (fraud, deliverability reputation, credential-stuffing defenses) that a vendor has already paid to solve
  • Pieter Levels' public approach to shipping fast leans on exactly this: wiring a Stripe Checkout button in rather than building billing, so the 'build' stays scoped to the actual product
  • The exception proves the rule rather than breaking it: Ciphera built custom authentication specifically because the privacy guarantee they needed wasn't for sale anywhere, which is a reason to build, not evidence that buying is usually wrong
  • The working test: build what makes a customer pay you specifically; buy or rent the parts that would look identical no matter which company built them

Evidence notes

Rob Walling — "Should You Build or Buy Your Software Product?" (2008)

Walling, a bootstrapped-SaaS founder and later co-founder of MicroConf and TinySeed, estimated a typical software build at 348 hours (about two months) and a full cost including design, hosting, documentation and initial marketing north of $40,000 once outsourced-labor rates are applied. He bought an existing product, DotNetInvoice, for roughly 20% of what building an equivalent would have cost, acquiring existing customers, revenue and search rankings in the same purchase. This is one practitioner's essay and personal accounting, not an industry-wide study, but the specific figures are his own numbers from his own deals.

Pieter Levels — build-fast philosophy (Lex Fridman Podcast #440; Cheeky Pint with John Collison)

Levels, an independent maker of multiple profitable products, has described his own approach as wiring a Stripe Checkout button into a minimal product rather than building custom billing or account systems from scratch, treating anything that isn't the product's core feature as something to buy or borrow. Self-reported practitioner testimony from podcast interviews, not documentation of a formal methodology.

"Three things to never build yourself: auth, notifications, payments" — Hacker News discussion (2021)

A widely upvoted Hacker News thread where practitioners debated the recurring 'don't build these' list. Treat this as anecdotal community consensus from working engineers, not research — useful for showing how consistently experienced builders converge on the same three categories, not as a citable statistic.

Ciphera — "Why We Built Our Own Sign-In Instead of Buying Auth0 or Clerk"

Ciphera, a smaller identity/privacy-focused vendor, states directly that buying Auth0 or Clerk 'is almost always the right answer,' but built custom authentication on the OPAQUE protocol (RFC 9807) because they needed a specific guarantee — that operators with database access cannot read users' passwords or emails — that no hosted identity platform sells, since standard account-recovery flows require holding both. A vendor's own blog post explaining an atypical decision, useful specifically as the exception that defines the rule.

Continue with purpose

There's a specific moment every technical founder hits: staring at a pricing page for an auth provider or a payments platform, doing the mental math on the monthly fee, and thinking — I could just build this. It's a login form and a database table. How hard can it actually be?

Hard enough that entire companies exist doing nothing else, employing hundreds of people, for years, to keep doing it correctly. The instinct to build it yourself is strongest exactly where it's most expensive to be wrong, because the parts that look simple from the outside — a password field, a charge button, a batch email — are the parts where someone else has already paid for a decade of mistakes you haven't made yet. The revenue-side version of what should a technical founder not build themselves is something writes about in more operational detail than I go into here. The revenue-side version of what should a technical founder not build themselves is something XenGrowth writes about in more operational detail than I go into here.

What Rob Walling's own numbers actually said

In 2008, before 'build vs buy' was a startup cliché, Rob Walling wrote out his own math for deciding whether to build a software product from scratch or buy an existing one. His estimate for a typical build: 348 hours, roughly two months, with a fully loaded cost — design, development, a marketing site, documentation, initial SEO and paid acquisition — landing north of $40,000 once you price labor at market rates rather than 'free because it's my own time.' He then bought DotNetInvoice, an existing invoicing product, for about 20% of what building an equivalent from scratch would have cost him, and got existing paying customers and search rankings bundled in with the code. Reasoning through exactly this kind of cost comparison, on the revenue-operations side, is a chunk of what writes operator guides about.

That 20% figure is doing a lot of work in this argument and deserves a caveat: it's one deal, from one founder, in one product category, in 2008. It is not a universal exchange rate between building and buying. What generalizes isn't the specific percentage — it's the finding underneath it, which shows up again and again in every founder's actual accounting once they do it honestly: building something a market has already solved is close to always more expensive than the sticker price on the alternative makes it look, because the sticker price doesn't include your own hours.

The recurring list, and why it's the same three things every time

Ask working engineers what a founder should never build themselves and you get the same short list with remarkable consistency: payments, authentication, and transactional email deliverability. A widely-discussed Hacker News thread on exactly this question converged on those three within the first dozen replies, and it's worth being honest about what that convergence is — anecdotal agreement among practitioners, not a controlled study — while also taking it seriously, because it's the kind of consensus that only forms when enough people have independently hit the same wall. If the operations side of this is the part you are stuck on, is the better reference. If the operations side of this is the part you are stuck on, The XenGrowth resource library is the better reference.

Category

Looks like

Actually is

Payments

A charge button and a database row

PCI compliance, chargeback handling, fraud scoring, multi-currency settlement, a decade of edge cases in how cards fail

Authentication

A password field and a sessions table

Credential-stuffing defense, breach-list checking, MFA, account recovery that doesn't become a social-engineering hole

Transactional email

An SMTP call

IP and domain reputation management, spam-filter relationships, deliverability monitoring most founders don't know exists

Basic analytics

Logging events to a table

Retroactive schema changes, funnel definitions, a UI nobody but you will ever look at twice

Notice what these four have in common: none of them are things a customer is choosing you for. Nobody signs up for your product because you rolled your own auth system. They sign up despite it, if it works, and they leave because of it the one time it doesn't.

Basic analytics belongs on that list for a different reason than the other three — it isn't adversarial or regulated, it's just a time sink disguised as a small task. 'Just log events to a table' turns into retroactive schema changes once the first real question comes in, then a homemade dashboard nobody but the founder ever opens, then a slow drift into maintaining a reporting tool instead of the product. It rarely causes a security incident. It just quietly eats a week a month for a year, on something a $20-a-month tool already does better. Deciding which parts of a revenue stack are worth that kind of build effort is exactly what walk through, category by category.

Why the pull to build is strongest exactly where it's most expensive

There's a psychological reason this keeps happening to competent engineers, not just inexperienced ones. Payments and auth are genuinely interesting problems — token expiry, idempotency keys, webhook retries, session fixation — the kind of thing that reads like a systems-design interview question, which is exactly why building them feels like real engineering in a way that gluing together a vendor's SDK does not. The vendor's problem is more interesting than your product's problem, and that's the trap: interesting and valuable aren't the same axis, and a founder's first year only has room to optimize for one of them. There is a longer treatment of AI agents and marketing automation in . There is a longer treatment of AI agents and marketing automation in XenGrowth on AI agents and marketing automation.

There's also a cost asymmetry that rarely gets named directly. When a vendor's payments system has an edge case, it's the vendor's incident, the vendor's on-call, and usually the vendor's compliance team that absorbs it. When your own from-scratch system has the same edge case, it's your 2am, your support ticket, and — if it involves card data or credential leakage — potentially your company's legal exposure. Buying doesn't just save the 348 hours. It moves the tail risk to an entity that's staffed to handle it. The same logic applies to how a founder buys distribution rather than builds it from scratch, which cover in more detail.

Signal you're weighing

Points toward build

Points toward buy

Would a customer notice or care who built this?

Yes — it's visibly the product

No — it would look identical either way

What breaks if it's briefly wrong?

An annoying bug, recoverable in an afternoon

Money movement, leaked credentials, legal exposure

How specific is the requirement?

Documented, unusual, genuinely unmet by any vendor

A preference, an annoyance, or 'we might need this later'

How long would it actually take?

Days, and the cost of being wrong is small

Weeks to months, per Walling's own 348-hour estimate

The Stripe Checkout instinct, and why it's correct

Pieter Levels, who has shipped and sold more small profitable products solo than almost anyone publicly documenting the process, has described a consistent pattern in interviews: wire in a Stripe Checkout button rather than build billing infrastructure, and treat almost everything that isn't the product's actual differentiator as something to buy, borrow, or bolt on. That's not laziness. It's the same math Walling did with a spreadsheet, done instinctively, at a pace that only works because he isn't spending two months building a payments system nobody is paying him for. The XenGrowth resource library covers this same buy-versus-build calculus for the marketing stack specifically, at .

The exception that actually proves the rule

It would be a weaker argument if it had no real counter-example, so here's the honest one. Ciphera, a smaller identity-focused vendor, built its own authentication system from scratch rather than buying Auth0 or Clerk — and says so directly, stating plainly that buying 'is almost always the right answer.' Their reason: they needed a specific guarantee, that operators with database access cannot read users' passwords or emails, built on the OPAQUE protocol. No hosted identity platform sells that guarantee, because standard account-recovery flows require holding both pieces of information. That's not a preference. It's a documented, specific requirement that genuinely isn't for sale anywhere, which is exactly the condition under which building the thing yourself is the right call. For the AI search, GEO and discovery angle, see . For the AI search, GEO and discovery angle, see XenGrowth on AI search, GEO and discovery.

The question is never build versus buy in the abstract. It's whether this specific piece is the reason a customer pays you, or just a wall standing between you and the reason.

Most founders who talk themselves into building auth from scratch don't have Ciphera's situation. They have a minor annoyance with how a vendor's dashboard looks, or a vague sense that owning the whole stack is more 'real' engineering, or — the honest version — they simply find building it more interesting than configuring someone else's SDK. That's a legitimate personal preference. It is not a business reason, and conflating the two is how a two-week distraction turns into a two-month one.

A working test, not a rule

  1. Ask whether this is the reason a customer pays you. If removing it wouldn't change why someone chose your product over a competitor's, it's plumbing, not product

  2. Ask what happens when it's briefly wrong. A bug in your core feature is bad. A bug in your auth system that lets one account read another account's data is a different category of bad, with legal exposure a startup rarely has the runway to survive

  3. Ask if the requirement is documented and specific, or just a feeling. 'I don't like how their dashboard looks' is not the same claim as 'no vendor supports the exact data guarantee our customers require,' even though both feel like reasons to build

  4. Price the real hours, not the imagined ones. Walling's 348-hour estimate from 2008 is a reasonable floor for a genuinely full build today; multiply that by your own real hourly value, not the number that makes building sound free

  5. Revisit the decision at scale, not before it. The point at which owning your own payments or auth stack becomes economically sane is real — it's just almost never in year one, and 'we'll need this eventually' is a bad reason to build it now

The uncomfortable part of this argument for a lot of technical founders is that it says the most satisfying engineering work — the kind with real architecture decisions, real edge cases, real craft — is frequently the work you shouldn't be doing yet. That's not a knock on the craft. It's a reminder that a company's first year has exactly one job, which is proving someone will pay for the thing that's actually yours, and every hour spent perfecting someone else's already-solved problem is an hour not spent proving that.

When the answer actually flips later

None of this is permanent. Companies that reach real scale frequently do end up building their own version of something they bought early — payments infrastructure at a large enough transaction volume, or an internal identity system once a vendor's per-seat pricing outgrows what it once saved. That transition is real and sometimes correct. The mistake isn't building it eventually. It's building it in year one, before there's a company, a customer base or a revenue number large enough to justify the hours against, on the theory that you'll need it someday so you might as well start now. 'Eventually' is not 'now,' and the gap between the two is exactly the runway a fragile company can't afford to spend on infrastructure nobody is paying for yet.

Further reading from XenGrowth

Where this work meets go-to-market

The build-versus-buy question doesn't stop at engineering infrastructure — it runs straight into how a company measures and grows revenue too. publishes operator guides on the go-to-market side of that same discipline.

Further reading from XenGrowth

Where this work meets go-to-market

If what should a technical founder not build themselves is part of a growth programme rather than a standalone build, is the companion reading.

Further reading from XenGrowth

Where this work meets go-to-market

If what should a technical founder not build themselves is part of a growth programme rather than a standalone build, XenGrowth's growth operations team is the companion reading.

Should you build this yourself?

Walk through a piece of infrastructure you're considering building in-house. The outcomes aren't a strict ranking — ties break toward whichever fits first, so the order below is a real decision, not decoration.

1 / 4
Is this the specific thing customers pay you for, not just something that supports it?

Apply this article

How to turn insights into execution

A practical sequence for teams turning concepts into production outcomes.

CareersFoundersBuild vs BuyStartupsInfrastructureProductcareer

Audit your current state

Map the bottlenecks and constraints connected to the article’s core problem.

Choose one bounded change

Test the most useful recommendation on one workflow before widening the scope.

Measure what changed

Keep the parts that improve the work, document what failed, and make the next decision from evidence.

Next step

Need help applying this in your stack?

I can translate these patterns into a concrete implementation plan for your team.

Discuss implementationBack to blog

Replies usually within 24 hours.

Next Steps

Continue reading

Why Most Side Projects Never Get a Single User

The architecture is usually fine. The database choice was probably fine too. The reason a side project never gets a single real user is almost never technical, and Paul Graham said as much back in 2013 — you have to go find them, and most builders never do.

Navigate

Product Thinking Is What Will Separate Engineers

When building gets cheap, building the wrong thing gets cheap too — and you now do it faster and in greater volume. The famous claim that 64% of features are rarely or never used is weaker than people think, but the direction it points is the whole argument.

Navigate

How Engineers Can Sell Without Becoming Salespeople

Gartner's 2025 buyer survey found 61% of B2B buyers would rather never talk to a sales rep at all. That's not bad news for an engineer who has to sell their own work — it's the entire opening. Credibility does what a pitch can't.

Navigate

How Do You Find Out Whether Anyone Actually Wants What You're Building

Asking a friend "would you use this?" measures how much they like you, not whether they'd pay. Steve Blank, Eric Ries and Rob Fitzpatrick each built a method for the same problem: telling a real signal from a polite one before you've spent the months.

Navigate

The First Ten Customers Problem

Customer ten and customer one thousand are solved by completely different work. Paul Graham's advice to "do things that don't scale," Stripe's Collison installation, and Airbnb's Craigslist integration are all the same answer to the same early problem: there is no channel yet, so you have to be the channel.

Navigate

Will AI Cut Engineering Jobs, or Multiply Their Leverage?

Both answers are already true, for different people. The payroll data shows a 19% employment gap opening for 22-to-25-year-olds in AI-exposed jobs while experienced workers show no gap at all. That split is the actual story, and it is not the one either side of the argument is telling.

Navigate

What to Learn When AI Can Already Write the Code

The useful question isn't what AI can do — it's what it structurally cannot. Veracode ran 100+ models across 80 tasks and 45% of the output carried an OWASP Top 10 vulnerability, with larger models no better than small ones. That failure has a shape, and the shape tells you what to learn.

Navigate

Are Junior Developer Jobs Disappearing? What the Data Says

Entry-level hiring at the tech majors is down 65% since 2019 and Stanford measures a 19% employment gap for 22-to-25-year-olds. But an LSE paper covering 243 million hires found that when you control for remote work, the AI effect largely vanishes. The cause matters, because the two have opposite fixes.

Navigate

Cloud Cost Review Checklist for Founders Who Don't Have a Platform Team Yet

Your cloud bill doesn't have to be a surprise. A practical checklist to find waste, set guardrails, and understand what you're actually paying for.

Navigate
  • What Sitting All Day Actually Does to You

    The honest version is less alarming and more actionable than the headlines. WHO looked at the evidence in 2020 and declined to set a sitting threshold at all — but a million-person meta-analysis found something much more useful about what offsets it.