Monzo's Speedy Android Development

Monzo have certainly been keeping themselves incredibly busy these past few months, a lot of work has been going into app development on both Android and iOS - I don’t really have much (anything) to say about the development of the latter but I know that there’s been lots of it :smiley:

I, like many others, get the weekly Monzo app update (beta users see updates a week ahead of non-beta users - you can read more about that and folllow along with releases here) :eyes:
When that sweet update notification hits it’s great! Except when you read the changelog and there’s only a few lines, maybe a bug fix and a new feature. But nothing ‘substantial’… At that point it’s very easy to think “Oh, is that it?” or “Hmm, where’s the rest of the update?!” well I’m here to shine some light on that :grin::speak_no_evil:


When you dig into the app or APK in more detail it, quite quickly, becomes apparent that there’s more going on than meets the eye. The app is frequently growing in size… So what? So although on the surface we might not be seeing new pages, fun features and glorious GIFs, we are receiving the underlying foundations which allow Monzo to snap their fingers :crossed_fingers::boom: and enable features for us! :smiley: Be that via an A/B test (where only a random subset of users may encounter the new / different feature) or via the famous Monzo Labs. :man_scientist:

There are certain features which simply cannot exist or be shown to exist in the app until they’re ready. For instance, as of the latest beta update (2.24.0 whilst writing this) I have finally seen the PayPoint logo inside the APK. It was imperative that Monzo DIDN’T push this asset (image) to production until contracts were all finalised and signed off with PayPoint else they’d likely be breaking an NDA (Non-disclosure agreement) :scream: That would’ve meant big trouble :sweat_smile:

Background development was obviously happening in order to support this feature - it just wasn’t available in the public releases (for the likes of me to teardown and find :innocent:)
There are other reasons why Monzo might not be showing off new features because they’re not ready for everybody or maybe there will be a roll-out at a specific time, etc. For instance, Tabs was in the app available for some about a week before it hit labs :smiley: It was 90% working but there were bugs here and there hence why it wasn’t just ‘there’ for everybody :slight_smile:


Let’s have a look at what the APK (Android App) has been doing since August, shall we :wink:

It’s:

  • Grown a few MB in size
  • Seen many changes up high & down low
  • Moved from bi-weekly to weekly updates
  • Seen a few redesigned pages (Settings & Account pages)
  • Begun to support the Android 9.0 APIs (API 28)
  • And much more!
Release Date Monzo Version APK Size
01/08/2018 Monzo_2.9.0 31,218 KB
09/08/2018 Monzo_2.10.1 31,294 KB
15/08/2018 Monzo_2.11.0 31,540 KB
17/08/2018 Monzo_2.11.2 31,540 KB
20/08/2018 Monzo_2.11.3 31,541 KB
21/08/2018 Monzo_2.12.0 31,835 KB
22/08/2018 Monzo_2.12.1 31,783 KB
23/08/2018 Monzo_2.12.2 31,783 KB
04/09/2018 Monzo_2.13.1 31,880 KB
06/09/2018 Monzo_2.14.0 31,853 KB
14/09/2018 Monzo_2.15.0 32,276 KB
14/09/2018 Monzo_2.15.1 32,275 KB
19/09/2018 Monzo_2.16.0 32,402 KB
26/09/2018 Monzo_2.17.0 32,542 KB
04/10/2018 Monzo_2.18.0 35,150 KB
11/10/2018 Monzo_2.19.0 34,943 KB
17/10/2018 Monzo_2.20.0 34,706 KB
25/10/2018 Monzo_2.21.0 34,886 KB
02/11/2018 Monzo_2.22.0 34,994 KB
07/11/2018 Monzo_2.23.0 35,222 KB
14/11/2018 Monzo_2.24.0 35,964 KB

Size%20vs%20App%20Version

There’s been a recent up and down with the sizes but it’s adding more features and that involves more than just lines of code :stuck_out_tongue_winking_eye: Plenty of assets and new libraries get added over an apps lifetime, let’s see what Monzo have been doing week-by-week! :eyes:

Looking at those charts the Android team is certainly no slouch :hot_coral_heart: There’s a constant strive for improvements and that’s made apparent by the string-diff between each new version.
(A string-diff being the additions & deletions of a specific file inside the decompiled Monzo APK, by no means is that the only file that gets updated between releases :wink: but it’s something easily readable and frequently updated)

