วันนี้อ่านบทความเรื่อง WhatsApp Only Needs 50 Engineers for Its 900M Users ?
มันน่าสนใจมาก ๆ สำหรับวงการพัฒนา Software
ผู้พัฒนามีเพียง 50 คน แต่สามารถสร้างระบบรองรับคนใช้งานกว่า 900 ล้านคนทั่วโลกได้
ทำไมไม่รับคนเยอะ ๆ ล่ะ ?
มาดูว่าเขาให้เหตุผลไว้อย่างไร ?
เหตุผลแรกคือ ภาษาโปรแกรมที่ใช้พัฒนา
ภาษาโปรแกรมที่ใช้คือ ภาษา Erlang
เชื่อได้เลยว่า มีคนรู้จักน้อยมาก ๆ
เนื่องจากไม่ได้เป็นภาษาโปรแกรมที่ได้รับความนิยมมากนัก
แต่มันเป็นภาษาที่เหมาะสมกับ communication อย่างมาก
รวมทั้งสามารถรองรับจำนวนผู้ใช้งานจำนวนมาก ๆ ได้อย่างสบาย
และสามารถ deploy ได้บ่อยตามเท่าที่ต้องการ
Erlang มันเป็นภาษาที่เกิดมาเพื่อ concurency
นั่นคือ มี process หลาย ๆ process ทำงานพร้อม ๆ กันได้
เกิดมาตั้งแต่ในยุค 80 แล้ว
สร้างโดยเหล่า engineer ของบริษัท Ericson สำหรับใช้ในวงการ telecom
โดยรวมแล้วเป็นภาษาที่สามารถ Scalalibity และ Reliability มาก ๆ
ดังนั้น WhatsApp จึงเลือกใช้งาน
มีอะไรอีกล่ะ ?
Erlang มันทำให้นักพัฒนาทำงานได้รวดเร็วขึ้น
… อย่างไรล่ะ ?
เราสามารถ deploy code ใหม่ ๆ เข้าไปได้
โดยระบบงานยังคงทำงานเช่นเดิม ไม่ต้องปิดระบบแต่อย่างใด
นั่นคือไม่กระทบต่อผู้ใช้งานเลย
มันเป็นข้อดีของการพัฒนา software อย่างมาก
เนื่องจากเราสามารถปรับปรุงระบบได้บ่อย ๆ และง่ายต่อการจัดการอีกด้วย
และแน่นอนว่า แนวทางการแก้ไขปัญหาจะเรียบง่ายอีกด้วย
ถึงจะมีข้อดีมากมาย แต่ก็มีข้อเสียเช่นกัน
นั่นคือ นักพัฒนาภาษา Erlang น้อยมาก ๆ
แถมไปเชื่อมต่อกับระบบอื่น ๆ ยากอีก
ตัวอย่างเช่น
ที่ Facebook เริ่มพัฒนาระบบ Chat ด้วย Erlang เช่นกัน
แต่เมื่อเวลาผ่านไปพบว่าเป็นระบบเดียวที่ไม่เข้าพวกกับระบบอื่น ๆ เลย
สุดท้ายก็ต้องสร้างขึ้นมาใหม่ด้วยภาษาที่คนส่วนใหญ่รู้จัก
และสามารถจัดการได้ง่าย
แต่ระบบของ WhatsApp ไม่ต้องทำการ integrate เข้ากับระบบอะไรเลย
ดังนั้น จึงไม่กลัวเรื่องของภาษา Erlang
ปัญหาในการหาพนักงานล่ะ ?
ทางทีมพัฒนาของ WhatsApp เชื่อว่า Erlang
หรือความกลัวต่อภาษา Erlang หรือ ความไม่รู้ มันไม่ใช่ปัญหาอะไร
ดังนั้น ในการรับคนนั้นต้องการคนที่ Smart และ เปิดกว้างในการเรียนรู้สิ่งใหม่ ๆ
ไม่จำเป็นต้องรู้ หรือ เชี่ยวชาญในภาษา Erlang อะไรเลย
แต่ต้องการคนที่สามารถเข้ามาในสัปดาห์แรก
แล้วสามารถทำการเรียนรู้สิ่งใหม่ ๆ
หรือสามารถเรียนรู้ได้อย่างรวดเร็ว
หรือสามารถปรับตัวได้อย่างรวดเร็วนั่นเอง
“If you hire smart people, they’ll be able to do that.”
และมีสิ่งหนึ่งที่ทาง WhatsApp ให้ความสำคัญมาก ๆ คือ
“The number-one lesson is just be very focused on what you need to do”
และยังบอกไว้อีกว่า
พนักงานส่วนใหญ่ไม่เคยเข้าร่วมประชุมเลย !!
เพราะว่า เอาเวลาไปทำอย่างอื่นที่สำคัญกว่า
น่าจะเป็นสิ่งที่ดีกว่านะ
“Keep It Simple”
สามารถดู VDO ได้เพิ่มเติมที่นี่ Keynote Panel – SYNC ISSUES