My first 6 months as an Android Engineer and Backend Engineer at Monzo

Why I joined Monzo 👶🏻

My story with Monzo started a little over six months ago. I was at the hospital by my wife’s side as she was in labor giving birth to our first daughter. While she was taking a breather from her contractions, I checked my phone to see if I had missed anything important.

I had missed a call from Supreetha, a Monzo recruiter that I had been working with for a few weeks. She had some exciting news to share when I called her back. I had landed the job as Senior Android Engineer, and Monzo was ready to send me an offer.

Beyond all of the typical things that I look for in a company – great pay, vacation, medical benefits, exciting work – what actually gave me the confidence to say yes to Monzo was Supreetha’s response to me when I said I was at the hospital.

“Oh my gosh, congratulations! That’s amazing, well go take care of your family and we’ll catch up later.” She later checked in with me to ask how my family was doing, and sent me a congratulations gift before I even accepted the offer.

Being human and showing compassion was a big part of why I chose Monzo, and it’s something that I’ve seen permeate the entire organization.

The people are awesome ❤️

From day one of meeting my team members I knew Monzo was a different kind of organization. It was clear to me that not only do most Monzonauts believe in the company mission, they believe that treating people well makes a better work environment.

I’ve been treated with respect and dignity in every way – from compensation to calls for help when solving problems across teams. It’s an unfortunately rare thing to find, and I feel incredibly fortunate to have found it in Monzo.

Onboarding 🚀

Speaking of help, I was certainly glad to have it during my initial onboarding! Monzo is one of the largest organizations I’ve worked for, and suffice to say there’s a good amount to learn as a newbie.

Fortunately, everyone at Monzo was eager to help me get my bearings. While the US team is small, Monzo is a global company based in the UK, so a lot of the help was from the UK in the early mornings in my pacific timezone. Everyone in the Android team is super flexible when working with my schedule, and it is incredibly appreciated!

That said, it is something to keep in mind when considering working for a company like Monzo. It requires some extra planning around communication and negotiating meeting times. It hasn’t been a massive friction point besides the occasional PR review that gets lost in the time zone differences.

Since Monzo uses some proprietary tooling it took a few weeks to feel really good about the Android codebase.

Android at Monzo 🤖

I’d be remiss to not mention what it’s like to work with the Android codebase at Monzo. Let me put it like this: it’s rare for me to walk into a codebase and think there’s little I’d change. The Android team has done an extraordinary job of maintaining the codebase. It has a very logical structure, it’s flexible when needed, and we’re using most of the latest and greatest tech.

During the hiring process, it was certainly a plus to know that Monzo was an early adopter of Jetpack Compose. That immediately signaled to me that Monzo, despite its size, could be nimble when it made sense to be. Having now worked with the Compose setup here, I can confidently say that it was an excellent choice.

I think the only thing that I miss is using Kotlin Coroutines since Monzo uses RxJava. That’s a small gripe though, as the Android team here hasn’t gone crazy with their use of it. 

Backend at Monzo ⚙️

I’ve also gotten a chance to work with the backend a bit, and I was equally impressed. I know, it’s weird to see someone at a large organization like Monzo talk about working with multiple stacks in such a short amount of time. I’d say that’s telling of how relatively easy it is to start contributing in the different stacks.

I started helping on the backend a few months into my tenure at Monzo. I noticed we could use some extra hands building out the new services for US customers, and the existing backend devs were very welcoming.

One of the really impressive things about Monzo is our microservice architecture built on Go. You’d think that serving millions of customers would mean that the backend is difficult to work with, and even harder to deploy new services. 

I was pleasantly surprised when I was able to get a new service up and running within a few hours of learning Go and the Monzo tooling for deployments. After that initial setup, subsequent contributions were super easy to get going.

Another really cool thing that our backend enables is a dynamic UI system. The apps are configured to accept JSON that describes how to display simple UI like lists, interstitials, and other common UI elements. This makes it quite straightforward to roll out changes to the app without requiring app updates all the time.

I’m excited to be at Monzo! 😄

I’ve been at a few different kinds of organizations at this point in my 10-year career as a software engineer. I know what great leadership and poor leadership looks like. Monzo has incredible talent across the board.

Every reason why I joined Monzo has rung true throughout my first six months. I feel well-taken care of, and I’m excited about the future of the company. Like many up and coming companies, Monzo US has its growing pains, but the positives greatly outweigh the challenges.

The people are great, the tech for Android and Backend is top-notch, and the mission to make money easy to manage is something I can get behind. 

Come work with me and be part of our mission! We’re currently hiring Backend Engineers, Financial Crime Analysts, iOS Engineers, and Android Engineers to join our US team!