At QCon London 2026, Suhail Patel, a principal engineer at Monzo who leads the bank’s platform group, described how the bank has built a developer platform capable of shipping hundreds of changes to production every day.

Monzo operates on a microservices architecture of over 3,000 services, all written in a uniform style using a bootstrap generator based on standardised templates. Underlying infrastructure, such as Kafka queues, HTTP services, and telemetry, is automatically created by libraries, so engineers can focus on building business logic. Every service follows the same folder structure for database logic, queue-consumer logic, and an RPC layer.
Patel explained that implementation is no longer the bottleneck of the software delivery lifecycle. Where writing and iterating on code once took days, he explained that engineers can generate 10 or 20 candidate implementations within hours using modern LLM-based tooling and choose the best. He reframed the problem as how to preserve trust and compliance in a regulated environment.
"We are not freeing up more time in our calendar. We are taking on more work, and therefore there’s higher pressure to go and ship these changes."
— Suhail Patel, principal engineer, Monzo
Patel was unequivocal in stating that developer experience infrastructure is essential for moving quickly at scale. Monzo has backend engineering conventions, gathered into a structured "Backend 101" guide that every new engineer must complete, and these are also are encoded as LLM skills so that tools like Claude and Cursor can learn the bank's processes and conform to its service structure. The result is that generated code slots into the platform rather than diverging from it, drawing also on over 3,000 existing repositories as training examples. Non-engineering staff, such as product managers and designers, can now take small bugs, data questions or technical queries directly to an LLM rather than raising tickets for engineers.
Patel took some time to explain Monzo's "tenancies" system for running staging environments. Spinning up all 250 microservices locally with their own dependencies, plus machine learning models with their own Python environments, had historically been impractical, and he cited Soam Vasani of Stripe's talk at QCon London 2022, which explored provisioning remote dev boxes running a subset of the full Stripe stack so that local development felt seamless. Monzo took a similar approach but went further: engineers deploy only the services they have changed into an isolated "tenancy" namespace, backed by a dedicated data namespaces, while all other dependencies route through the shared staging environment. Every request carries a tenancy header so that the service mesh routes correctly in both directions. Acceptance tests now run inside their own tenancies as part of pull requests, removing the sequential scheduling and flakiness that had plagued them previously. Tenancies are really lightweight, with hundreds of them running simultaneously, and they can be provisioned and torn down in minutes.
Patel argued that quality checks must be high-signal and mandatory, not optional. When an incident occurs due to a code bug, he said the engineers immediately ask how to turn that bug into a CI check so it cannot recur. There’s a lot of effort put into ensuring that automated checks carry genuine meaning, and deliberately meaningful friction is built into bypassing them: doing so requires escalating to multiple people and justifying the exception through a formal process. LLMs are used here too: Patel described using Claude to write native Go AST-based syntax checkers. He also recommended Semgrep for cross-language static analysis, and noted that LLM tooling can run checks across the entire codebase and automatically raise pull requests for issues it identifies.
"You don’t need a fancy AI code review to go and solve all of your problems. Instead, spend the time and energy writing really high-quality CI checks."
— Suhail Patel, principal engineer, Monzo
For production observability, Monzo relies on Prometheus, Grafana and OpenTelemetry, feeding automated alerts that trace back to the specific change and team responsible. Patel acknowledged the cost plainly: "We pay a lot of money for all of this. But we are thankful every single time we have an incident and can identify the contributing factors." The bank also uses Pyroscope for continuous profiling, to detect performance regressions as they are deployed. Patel described a Slack channel called "Graph Trending Downwards" where improved performance is celebrated.
A further focus was the bank’s internal CLI, which engineers and non-engineers alike use to interact with microservices in production, manage service configuration and schedule operations, rather than resorting to notebooks or Postman scripts. The CLI includes a multi-party authorisation system that requires a second pair of eyes for sensitive operations. Patel noted that good CLI interfaces also reduce token consumption when LLMs invoke tooling: parsing a structured JSON diff via the GitHub CLI, for example, is far more reliable than asking a model to navigate a rendered web UI. "Even for LLMs, calling out to deterministic tools leads to a much more reliable result."
Fabien Deshayes, an engineering manager for Platform and Developer Experience at Monzo, covered related themes at QCon London 2025.
Patel closed with three principles: invest in composable, best-in-class tools to encode and automate organisational processes; invest in rapid iteration capabilities; and standardise on a small set of technology choices, continuously improving on those abstractions so that engineers and LLMs alike can focus on the business problem at hand rather than rebuilding infrastructure from scratch.
Suhail Patel presented "Move Fast, Don't Break Trust: Shipping Constantly with Humans and Beyond" at QCon London 2026.