Hacker News new | ask | show | jobs
by BoumTAC 1661 days ago
I watch the other day, the Lex Fridman podcast with Kevin Systrom, founder of Instagram.

He talks about the scaling issue; they were using Django at that time and scale up to 50 millions users with a small team of developers.

I do not think a majority of companies have more than 50 millions users and absolutely need to go full microservices.

https://www.youtube.com/watch?v=3pvpNKUPbIY

2 comments

Micro-services are meant to scale the number of developers not the number of users. As the article points out they are meant to address organizational issues and they do - at a significant technical cost.
As I point out, they were a small team of developers before being bought by Facebook. And they still scale up to 50 million users.
Sorry, I misinterpreted what you originally wrote.
I don't think the number of users nor number of developers is really the deciding factor. Instagram, pre-Facebook acquisition, was a VERY simple application. It was literally just a chronological feed of (strictly square) photos with captions, you followed your friends, could explore hashtags, and not much more. Videos wouldn't even come for a few more years, let alone all the crazy stuff Facebook has hamfisted in there since.

For the scope of that app, it would have been absurd to use microservices. And I think most people who are in favor of microservices would say the same thing. To me, what microservices help with is when you're building an entire platform, rather than a single product. Not even necessarily on the scope of Facebook or Google, but I've worked at companies where one team might work on an app for managing social media accounts, and another app helps you optimize the SEO of your website. Neither of those things really want to own the concept of a user they both share, or deal with account creation and whatnot. So that's handled by a dedicated microservice.

Now, when you get to a size where you're building a platform, you're likely going to have lots of developers and users, but I don't think whether you use microservices is a function of either of those numbers, and they're just a side effect of the thing you've built.

But they COULD have been. Insta was 12 people when it got acquired. If they tried to be "cool" and did distributed systems, the team would have ballooned to at least 10x.