Live data from Hacker News

Why WhatsApp Only Needs 50 Engineers for Its 900M Users

wired.com

61–70 of 255 posts

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#61
post #17

> Why WhatsApp Only Needs 50 Engineers for Its 900M Users Answer: because sending short messages from A to B is basically a solved problem. There is even a programming language (Erlang) that was made with this application in mind. The prototypical "Hello World" example for Erlang is a messaging application.

Sure, the initial business case is "Send a message from A to B". But it's not hard to think of more things to do:

- What if A has a Nokia and B has an iPhone?

- What if you want A, B, and C to have a chatroom?

- What if someone starts spamming random people?

- How do we QA the thing for all these platforms?

- How about someone to keep the visual design fresh?

- What about a million corner cases like when someone is not online, someone sends a message that's too big, one of the servers goes down, and so on?

Etc.

You're right that the scope is not as big as some other apps, and that's what makes 50 a sensible number rather than 5000.

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#62
post #47
post #17

> Why WhatsApp Only Needs 50 Engineers for Its 900M Users Answer: because sending short messages from A to B is basically a solved problem. There is even a programming language (Erlang) that was made with this application in mind. The prototypical "Hello World" example for Erlang is a messaging application.

I'm sure you could do it in an afternoon, right? Just like anyone on HN can make a "basic CRUD app" like Facebook in a weekend. I really dislike the arrogant attitude behind these types of comments. Have you worked at WhatsApp? Do you have any idea what they spend their days doing, what their systems look like, what their requirements are like? WhatsApp have close to a billion users, 50 engineers and they manage to p…

I think the reality, as is often the case with two extremes, is somewhere in between.

Is this a simple 'solved' problem that anyone could do? No. But is it a super-human feet that only a handful of people could achieve? IMO, no as well. I think people in the latter extreme like to believe this as it's something they can aspire to - to say otherwise is to devalue their vocation. In the former camp, I think it's people pushing back against this too far in the opposite direction.

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#63
post #47
post #17

> Why WhatsApp Only Needs 50 Engineers for Its 900M Users Answer: because sending short messages from A to B is basically a solved problem. There is even a programming language (Erlang) that was made with this application in mind. The prototypical "Hello World" example for Erlang is a messaging application.

I'm sure you could do it in an afternoon, right? Just like anyone on HN can make a "basic CRUD app" like Facebook in a weekend. I really dislike the arrogant attitude behind these types of comments. Have you worked at WhatsApp? Do you have any idea what they spend their days doing, what their systems look like, what their requirements are like? WhatsApp have close to a billion users, 50 engineers and they manage to p…

>I'm sure you could do it in an afternoon, right? Just like anyone on HN can make a "basic CRUD app" like Facebook in a weekend.

Maybe the backend. I couldn't write a Blackberry Java app though which was WhatsApp's initial value proposition.

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#64
post #16

I don't quite understand the correlation. If the article was about how Whatsapp achieves scale and parallelism through functional languages, then fair enough. But I'm not sure it's fair to say they need 50 engineers, in part, because of the language choice ? Surely they need 50 engineers because their product is fairly simple and there's no need to have more engineers than features. Maybe the point it should have mad…

Well, isn't the language a hood enough reason? I think most seasoned game developers would be faster making a simple 3D game with Unity rather than just openGL + C ( mainly because with Unity you get soon much boilerplate-y stuff out of the box) The language and the amazing properties of failure tolerance could be productivity multipliers ( think of the times you've had to deal with catastrophic failures of software)

Nah, language alone isn't a good enough reason. It can contribute, just like every choice of tool can contribute.

You example, unity, isn't a language, but instead an off the shelf engine and toolchain.

But just like the development on an individual game seem less impressive technologically the more they rely on existing tech [1], admitting "Yeah, we forked ejabberd and rigidly fight scope creep" doesn't have the same ring as hyping up features in the runtime of a hip yet obscure programming language.

[1] Fun side note: If you watch the games press interviews devs, pay attention to when they ask about what engine they use. The press don't and viewers often don't know anything about software projects, so the devs are reluctant to to admit how much they've relied on off the self components for their admittedly-huge undertaking. Fun to watch the paid hype men try to talk around that.

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#66

If this isn't a counter to the inane recruiting requirements of "5 years with language X" I don't know what is: We don’t bring them in specifically because the engineer knows Erlang,” Mahdavi said on Monday. “We expect the engineer to come in and spend their first week getting familiar with the language and learning to use the environment. If you hire smart people, they’ll be able to do that.”

This reminds me of how we have been hiring engineers. We sit them down for a day with a fairly simple task (build a simple web or mobile app, about three screens with a basic data model) but we make sure to give them a language or framework they are unfamiliar with. They have Google, Stack Overflow, and other employees to use as a resource. It's a great way to get to know new hires while seeing how resourceful and in…

Does this interviewing methodology mean that you only hire devs that don't currently have a gig or have vacation days to blow on the possibility of getting a job with you?

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#67
post #17

> Why WhatsApp Only Needs 50 Engineers for Its 900M Users Answer: because sending short messages from A to B is basically a solved problem. There is even a programming language (Erlang) that was made with this application in mind. The prototypical "Hello World" example for Erlang is a messaging application.

[deleted]

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#69
post #65

I'll never understand why so many people prefered WhatsApp over anything that already existed previously and even worked better.

Because you can reach your friends and loved ones with WA. It is quite simple.

You can make a better IM with fewer people, when you don't have bloat like stickers market and celebrity chats. And don't try to push people to buy those stickers in every possible menu. (Hi Viber).

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#70
post #47

Earlier quoted context omitted.

I'm sure you could do it in an afternoon, right? Just like anyone on HN can make a "basic CRUD app" like Facebook in a weekend. I really dislike the arrogant attitude behind these types of comments. Have you worked at WhatsApp? Do you have any idea what they spend their days doing, what their systems look like, what their requirements are like? WhatsApp have close to a billion users, 50 engineers and they manage to p…

I believe that the line of reasoning of your parent still has merit. Erlang OTP was developed for telephony systems and has proven to be very reliable for distributed system. Messaging maps relatively nicely to Erlang OTP and as such Whatsapp are leveraging decades of research and work by Ericsson. Of course, this is how it should be: a good software infrastructure should save users time. Obviously, creating Whatsapp…

I think that indeed the important thing here. The article try to focus a bit too much on some intrinsic qualities of the language as if it was the silver bullet of scalability while the real lesson is that they used the right tool for the job.

Not so long ago, maintaining hardware that could support 900M user would have required an IBM scale company. A single developer today can develop, deploy and maintain a medium scale ecommerce site using infrastructure like AWS, a myriad of OpenSource solutions, plenty of services to handle payments, ... yet he will probably be using the same language than 15 years ago when 20 times more developers were needed to achieve the same result.

Post reply on HN