Why WhatsApp Was Able to Support 50B Messages a Day with 32 Engineers
11–20 of 31 posts
Re: Why WhatsApp Was Able to Support 50B Messages a Day with 32 Engineers
#12It was just a system designed from the start with efficiency in mind, rather than business flexibility. Almost any system can do the same if you start from the basics of "how many bytes of data do I need to move?", and "how many bytes of data can this ethernet cable/CPU transfer each second?" The end result is a system which is typically lower level and less flexible, but has much better money and hardware efficiency…
Re: Why WhatsApp Was Able to Support 50B Messages a Day with 32 Engineers
#13It was just a system designed from the start with efficiency in mind, rather than business flexibility. Almost any system can do the same if you start from the basics of "how many bytes of data do I need to move?", and "how many bytes of data can this ethernet cable/CPU transfer each second?" The end result is a system which is typically lower level and less flexible, but has much better money and hardware efficiency…
Node js is a surprisingly lightweight API layer for manipulating Linux IO
Re: Why WhatsApp Was Able to Support 50B Messages a Day with 32 Engineers
#14> They eliminated feature creep at all costs. Not anymore. I'm wondering how many engineers they have now to develop and maintain all the non-chat features.
They are still so much better than almost anyone else in the space at preventing feature creep. It is still a remarkably small and focused app.
Crypto shit aside, I think Signal is way more focused. Element/Matrix, too.
Re: Why WhatsApp Was Able to Support 50B Messages a Day with 32 Engineers
#15Re: Why WhatsApp Was Able to Support 50B Messages a Day with 32 Engineers
#16This seems like one of those listicle-style, content-free article, all markers of what is possibly a ChatGPT generated article.
Re: Why WhatsApp Was Able to Support 50B Messages a Day with 32 Engineers
#17My first question would be if the messages can be sent P2P or if they have to be passed through / stored on servers. If they can be sent and stored on the users devices, the server would only be a discovery service processing the occasional "Hey, I have a new IP" and "Hey, I want to send a message to X, please give me their current IP" messages. If the messages would have to be processed by servers, the system could…
You can't just send messages directly to end user devices' IPs unless there's no firewall or NAT in front of them. Good luck forwarding a port on a mobile device.
Re: Why WhatsApp Was Able to Support 50B Messages a Day with 32 Engineers
#18> They eliminated feature creep at all costs. Not anymore. I'm wondering how many engineers they have now to develop and maintain all the non-chat features.
They are still so much better than almost anyone else in the space at preventing feature creep. It is still a remarkably small and focused app.
Re: Why WhatsApp Was Able to Support 50B Messages a Day with 32 Engineers
#19Re: Why WhatsApp Was Able to Support 50B Messages a Day with 32 Engineers
#20If you look at it, much of the problem was already solved at a fundamental level: kernel/network developers have been thinking about how to efficiently send messages since forever. Jabber devs had thought about certain problems on top of that as well.
Put those together and don't add anything, you should be able to send a huge number of messages. Keep in mind it's not latency sensitive either, people can live with getting their messages 1s or late and with significant jitter.
That's not to poop on the success of WhatsApp, I do think it's a good product. But it's a the product that enables the engineering to stay focused.