Monzo (Software Engineer)

What attracted you to Monzo? *
Monzo positive and impactful mission.
I have lived in Asia country for 30 years and an online bank in Europe country that just work is one the of thing I envy most! I believe online banking is the future but I couldn't wait for the future in Asia countries anymore so I would just travel to the UK to join Monzo's mission.
 
What's the most interesting project you've worked on recently? *
Unfortunately, I don't have a link for you but one of the most interesting projects I have worked on is performance tuning on our Scala-based ad server.
Having 70k QPS (queries per second), performance is one of our business's most important metrics. Last year, our ad server failed to keep up with business growth:
  • server failed to respond ad within the allowed period and we miss the opportunity to show our ad
  • server costs increase as we failed to scale linearly with the traffic
Because of how critical the issue was we decided to form a small team to focus on this problem. The fix was relatively easy after we managed to find out the bottleneck through code profiling. It was the road to finding out the bottleneck that took us almost a week. We realize that our process was too slow and it wasn't easy to do profiling during that time. We didn't satisfy by just solving the problem and we decided to improve our system observability by introducing ad-hoc profiling.
Our idea was continuous profiling but profiling isn't cheap so we gave up. We are happy as long as we can profile our system when we need it (thus ad-hoc profiling). We wrote a script to automate the process of profiling and introduce it to our team members.
As a result
  • Our team members learn how to do profiling in the production
  • Latency dropped by 40% and hence the server costs
 
How would you find out if somebody is a good software engineer? *
Have different answers to technical challenges (whether it's just an implementation of one function or designing a large system) and manage to tell the pros and cons of each approach. I believe that's no one right answer since there are a lot of tools/libraries out there. So the ability to see through the trade-offs would not only lead to a better decision but also help team members to learn more.

Already purchased? Sign in here.