✍🏼 ซอฟต์แวร์ที่ดีคือ …?
อะไรคือปัจจัยสำคัญที่ชี้วัดว่า “นี่คือซอฟต์แวร์ที่ดี”? … คำถามที่ตอบไม่ยาก ซอฟต์แวร์ที่ดีคือซอฟต์แวร์ที่มีคนใช้ คำตอบที่ง่ายแต่ทำจริงๆยากไม่ใช่เล่น
อะไรคือปัจจัยสำคัญที่ชี้วัดว่า “นี่คือซอฟต์แวร์ที่ดี”? … คำถามที่ตอบไม่ยาก ซอฟต์แวร์ที่ดีคือซอฟต์แวร์ที่มีคนใช้ คำตอบที่ง่ายแต่ทำจริงๆยากไม่ใช่เล่น
ลองดูวิดีโอที่เล่าเรื่องเบื้องหลังการสร้างเฟสบุ๊ก แพลตฟอร์มแล้วได้แรงบันดาลใจดีมากครับ คิดเร็ว ทำเร็ว รับฟัง มีอำนาจตัดสินใจ ประหยัด และสร้างอิมแพค
การเขียนใหม่คือความเสี่ยงที่ยิ่งใหญ่ที่สุด เพราะเรากำลังจะโยนความรู้ที่สะสมมาในโค๊ดเบสเดิมทิ้งไป เรากำลังยื่นโอกาสทางการตลาดให้คู่แข่งที่กำลังไล่ตามมา และสำคัญที่สุด “เราจะมั่นใจได้อย่างไรว่าการเขียนใหม่ครั้งนี้จะดีกว่าเดิม?” ทางเลือกที่ดีกว่า …มีแน่นอน 👉🏽
มองดูซอฟต์แวร์ของตัวเองตรงหน้าแล้วรู้สึกสลดใจ มันเก่าเก็บ มันเทอะทะ มันไปต่อยาก … มันกระตุ้นต่อมอยากเขียนใหม่ให้ทำงาน เขียนด้วยเทคโนโลยีใหม่ เขียนด้วยไอเดียใหม่ๆ ดีมั้ย?
อาชีพในฝันของใครหลายๆคน ที่อยากสร้างอิมแพคในโลกใบนี้ผ่านทางทักษะที่เฉพาะตัวอย่างงานบริหารคน, งาน, เวลา, เงิน และผลลัพธ์ … งานนี้จะยากแค่ไหนกันเชียว?
การทดสอบการใช้งานซอฟต์แวร์ตัวใหม่ของเราไม่จำเป็นต้องลงทุนทดสอบและสัมภาษณ์คนเป็นสิบเป็นร้อย … ตัวเลขจากสถิติบอกเราว่าแค่ห้าคนก็พอแล้ว เหตุผลคือ …
ถ้ามีคนบอกว่า “ขยายฟ้อนท์ให้หน่อย” เราจะมองว่ามันคือความต้องการ (Requirement) หรือความต้องการ (Need)? การทำซอฟต์แวร์ที่ดีไม่ใช่การขยายขนาดฟ้อนท์แต่มันคือการแก้ปัญหาที่ว่า “รายงานตอนนี้อ่านยาก” มากกว่า
บริษัททั่วไปเริ่มจากซอฟต์แวร์ ไปต่อที่การตลาด และไปหาลูกค้า … เพื่อพบว่าสิ่งที่ตัวเองคิดว่าดีนั้นไม่ดีอย่างที่คิด อะเมซอนคิดต่างด้วยการทำงานย้อนหลังโดยที่ทุกอย่างเริ่มต้นจากลูกค้าก่อนเสมอ
กลยุทธ์การพัฒนาโปรดักท์แบบบนลงล่างคือแนวทางที่ถูกต้อง บนคือภาพใหญ่ ล่างคือรายละเอียด การโฟกัสที่แบ็กล็อกคือการลืมภาพใหญ่ ลืมวิชชั่นที่ตั้งไว้ … อย่าทำแบบล่างขึ้นบน
“ผู้หญิง 9 คนตั้งท้องใน 1 เดือนไม่ได้” คือประโยคสุดคลาสสิคที่เตือนใจเราว่าการเพิ่มคนทำงานเข้ามาในงานที่ซับซ้อนอย่างการพัฒนาซอฟต์แวร์นั้นไม่ได้ช่วยให้งานเสร็จเร็วขึ้นเสมอไป … ตรงกันข้ามเลย มันจะเสร็จช้าลงด้วยซ้ำ