We share not only our own experience in automating various services of our
virtual infrastructure provider , but also analyze western experience.
Today, we will briefly review the WhatsApp
case , which serves an audience of nearly a billion users by 50 engineers.
/
photo Breyten Ernsting CC
')
WhatsApp is a private commercial instant messenger for smartphones that allows you to send text messages, images, video and audio via the Internet. The client runs on Android, iOS, Windows Phone platforms.
Most recently, the company
announced that the number of messenger users has exceeded 900 million. This could not fail to please Mark Zuckerberg, whose company acquired the service for 19 billion dollars.
During the collaboration with Mark, the number of engineers on the team has increased from 35 to 50. At the same time, the user base has increased from 450 to 900 million. As it turns out, languages ​​like Erlang are great for solving such problems. In more detail, we are talking about a functional programming language with strict dynamic typing, it is intended to create distributed computing systems.
An interesting fact is that the prototype was created by Ericsson employees Joe Armstrong, Robert Virding and Mike Williams in 1986. And later, the company released the Erlang Public License - with the beginning of the era of instant messengers, Erlang opened a second wind.
Like any other tool, Erlang has its pluses and minuses. One of the main disadvantages is low popularity in a professional environment. This fact does not allow to instantly select new frames and limits the speed of scaling.
Perhaps, to some extent, such restrictions are a kind of advantage - the team remains small and well-structured. And the service management itself is confident that the shortage of Erlang-developers is not a big problem.
The relatively “compact” size of the team allows you to develop and incorporate certain values ​​and culture. In this case, the company is proud to say that its engineers are not taken to be distracted by meetings and spend time on personal meetings.
PS Materials on how we improve our own virtual infrastructure service
1cloud :