Software Engineer II
Title: Software Engineer II, Full-Stack Engineer
What you'll do
Ship user-facing features end to end — schema and endpoint through to the screen, the empty state, the loading state, and the error someone will actually hit.
Turn a loosely worded request into a written spec precise enough that an agent, or a new teammate, can build from it without guessing.
Review hard. Your own pull requests, your teammates', and the ones an agent opened. Catching a plausible-looking mistake before it merges is the highest-value hour of your week.
Write tests that would genuinely fail if the feature broke, and verify the change in the running product rather than trusting a green checkmark.
Work inside conventions the repository already encodes — house rules, lint rules, coverage thresholds, component patterns — and improve those conventions when they turn out to be wrong.
Roll changes out behind feature flags and watch what monitoring says afterwards.
Pick up whatever is in front of the team. Priorities here move; a bug in a service you have never opened is still yours if it is the most useful thing to fix.
What we're looking for
3–5 years building and shipping production web software that real users depended on.
Strong TypeScript. You use types to catch mistakes before they reach production, not just to keep the compiler quiet. You can work out what an unfamiliar type is describing, write one that matches the real shape of your data, and recognise when a simpler type would do the same job.
Real React depth. Component composition, where state should live, why something re-rendered, and how to test a component the way a user meets it.
Enough server-side experience to be useful on day one in NestJS or a comparable framework: dependency injection, request validation, REST design, and talking to a database, a cache and a queue.
You have worked in a large shared codebase and can find your way around unfamiliar code without waiting for a tour.
You have used AI coding agents on real work and have opinions about where they fail.
Clear written English. Specifications, pull request descriptions, review comments. In this workflow, writing is load-bearing rather than a soft skill.
Comfortable being told the priority changed — and able to put down something half-finished cleanly.
Nice to have
Nx, Turborepo or another monorepo toolchain.
Data-dense interfaces: virtualised or enterprise data grids, charting, filter builders.
GCP, Kafka, BullMQ, Prisma, MongoDB, Redis.
Feature flags and production observability (LaunchDarkly, Datadog, or equivalents).
Go-to-market, sales technology or B2B data as a domain.
#LI-SG2
#LI-Hybrid