Staff Software Engineer
Job details
- Level
- Staff / principal
- Posted
- Nov 5, 2026
- Last confirmed open
- Nov 6, 2026
About this role
Maximum is AI infrastructure for banks, delivering an operating system purpose-built for the next century of banking. By embedding intelligence natively at the foundation, Maximum empowers banks to automate complex operations, surface real-time insights, and drive growth with innovative financial products.
The entire platform is engineered from the ground up to defend against modern, sophisticated threats protecting the bank and its customers.
About the Role
Maximum is building a core banking platform. Not a layer on top of a legacy core: the ledger, product, payments, card and compliance systems a bank actually runs on. As a Staff Software Engineer, you would own a domain service outright: its schema, its API, its workflows, its tests.
When a change touches twelve other services, you follow it into all twelve. You still write code, usually on the hardest path. We use AI coding agents heavily, and you would shape how the team uses them.
Responsibilities
- Own a domain service end to end: service boundaries, gRPC contracts, event schemas, and how data flows between them. Write the design docs that settle cross-service decisions, and run the reviews that test them.
- Set the patterns other engineers build on for workflows that survive partial failure: replay-safe, idempotent, and resumable from the step that broke.
- Own the correctness problems that span services: reconciliation, ordering across event streams, and data that must agree in two places.
- Plan and lead migrations and schema changes that cross service boundaries and run against live data.
- Set the team’s practices for AI coding agents: what they are trusted with, how their output is reviewed, and where they are kept out.
- Turn regulations, partner bank requirements and vendor specs into designs that several teams can build from.
- Raise the bar for Senior engineers through design review, code review and pairing on hard problems.
Qualifications
Must Have
- Several years shipping backend services in a statically typed language. Go preferred. Strong experience in Java, C#, Rust or TypeScript etc. is also welcome.
- Deep SQL experience: isolation levels and their failure modes, query plans under real load, indexing, and migrations planned across several services with zero downtime.
- You have led a distributed system that spans multiple services and you can explain the tradeoffs you got wrong.A testing habit, and an argument for why you test against real dependencies rather than mocks.
- You can take an ambiguous problem, find the real one underneath, and write it up so clearly that other engineers can start building.
- You have changed how a team works with AI coding agents, and you know where they fail in ways a reviewer can miss.
- Clear technical writing. Much of your influence will come from design docs.
Nice to Have
- Banking, payments, ledger, card or ACH experience helps. We can teach the domain. We would rather hire for judgment.
- Experience working with auditors, partner banks or regulators on a system you owned.