Skip to content
Production LLMOpsBuild vs buy across the stack

Lead · 6 chapters

Build vs buy across the stack

Gateway, vector store, evaluation platform, observability, agent framework

Buying is not a shortcut when migration, integration, and on-call costs create the real lock-in; poor choices turn into operational debt.

Read these first

What you will know

  • Decide build-vs-buy for one layer with a written rationale

    The record should name requirements, alternatives, assumptions, and a trigger for changing course.

  • State the exit cost of a bought component before buying it

    Include data migration, API rewrites, dual running, contract termination, and staff ramp time rather than treating portability as a slogan.

  • Identify the layer where building is genuinely justified

    A credible exception usually reflects a differentiating workload or control requirement, not discomfort with an existing product.

  • Revisit a past decision that has aged badly

    Compare the original assumptions with current spend, incidents, adoption, and switching options, then record the lesson.

  • Calculate the total cost including operations, not just licence

    Count implementation, integration, upgrades, support, on-call, failure impact, and vendor egress over a stated horizon.


Chapters

  1. 1

    Six engineer-weeks is the smallest term in the comparison

    £80,000 a year against six weeks at £10,000 per engineer-week looks like £60,000 versus £80,000, and that build figure covers reaching parity once. It excludes on-call, upgrades, integrating each new model and provider, the second engineer who has to learn a system they did not design, and the product work those weeks displace. Cost both options over a stated horizon with operations inside each.

  2. 2

    A gateway takes a weekend and then takes years

    Routing, key management, retries, rate limiting, and cost attribution are simple requirements and a weekend of work. The version that survives an incident — partial stream failures, provider-specific error semantics, quota accounting under retries, per-tenant attribution — is the product, and the distance between the two is years of edge cases nobody writes into a requirements list. Estimate the second version, because that is the one you end up owning.

  3. 3

    The contract ends in a month; the dependency does not

    Month-to-month with a published API measures how quickly you may stop paying, not how long it takes to stop depending. A managed vector database holds a corpus embedded with one model, an index tuned over months, and prompts and rerankers written against its filtering and query semantics — none of which an export carries. Covers separating lock-in from switching cost and writing the exit cost down before signing.

  4. 4

    Fighting an abstraction is a cost, not a differentiator

    'The available options do not fit how we think about the problem' describes the ordinary experience of using an abstraction and predicts nothing about differentiation. The test is whether the constraint on workload or control is genuinely yours, and whether you would still own the thing in three years once its author has moved on. Covers choosing the one layer a small team should build, and arguing the case against your own choice.

  5. 5

    A record with no assumptions cannot be reopened

    'We chose Vendor X because it is the industry standard and the team already knows it' records a conclusion and nothing else: no requirements, no alternatives weighed, no assumptions, no trigger for revisiting. Two years on, nobody reading it can tell whether it still holds. Covers what belongs in the record — the numbers that justified it and the conditions that should reopen it — so a later review has something to compare against.

  6. 6

    Self-hosting a pipeline nobody queries migrates the waste

    Observability spend is 4x the forecast, roughly 60% of ingested traces come from a batch pipeline nobody has ever queried, a staff engineer has a self-hosting proposal ready, and the platform lead who bought the tool is defensive. Self-hosting stores and queries junk at a lower unit price: the economics never inverted, the usage was never examined. Covers reopening a decision against its assumptions and running the review without a fight.

External resources