News for hackers. Stuff that matters.
Re:Building a Bank with Go [video] by mattheath on Thursday April 13, 2017 @10:15AM (#14107081)
Hi, author here. Happy to answer any questions!
Re:Building a Bank with Go [video] by HighlandSpring on Thursday April 13, 2017 @10:35AM (#14107276)
Monzo sounds like a really fun bank to work!

I suspect the technological baggage in finance to be one of the main deterrents for young developers, the people who want to engineer modern, elegant systems and not go into the business of maintaining legacy spaghetti. I imagine you guys are attracting some really high end talent.

My questions are a little more about Monzo as a workplace in general as I will be applying for an internship with you guys.

Is there any Scala in your infrastructure? If not, was it a language that was given much consideration earlier on?

I see Kafka as part of your stack. Are stream processing frameworks like Samza, Spark and Flink found in your infrastructure?

How many developers? What would you estimate the backend/frontend split to be at?

Re:Building a Bank with Go [video] by asherwood on Thursday April 13, 2017 @10:47AM (#14107377)
This might help, Monzo published a blog detailing their technology stack a while ago -

https://monzo.com/blog/2016/09/19/building-a-modern-bank-bac...

Re:Building a Bank with Go [video] by HighlandSpring on Thursday April 13, 2017 @10:57AM (#14107476)
Thanks for the link!

I just wanna add that I think it's beyond cool that there's a bank out there that's publishing a dev blog and detailing their tech stack.

Re:Building a Bank with Go [video] by oblio on Thursday April 13, 2017 @11:48AM (#14108006)
Most of the other banks are too ashamed to publish their tech stack. After all, it's kind of hard to attract 25-30 year olds with technologies that had their last major updates before the candidates were born :p
Re:Building a Bank with Go [video] by lifty on Thursday April 13, 2017 @11:15AM (#14107668)
Hi there, I scrolled through the video and also read the blog post describing your stack and couldn't find anything about your data modeling and persistence layer. To me that is the most interesting part since you are a bank but at the same time you are using a micro service based architecture. Is there any information available about what database you use and how you manage your data?
Re:Building a Bank with Go [video] by mattheath on Thursday April 13, 2017 @01:02PM (#14108798)
We store the vast majority of our data in Cassandra, which gives us tuneable consistency and high availability given its master-less architecture. Those properties suit the rest of our architecture perfectly, though there are of course trade offs involved. Each service then has its own keyspace and is unable to access the data of other services.
Re:Building a Bank with Go [video] by bsaul on Thursday April 13, 2017 @03:59PM (#14110428)
I'd be much more interested in understanding how you managed to handle banking level transaction on a non rdbms system like cassandra, than how you coded some logic in go.
Re:Building a Bank with Go [video] by jucoo on Thursday April 13, 2017 @12:25PM (#14108411)
Thanks for the talk Matt. Lots of really good detail there. Working with both Go/Java and Microservices. One question I have is how critical is linkerd to having a dependable microservice mesh? Another question is what did you use for async services?
Re:Building a Bank with Go [video] by mattheath on Thursday April 13, 2017 @03:55PM (#14110406)
You're welcome! In our case linkerd is critical to this, as we've offloaded load balancing, circuit breaking, and retry policies etc to linkerd. If we hadn't then we would need to implement this functionality in multiple languages (though we mainly use go) and keep these in sync as we developed our platform, which from my experience is quite difficult. Using linkerd largely removes this from us, meaning we have a well tested method of inter-service RPCs, and we get free feature development ;) For async processing we're using Kafka, which powers the majority of our event sourced architecture.
Re:Building a Bank with Go [video] by dmix on Thursday April 13, 2017 @11:59AM (#14108123)
For some reason https://monzo.com/ crashes in both Chrome and Firefox before the pages loads on my linux desktop machine. Never seen anything like that before...
Re:Building a Bank with Go [video] by noir_lord on Thursday April 13, 2017 @12:21PM (#14108369)
Both browsers is unusual (I have the occasional Firefox crash sometimes though not on Mondo and not for a while).

It works on both here (FFDE and Chrome 58).