Skip to content
death.tech home

rolessenior-software-engineer

Senior Software Engineer

Own whole systems, not tickets. Design them, ship them, run them. Python and TypeScript on AWS serverless, regulated data, and code that has to be right.

  • london · tue–thu in office
  • engineering
  • permanent

About the role

When someone dies, their family inherits a mountain of admin. A will is the single most useful thing that makes it smaller, but only if it’s correct, current and actually says what the person meant. That’s the bar our systems have to clear, every time.

As a senior engineer, you’ll take services from an empty repo to production and keep owning them once they’re there. You’ll make the architecture calls, write down the trade-offs, and spot the problem worth solving before anyone’s raised a ticket for it.

If you’d rather be handed the responsibility than shielded from it, you’ll fit right in. You’ll have real say in how things are designed, and you’ll be the person others come to when the domain gets strange.

The team

Engineering is small but mighty, and growing. You’ll work alongside Product, Design and the legal specialists who know every edge case by heart. We’re growing, and you’ll join the team where you’ll make the most difference as roles fill. You’ll have a say in where that is.

We work in small, stable teams that own a product area end to end, from the first conversation with legal to the alert that fires if it breaks. Nobody hands you a ticket and walks away. Teams decide how to solve the problems in front of them, and often which problems are worth solving at all. Decisions are written down, reviewed kindly and revisited when we learn something new.

We’re AI-native. Frontier models, best-in-class agentic tooling, and nobody counts tokens. That pushes the job away from boilerplate and towards the parts that need a person: architecture, judgement, and getting the detail right. We ship to production 20+ times a day across 7+ services.

What you’ll do

Most weeks are a mix of building, reviewing and untangling. Some of the work you’ll pick up:

  • Take features and whole services from design doc to production, then own them there.
  • Make the architecture decisions: service boundaries, data models, which trade-offs we’re prepared to live with. Write them down so the next person understands why.
  • Model tricky rules with legal specialists, and write the tests that prove you got them right.
  • Direct agents well. Specify precisely, review hard, and know when to throw the output away.
  • Mentor engineers and raise the bar in review, without becoming the bottleneck.
  • [ROLE-SPECIFIC RESPONSIBILITY]

What you’ll ship in your first 90 days

  • Week one: first PR in production, paired with someone who knows the codebase.
  • Write and land your first design doc, for something the team hasn’t decided yet.
  • Own a service end to end, including its alerts, its roadmap and its rough edges. [e.g. SERVICE / AREA]
  • Pick up something nobody asked you to, and ship it.

What we’re looking for

We care more about how you approach problems than a list of keywords. That said, here’s what tends to make someone successful in this role.

You’ll need

  • Solid experience building backend systems in production, and the scars from running them.
  • You’ve owned architecture decisions and lived with the consequences.
  • Strong opinions on testing, loosely held on frameworks. We’re language-agnostic: what matters is that you can pick up whatever the problem needs and be good at it.
  • Hands-on with agentic coding, and a clear view of where it helps and where it doesn’t.
  • [MUST-HAVE]

Nice to have

  • Serverless on AWS: Lambda, API Gateway, the lot.
  • Experience in a regulated domain: legal, financial or health.
  • You’ve built something from nothing, at a startup or on a side project you took seriously.
  • [NICE-TO-HAVE]

What you’ll work with

stack.toml
languages = ["python 3.12", "typescript"]   # typed, everywhere
backend   = "fastapi"
frontend  = "next.js"
runs_on   = "aws lambda"                    # serverless
data      = "postgresql"
infra     = "terraform"
quality   = ["pytest", "ruff", "mypy"]
review    = ["humans", "greptile"]
agents    = ["claude code", "whatever you're fastest in"]
observe   = ["cloudwatch", "sentry"]

The honest bits

Every codebase has them. Better you hear it from us.

debt
Part of our estate is a PHP service we’re migrating off. You might be the one who retires it.
specs
Plenty of problems arrive without one. Writing it is part of the job.
regs
Regulated, sensitive data. Some changes need a second pair of eyes from legal, and that’s on purpose.
pace
We ship often, but “move fast and break things” isn’t an option when the thing is someone’s will.

You’ll probably enjoy this if

  • You like turning messy real-world rules into clear, well-tested models.
  • You’d rather ship something boring and correct than clever and fragile.
  • You can talk about death plainly. Our users are planning for it or living through it.

Don’t tick every box? Apply anyway. We hire for how you think, not a checklist.

What we offer

Listed, not teased. If something matters to you and isn’t here, ask in your first call.

holiday
27 days + bank holidays + your birthday
pension
3% contribution
working pattern
Hybrid. In the office Tuesday to Thursday at Monument, London
contract
Permanent
learning
Time carved out for it, plus budget agreed case by case
a will, on us
A free will for you, and a discount for friends and family
tools
Whatever makes you fastest. Frontier models, agentic tooling, no token budget.
ownership
Real decisions from week one. You’ll be trusted with the call and backed when it’s hard.

How we’ll get to know each other

Four stages, about two weeks end to end. You’ll hear back within 48 hours of each one, whatever the outcome.

  1. Intro call30 min · video

    A relaxed conversation with the hiring manager about what you’ve worked on and what you’re looking for. Ask us anything.

    you’ll meet the hiring manager · nothing to prepare

  2. Meet our People team30 min · video

    A conversation about how you like to work, what you need from a team to do your best work, and the practical stuff: start dates, adjustments, anything you’re unsure about.

    you’ll meet our People team · nothing to prepare

  3. Pairing and design~2.5 hours · on site

    Two parts, with the people you’d work with. First, pair on a real-shaped problem on your own laptop with your own tools. Look things up, use agents, think out loud. Then sketch a system together and talk through the trade-offs. We’re interested in how you reason about correctness, failure and change, not in a single “right” answer. No take-home, no trick questions.

    you’ll meet the team · bring your laptop, we’ll send setup notes in advance

  4. Final conversation45 min

    Meet our founder. Talk about where Octopus Legacy is going, where you’d fit in it, and anything you still want to know. It runs both ways.

    you’ll meet our founder · bring your questions

  5. Decisionwithin 48 hours

    A clear yes or no, with written feedback either way. If it’s a yes, we’ll talk through the offer on a call. No exploding deadlines.

    from the hiring manager

About Octopus Legacy

[COMPANY BOILERPLATE: who Octopus Legacy is, what it does for families, and how it relates to the wider Octopus group. Approved wording from brand/comms.]

We’re committed to building a team that reflects the families we serve. If you need any adjustments at any stage, tell us and we’ll make them, no explanation needed. [EQUAL OPPORTUNITIES STATEMENT, approved by People]

Other open roles

All roles

We’d like to use PostHog to see how this site gets used. It sets cookies, so it stays off until you allow it; everything else works without. Privacy notice