擁有9 億用戶的WhatsApp,工程師只有50 人

WhatsApp 是全球最受歡迎的聊天軟件,用戶數量達到9 億。在WhatsApp 成長過程中,最讓人驚奇是事情是,這件壯舉是由一個小團隊完成的。在公司被Facebook 收購之前,它已擁有4.5 億用戶,而公司的工程師只有35 名。如今,它的工程師數量也只是增加到了50 名。

WhatsApp 很少談論技術方面的事情。不過,在最近的一次科技聚會上,WhatsApp 的軟體工程師Jamshid Mahdavi 談到了公司的一些不尋常做法。比如,公司在構建自己的網路服務時,使用了一種不常見的編程語言:Erlang。這種語言並沒有被許多程序員採用,但是,它非常適合WhatsApp 的服務,一種大量用戶進行交流的服務,而且,它讓工程師快速部署新的代碼。 Mahdavi 說,技術只是一方面,更為重要的是態度問題。
據Wired 網站報導,Mahdavi 於兩年前加入WhatsApp。他發現,公司對待技術的態度是他未曾見過的。一方面,這是因為公司使用了Erlang 和FreeBSD 操作系統,另一方面,公司努力維持一種非常簡單的運作方式。 “在構建大規模的架構上,這是一種完全不同的方法,” 他說,“以極簡主義的方式,只解決那些急需解決的問題,這讓我大開眼界。”

WhatsApp 使用Erlang 的原因是,它擅於處理並行的任務。當互聯網服務覆蓋到更多人群,必然需要同時處理人們的各種需求,於是,此類語言變得很有吸引力。在開發反垃圾郵件系統時,Facebook 就使用過另一種小眾語言Haskell。與Haskell 相同,Erlang 也是誕生於80 年代。它由瑞典易立信的工程師開發,用於高速的電話網絡。

“他們不是首先發明語言,然後搞懂它的用途,而是發明了一種解決特定問題的語言,” 英國的一位Erlang 專家Francesco Cesarini 說,“當時的問題是大規模系統的擴展性和可靠性,那時候,電話網絡是唯一顯示出此類特性的系統。” 從某種程度上說,WhatsApp 就是替代了電話服務,因此,它也需要同樣的“擴展性和可靠性”。

當然,這種語言也有一些問題。一是懂Erlang 的程序員比較少,二是它可能與現有系統不兼容。 Facebook 曾用Erlang 編寫了Facebook Chat,但是,它後來又重寫了軟件,以便更好兼容公司的其它系統。對於WhatsApp 來說,這些似乎不是什麼問題。它不需要考慮與現有系統的兼容,而且,Erlang 程序員稀少也沒什麼關係。

“我們的招聘策略是,找到最好的、最聰明的工程師。我們不會因為某個人了解Erlang 就聘用他。” Mahdavi 說,“我們希望,當工程師進入公司後,花上一周時間去熟悉這種語言,然後學會使用它。如果你僱傭了聰明的人,他們能夠做到這一點。”

圖片來自 tiempo

出處:愛范兒

作者:積木

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

Loading