Over the last few months of data that I have the Android team have been averaging 32 line changes (+/-) per week! (@emmag) :tada::tada: In just one of the many places which sees updates. I’ve tried to un-skew the data by removing any single change releases (typically quick patch/bugfix releases) but the number has reached as high as 106 :grin:


I eluded to changes which are neither seen nor heard, PayPoint was my example. Well I can share some fun little sneak peaks which haven’t hit @MakingMonzo yet :wink:

Paypoint: Not new news but it’s so close I can almost taste it :joy:
(Fun?) fact… I was the first Monzo user to see a decline with PayPoint on the 11th Nov 2018 :sunglasses: Nobody else can say that, hehe :stuck_out_tongue_winking_eye:

paypoint_logo

Here’s a really fun one for you… Committed Spending Pots! :eyes::honey_pot:
The logo exists, the pot background exists, it’s all about making it work on a slightly more technical level than a photo though :yum:

scheduled_payment_logos

I shan’t share all the fun little bits I’ve found - Can’t spoil all the fun :innocent: It’s awesome seeing what Monzo have been doing, I’m really excited to see the redesign on the Payments screen & I cannot wait for the new Summary Date Picker.

I’m immensely impressed with how much has happened in such a short amount of time. It’s basically been non-stop from my perspective, there’s even more that even I don’t know about yet… Feature flags, staff releases, etc. etc.

There’s always more to an app than meets the eye :wink: Just because we can’t see it doesn’t mean Monzo haven’t made it :grin:

Anyway, I’ll leave it there :wave: Enjoy!

49 Likes

Wow thanks for the great write-up! It’s nice to see these kinds of things, even though monzo hasn’t shared them with us yet as it means we can appreciate what they’re doing behind the scenes. Thanks @nexusmaniac and thanks Monzo!

4 Likes

Thanks for the dive in. Looking forward to seeing more of these in coming weeks

3 Likes

Meant seeing the features myself rather than necessarily new posts from you on the topic - do not want to come across demanding :wink: - but both welcome!

2 Likes

I interpreted it as the latter :joy: I’ll always post about interesting things I find so keep an eye out, there’s bound to be more in the future :wink:

7 Likes

Great write up man, enjoyed reading that! You tear it apart, so I don’t have to.

5 Likes

Brilliant post Marcus! Thanks for taking the time to put it all together. Very insightful.

9 Likes

Loving the slogan :joy:

Cheers guys! :blush:

1 Like

Great write up

2 Likes

Great work Marcus! :grinning:

And… Since you found it… Here’s a screenshot from my own Pots screen :slight_smile:

It’s one of my favorite features - it’s been live in staff builds for a while. There’s a few changes that are being made before we launch but it’s personally made a really significant impact on my finances.

28 Likes

I’ve got to ask. Any hint of release timeframe?

3 Likes

Really looking forward to that. Think that will be me going #fullMonzo

2 Likes

Oh boy, I am damn excited for this!!

5 Likes

I’m afraid I’ve not seen any hints of an ETA.

This MVP version that we’ve been staff testing is pretty basic, and there’s a few things that I believe need a ground-up rewrite so that it can be expanded on. So this particular version I believe isn’t shipping - but it’s being reworked from the ground up.

@Jami or @kieranmch may be able to provide some more info.

Even in this basic state it’s probably the thing that’s made the most meaningful difference to me in terms of the last few months worth of product updates.

13 Likes

Will Joint Accounts get it?

Pots in general have been re-worked to work with Joint Accounts and are going into staff testing soon (maybe next week) so I’d surmise that any future plan for Committed Pots would also be compatible with JA’s. That’s somewhat of a conjecture on my part and there may well be context that I’m missing though. I’m sure Product can pop up with some more context on this soon :grinning:

12 Likes

It would be really good if new releases don’t come until they can be for both personal and joint accounts.

3 Likes

No! I don’t want to wait :grin:

5 Likes

I’m not exactly sure if this can be the case for every upcoming feature (equally, not sure it can’t be), but at least as far as Pots go, I believe that was the idea behind the reworking of them.

We’ve got a bit more visibility now on the fact that for many people, the Joint Account will be their main account, so we certainly don’t plan on keeping any feature from the JA unless there’s a valid reason to. In some cases we might need to MVP on a single account to gather data before launching on JA, though.

7 Likes

Same. It’s been invaluable.

11 Likes