Monzo

Staff Engineer, Business Banking

Posted on Jan 25, 2023

👉 Please reference you found the job on Remote Software Engineering Jobs, this helps us get more companies to post here, thanks!

Job Details

Full Time
📍Remote
🇬🇧 United Kingdom
💵$173K-$223K
🧙Lead

About Monzo

At Monzo we’re aiming to build the control centre for peoples financial lives. We are always keen to hear from capable, creative engineers who want to help us accomplish that goal 🚀

We’re here to make money work for everyone and we're doing things differently. For too long, banking has been obtuse, complex and opaque.

We want to change that and build a bank with everyone, for everyone. Our amazing community suggests features, test the app and give us constant feedback so we can build something everyone loves.

We're focused on solving problems, rather than selling financial products. We want to make the world a better place and change people's lives through Monzo.

About our Engineering Teams:

We have around 200 engineers out of roughly 2,000 people in total - and we have big ambitions. There are many interesting challenges ahead, and we're happy for people to move between teams or to specialise, whatever you prefer. As an engineer here you'd be able to work directly with anyone across the company, and we run regular knowledge-sharing sessions so you’ll learn heaps about everything from how banks work to effective communication.

We contribute to open source software as much as possible. Our blog (https://monzo.com/blog/technology) is a good place to learn even more about what we do.

Equal Opportunity Statement

We are actively creating an equitable environment for every Monzonaut to thrive.

Diversity and inclusion are a priority for us and we are making sure we have lots of support for all of our people to grow at Monzo. At Monzo, embracing diversity in all of its forms and fostering an inclusive environment for all people to do the best work of their lives with us. This is integral to our mission of making money work for everyone. You can read more in our blog (https://monzo.com/blog/diversity-and-inclusion), 2021 Diversity and Inclusion Report (https://monzo.com/blog/our-2021-diversity-and-inclusion-report) and 2021 Gender Pay Gap Report (https://monzo.com/blog/gender-pay-gap-update-april-2020-and-april-2021).

We’re an equal opportunity employer. All applicants will be considered for employment without attention to age, ethnicity, religion, sex, sexual orientation, gender identity, family or parental status, national origin, or veteran, neurodiversity or disability status.

The Position

Our vision in Business banking is to become the “Financial control centre” for SMEs

We are aiming to do this by providing the features, funding and services that businesses need. We want to integrate seamlessly with their existing tools to make them more powerful, and automate painful manual processes for SMEs.

Building on the Monzo experience we want to adopt and enhance our existing features and provide new features that are specific to businesses. For example, building on top of Pots we provide businesses with Tax pots that allow them to automatically put money aside on every incoming payment to be used later in the year as they file their taxes. We also build new Business specific features like the Invoices that allow businesses to create, send and manage their Invoices directly via their account.

Our main challenges evolve around:

  • building features that allow Business to manage their account
  • enable multiple users to have access to and manage the same account
  • integrating with 3rd parties to connect to the tools that Businesses use, whilst maintaining customer data accurate and easily accessible
  • managing and maintaining accurate data for Businesses as they are more complex structures

Our teams have a wide remit working vertically across all the layers of the application from the apps to the backend systems, and also horizontally across operations and internal tooling to make sure we provide the best customer experience across the board.

Your day-to-day:

A Staff Engineer at Monzo is a technical (IC) leadership position. As a Staff Engineer in the Business Banking collective at Monzo, you’ll:

  • Work with the product leadership team of your collective to ensure we are making the right trade-offs across squads. You’ll use your keen sense of product market fit to do this.
  • Help your teams manage the trade-offs implied in shipping new product to market - balancing speed, polish and the need to learn what fits customers’ needs best.
  • Rally your team around a mission, objective or company priority, injecting urgency when needed or slowing down pace to make sure the right controls are in place.
  • Understand several work-streams across your group keeping enough context to regularly provide technical advice to other engineers.
  • Use your expert knowledge and experience to lead architectural discussions for the most complex systems in the collective. You’ll do this in order to arrive at solutions that are robust and optimal given the context.
  • Keep a high bar for technical excellence in the collective, through your own work, highlighting the work of others and calling out when things haven’t quite met the bar.
  • Foster a culture of quality within the collective. Proactively championing measures to test work, and get buy-in from stakeholders when this is not appreciated.
  • Pro-actively mentor, sponsor and up-level engineers.

What you’ll be using:

We rely heavily on the following tools and technologies:

  • Go to write our application code (there’s an excellent interactive Go tutorial here)
  • Cassandra for most persistent data storage
  • Kafka for our asynchronous message queue
  • Envoy Proxy for RPC
  • Kubernetes and Docker to schedule and run our services
  • AWS for most of our infrastructure
  • React for internal web dashboards
  • We also have two physical datacenter sites with actual cables to connect to various third parties

Logistics

  • 💰 Salary is around £140,000 - £180,000 plus stock options and other benefits.
  • ✈️ We can help you relocate to the UK.
  • ✅ We can sponsor visas.
  • 📍This role can be based in our London office, but we're open to distributed working within the UK (with ad hoc meetings in London).
  • ⏰ We offer flexible working hours and trust you to work enough hours to do your job well, at times that suit you and your team.
  • 📚 Learning budget of £1,000 a year for books, training courses and conferences.
  • ➕ And much more, see our full list of benefits below.

Requirements

You should apply if:

  • you have a track record of technical excellence, delivering resilient systems, behind user facing products.
  • you have technically led teams to solve complex product challenges, enabling them to manage trade-offs in order to deliver products that solve customer needs at scale.
  • you have strong experience working on the backend of a technology product.
  • you want to be involved in building a product that you (and the people you know) use every day.
  • you have a product mindset: you care about customer outcomes and you want to make data-informed decisions.
  • you’re comfortable working in a team that deals with ambiguity and have experience helping your team and partner team resolve that ambiguity.
  • you have experience building and developing distributed systems and writing resilient software
  • you have significant experience working with more than one programming language, at least one of which is strongly typed (Go, Java, C, Scala etc.)
  • you have experience coaching and growing senior and junior Engineers.
  • you think you’d enjoy the kind of work we’re doing.

Our Hiring Process

Interviewing for a new role can be an intimidating process, especially when these processes can vary from company to company. Not knowing what to expect during the interview process can make things even more stressful than they need to be.

At Monzo, we aim to default to transparency, meaning we are open both internally with each other and externally with our customers, board members, investors, etc. This includes our prospective hires! Our interview process is no exception: at Monzo, we hire for strengths and our interview process is designed to learn about those strengths. That means we want you to do well in your interviews! Doing well in your interviews helps answer two questions:

  1. Are you a good fit for our team and the role?
  2. Is working at Monzo a good fit for you?

While we test for different subjects for the various roles, our interview process for all roles basically consists of the same 5 steps:

  1. Recruiter call - 30 minutes
  2. Initial call - 30 minutes to 1 hour
  3. Practical task or project walkthrough - varies (no more than 4 hours)
  4. Technical or systems design interview - 1 hour
  5. Behavioral interview - 1 hour

Recruiter call 📞

Our hiring process typically starts with a 30-minute recruiter call to help guide you through the interview process. This is generally to provide a bit of background about Monzo and our mission, and to make sure the role you’re applying for is the right fit for you.

Initial call 💬

This is typically with someone on our team deeply involved with product development, like our Head of Engineering or Head of Product. Think of this as your elevator pitch but in a more casual and conversational setting: we want to learn about you!

We may ask some general questions but ultimately we’d love to hear about specific projects you’ve done recently. We want to know how they were implemented, things that went well or things that didn’t, and if you would have done anything differently. This helps us understand your approach to problems, and there are no right or wrong answers. This call is normally between 30 minutes to 1 hour.

Practical task or project walkthrough 📚

The task and time to complete will vary depending on the role, though not every role will have this step. This step may involve either a take-home task and a follow-up review session, a real-time coding interview, or a project walkthrough presentation.

For non-engineering roles, this task may be a case study of a real-life problem we solved (or need to solve) at Monzo, or a portfolio review of a recent project that demonstrates your end-to-end process and results. Having a take-home task allows you to think through your problem solving process at your own pace and without the pressure of being in a live interview. While we may allow up to a week to complete the take-home task, we generally timebox no more than 4 hours (usually less for most roles) to complete it. We want to be respectful of your time instead of having you spend your free time pursuing a perfect solution.

For engineering roles, this task involves a pair coding exercise where you will pair with an engineer or two using a programming language like Go, Java, Python, or C# to implement functions to satisfy an interface. You’ll be sharing your screen and driving the implementation, so we can see firsthand your understanding of your chosen programming language and data structures.

Regardless of which kind of task your role requires, these should not be considered speed tests or tests needing to be resolved with perfect solutions. The goal is to better understand your approach to problems and your thought process, even if it means having to make trade-offs, rather than a test of your technical knowledge.

Technical or systems design interview 💭

This 1-hour interview will again vary depending on the role but still focuses on your approach to solving problems.

For engineers, this will be a systems design based on a hypothetical problem using a virtual whiteboard. Like the take-home or pair coding tasks, our goal is to understand your reasoning for the choices you make about the design, including any trade-offs, rather than finding the perfect design or solution.

Behavioral interview 😀

At Monzo, we’re building a strong team focused on achieving our shared mission to make money work for everyone. As we collaborate with each other regularly, we want to make sure you’re comfortable working as part of a team while still being an independent self-starter. You may have noticed a recurring theme by now: we want to hear about your specific projects and what you personally contributed rather than what your team or colleagues did. You can also think of this interview step as a 1-hour trial of working with a couple of your potential teammates!

Remember that interviewing is a two-way street: this process is not just for us to interview you to find out if you’re a good fit for Monzo. It’s also a chance for you to interview us to see if Monzo is a good fit for you!

Be sure to get your tech ready for interviewing. Most or all of these interviews will be via Internet calls, so check your Internet connection ahead of time to make sure it is fast enough and reliable. We recommend using a laptop or desktop computer with a webcam and to set up in a quiet area for the best audio and minimal distractions.

We also recommend approaching questions using the STAR method: Situation, Task, Action, and Result. Talk about a specific situation with any background details, describe your task or responsibility, explain the actions you took, and share the results of your actions.

Most importantly, get excited! Come ready to tell us your story and come prepared with questions to uncover ours. We look forward to getting to know you!

Benefits

As well as awesome colleagues and engaging work, there are loads of ways we help Monzonauts do the best work of their lives. We often review and enhance them, but here’s a brief overview of the benefits we offer right now. If you’d like more information on any of them, just ask!

💸 Compensation

  • Your manager reviews your salary every year
  • Proactive pay increases to reflect growing responsibilities
  • Share options: the option to buy shares in Monzo at a later date

📆 Flexible working hours

  • We trust you to work enough hours to do your job well, at times that suit you and your team
  • If you’re in customer operations, you’ll have set shifts

🏡 Working from home

  • If you’re employed as a distributed worker, we’ll pay for any equipment you need to do your job
  • If you’re normally office-based, you can still work from home occasionally - as long as you have a good internet connection and a private, quiet space which allows you to do your best work
  • We’ve teamed up with Abellio to make season travel tickets easy to buy and more accessible by helping spread the cost of an annual travel ticket interest free over 10 months

🌴 Holiday

  • 24 days’ holiday a year, plus bank holidays - please use them all!
  • Or, you can opt out of bank holidays and take 32 days’ holiday whenever you like (Customer Operations staff get 256 hours holiday, equivalent to 32 days, and are scheduled to work bank holidays, but can still request annual leave if you’d like)
  • An extra 1 month’s unpaid leave every year
  • And we're piloting a sabbatical scheme where folks who've worked at Monzo for 4 years get 3 months of paid leave

⛑️ Health & Wellbeing

  • Paid sick leave for both physical & mental health
  • Health insurance via AXA
  • Additional health insurance through Medicash
  • Our Employee Assistance Programme offers a 24/7 confidential advice line for health, legal & bereavement support (and loads more)
  • Fresh fruit in the office (biscuits, quality coffee, tea and soft drinks too)
  • We’re a member of the cycle-to-work scheme

📚 Learning

  • Learning budget of £1,000 a year for books, training courses and conferences
  • Regular knowledge-sharing sessions with your squad, collective and discipline
  • A library of industry-related books that you can borrow at any time

💰 Pension

  • We’ll automatically enrol you into our pension scheme with Aviva
  • We offer a 4% employer contribution (Monzo pays you 100% of your salary, then 4% extra into the pension)
  • You’ll need to pay 4% too, and you can opt to pay more for the tax benefits!
  • You can opt out if you’d prefer not to have a pension at all

🧡 Family

  • Paid maternity, paternity, adoption or shared parental leave, if you’ve been with us for at least 13 weeks
  • 52 weeks of primary caregiver leave (6 months at 100% pay, 13 weeks at Statutory Maternity Pay, 13 weeks unpaid)
  • 3 months of secondary caregiver leave at 100% pay
  • Life insurance from Unum
  • All Monzonauts, including those based outside of the UK, will have access to fertility and family-forming health benefits via Fertifa.

👥 Community

  • Lunch on Monzo twice a week if you’re office-based
  • Regular company-wide socials, like sports day and a Holiday party
  • Smaller team lunches, dinners, breakfasts & other social get-togethers
  • Attendance is 100% optional - if you just don’t fancy it, there’s no pressure
Staff Engineer, Business Bankingat Monzo