Monzo Staff Weekly Q&A - Kieran McHugh (Backend Engineer)


(Kieran McHugh) #21

Let’s get this one out of the way first.

Cats
I like kittens and I am indifferent to fully grown felines :slight_smile: I am not much of an animal person in general though, and haven’t got any pets myself!

Pineapple on Pizza
I am of the belief that Pizza is an entirely human construct and it is therefore quite silly to impose rules about what can and cannot go on it. I personally don’t like any form of cooked fruit, so I am not proud to say that I will often order or buy a Hawaiian and take off all the pineapple :see_no_evil:


(Brexit Day Is Gonna Be Shamayzing.) #22


(Kieran McHugh) #23

Hi Josh!

Piano buddies! I have played piano for a long time, but I have only ever done theory grades, not practical ones. That being said, I could probably have a good go at some of the higher grade exams. My favourite piece to play is Canon in D (here is me playing it).

I did my undergraduate and Masters’ degrees in Computer Science so I have had exposure to lots of languages (probably 15+). I would say I “know” Python and Go, the rest I would be heavily dependent on the docs.

I have recently moved to VSCode, and really loving it. I could not live without iTerm with ZSH and Powerline extensions, and PasteApp for Mac (for all that copy-pasting from StackOverflow :upside_down_face:).

I am super excited to totally reinvent bill splitting. I think only a bank can do this well, and none of them are at the moment.


(Kieran McHugh) #24

I hate the fact that my email has no knowledge of my calendar and vice versa. Google’s attempt at this has been OK but there’s still a long way to go. When I book rail tickets, dentist appointments, hotels,… I want all of this in my calendar. I wonder if IFTTT can be used to help :thinking:

I also hate filing expenses. So much that I joined a challenger bank and built an IFTTT integration to make the process less painful :smiley:


(Kieran McHugh) #25

A stack of hot coral Monzo cards, each with milled razor sharp edges, and a catapult :credit_card:


(Kieran McHugh) #26

Not at all. It forces you to think in the “Go way”. As long as you don’t try to go against the grain, you should have a fairly painless experience. Go is a super nice language, very simple, very easy to learn, and easy to understand. For our use case, it is a very good choice of language!


#27

They got any golden tickets for such a bank? sounds mega exclusive and clever.


(Hugo Vieira) #28

Are you literally me ? :joy:

Anyways, what do you enjoy doing the most in the Backend world?


(Kieran McHugh) #29

As you correctly point out, at Monzo we have this thing called “Monzo Time” which is a chance to explore new projects without needing to get any approval up front. It is always a personal goal of mine to produce something that can be demonstrated as soon as possible, so that it can be “sold” to the rest of the company. I found that people loved IFTTT right from the outset, and it wasn’t difficult to get everybody’s support.

We do have a Product Council to get formal approval for projects, and they were super keen on this too. That being said, Product Council do not tell people what to work on. Engineers and product managers usually agree on priorities very informally, neither party tells the other what to do. The flexibility we get is one of the best things about working here.


(Kieran McHugh) #30

Most of the stuff we’re working on actively is on our Product Roadmap or the “Making Monzo Better” (“burnification”) list. I am working on both of these and recently rewrote our Payee service to lay the groundwork for an amazing Payee management system on Monzo. Some of the stuff I’m working on now is related to making Monzo a great experience for salaried users. I’m also improving our internal tooling to allow anyone (even non-engineers) to create native content for our App. Most of this internal stuff doesn’t appear on the roadmap as it’s groundwork.

PS. It’s called burnification because we originally had Bankification, which concluded. Somebody proposed “Bankification 2: Bank Harder” for the next phase but we eventually made a “burn list” and settled on “burnification” :slight_smile:

PS 2. Switch your salary to Monzo!! :slight_smile:


(Josh Price) #31

VSCode is awesome. I moved to it around 6 months ago and have never looked back. I love iTerm and ZSH. I also use Oh My Zsh too. :+1:


(Kieran McHugh) #32

It is, and I feel very fortunate to be able to work in one of the very few banks in the world brave enough to push forward with new technologies. It feels very rewarding when the industry notices your work and starts to implement it too. It’s like… “we’ve done the right thing”.


(Kieran McHugh) #33

I use the Apple Magic Keyboard and Trackpad at work. I am one of the few people who loves the new Macbook keyboards with butterfly switches :slight_smile:


(Kieran McHugh) #34

To be honest, it would not look too different from our current trajectory. I am fully behind our current priorities, bringing our functionality in line with that of other banks. We are making really good progress on this, and it is starting to pay off for our users.

At a team level, we generally do not plan concretely more than a quarter in advance because priorities change all the time. Features within the next year… I personally want to see more Monzo with Friends (bill splitting, group tallies, joint accounts) and deeper integration with retailers to enrich your Monzo feed with receipts, maps, and other context.


Pay my buddy in-app
(Kieran McHugh) #35

Ha, this was just a passing comment because everyone here is insanely clever and nice. Many engineers here did not go to university at all, but they are experts in their field, and I am learning a tonne from them every day.


(Kieran McHugh) #36

I really want to see transactions enriched with data from shops. We started prototype work on this almost 3 years ago at a hackathon - write up here. Watch this space!


(Kieran McHugh) #37

I applied for an internship at Monzo about three years ago, but was rejected :grimacing:
So I joined Skyscanner as a graduate and worked there for a while. I applied to Monzo again (this time for the full Backend Engineer role) and got the job. Perseverance pays!

I did just pass probation! This arrangement is pretty standard.

Thank you! I never imagined I would get the job and it would have been easy to give up after the first try!

I did know the team from early events and my first application process, which obviously helps. Attending Monzo events is a great way to meet people and learn what the expected qualities of Monzo engineers are. I do have an MEng in Computer Science and real experience at Skyscanner, both of which helped.

I now interview candidates at Monzo, and I’m looking for people who can explain things clearly and simply, can teach me things I don’t know, and deeply understand the technologies they say they have used on their CV.

Haha, I think I need to hit the gym a bit more first!


(Kieran McHugh) #38

My favourite part is designing services… looking at the real world and deciding how best to model it. We use Cassandra for our data storage, which works very well for our use case, but it also imposes more constraints than a typical relational data store, and there are more things to consider. That has been quite a transition for me.

I also love integrating with third parties, reading their APIs and implementing them. So IFTTT was literally a dream.


(Kieran McHugh) #39

I took a book “PHP & MySQL for dummies” out of my school library when I was 12 or 13. I was the first person ever to take it out of the library.

I read the book cover-to-cover and the rest was history :smiley:

Studying Computer Science at university felt natural to me, and I never really remember making that decision. It just sort of happened. I appreciate this isn’t the case for everyone, though!


(Simon B) #41

Another brilliant Q&A - thanks so much @kieranmch!!! :grinning:

We’ll be back next week… with a surprise :wink: