69 คะแนน โดย xguru 2023-01-30 | 14 ความคิดเห็น | แชร์ทาง WhatsApp
  • ผมเองก็ยังไม่ได้รู้อะไรมากนัก: พวกเราเป็นคนที่ต้องเรียนรู้ไปตลอดชีวิต
  • สิ่งที่สำคัญที่สุดในการพัฒนาซอฟต์แวร์คือการสร้างสิ่งที่จำเป็นจริง ๆ
  • วิศวกรซอฟต์แวร์ที่เก่งที่สุดคิดแบบนักออกแบบ
  • โค้ดที่ดีที่สุดคือโค้ดที่ไม่มีอยู่ หรือโค้ดที่ไม่ต้องคอยดูแลรักษา
  • ซอฟต์แวร์เป็นเพียงเครื่องมือเพื่อไปให้ถึงเป้าหมาย
  • บางครั้งก็ต้องหยุดลับคมเลื่อย แล้วเริ่มตัดอะไรสักอย่างได้แล้ว
  • ถ้าไม่เข้าใจให้ดีว่าอะไรเป็นไปได้บ้าง ก็ออกแบบระบบที่ดีไม่ได้
  • ทุกระบบสุดท้ายแล้วก็ต้องน่าหงุดหงิดอยู่ดี ดังนั้นยอมรับและก้าวข้ามมันไป
  • ไม่มีใครถามคำว่า "ทำไม" มากพอ
  • เราควรทุ่มเทกับการหลีกเลี่ยงโปรแกรมเมอร์ระดับ 0.1x ให้มากกว่าการตามหาโปรแกรมเมอร์ระดับ 10x
  • ความต่างที่ใหญ่ที่สุดระหว่างวิศวกรอาวุโสกับวิศวกรรุ่นน้อง คือการมีมุมมองของตัวเองต่อเครื่องมือหรือวิธีเขียนซอฟต์แวร์หรือไม่
  • ผู้คนไม่ได้ต้องการนวัตกรรมอย่างแท้จริง
  • ข้อมูลของคุณคือส่วนที่สำคัญที่สุดของระบบ
  • จงมองหา technical shark (เทคโนโลยีที่อยู่รอดมาได้นานแม้จะมีการเปลี่ยนแปลงอย่างรวดเร็ว)
  • อย่าสับสนความถ่อมตัวกับความไม่รู้
  • วิศวกรซอฟต์แวร์ควรเขียนอยู่เป็นประจำ
  • รักษากระบวนการให้กระชับที่สุดเท่าที่จะทำได้ (Lean)
  • วิศวกรซอฟต์แวร์เองก็ต้องรู้สึกถึงความเป็นเจ้าของเหมือนมนุษย์ทุกคน
  • ไม่มีทางรู้ได้จากการสัมภาษณ์ว่าผู้สมัครจะเป็นเพื่อนร่วมทีมที่ดีหรือไม่
  • พยายามสร้างระบบที่เล็กลงเสมอ

สำคัญ

  • ตอนต้นบทความนี้มีคำเตือนแบบนี้อยู่

    เวลาจะอ่าน "บล็อกที่เต็มไปด้วยคำแนะนำ" คำแนะนำส่วนใหญ่มักขึ้นอยู่กับบริบท แต่หลายครั้งคำแนะนำเหล่านั้นไม่ได้ถูกส่งต่อมาพร้อมบริบทนั้น
    คำแนะนำที่ไม่เข้าใจบริบทนั้นไร้ความหมาย หรืออาจถึงขั้นเป็นโทษ

  • ผู้เขียนจึงอธิบายบริบทของตัวเองไว้เล็กน้อยว่า
    • ครึ่งแรกของอาชีพทำงานในบริษัทขนาดเล็ก/สตาร์ทอัป ก่อนจะย้ายไปบริษัทที่ปรึกษาและทำงานฝั่งธุรกิจขนาดใหญ่
    • จากนั้นก็ก่อตั้ง SimpleThread และขยายจาก 2 คนเป็น 25 คน
    • เมื่อ 10 ปีก่อนทำงานกับบริษัทขนาดเล็กเป็นส่วนใหญ่ แต่ตอนนี้เป็นการผสมกันระหว่างองค์กรใหญ่และเล็ก
  • ดังนั้นตัวผู้เขียนเอง
    • ทำงานมาโดยตลอดในทีมเล็ก ๆ แบบ Lean ที่ต้องทำงานหลากหลายมากโดยเริ่มจากสิ่งเล็กมากเสมอ
    • ให้ความสำคัญกับ "ซอฟต์แวร์ที่ใช้งานได้จริง" มากกว่าเครื่องมือเฉพาะตัวใดตัวหนึ่ง
    • เริ่มโปรเจกต์ใหม่อยู่เสมอ แต่ก็ต้องดูแลระบบหลายตัวไปพร้อมกัน
    • ให้ความสำคัญกับผลิตภาพของวิศวกรมากกว่าปัจจัยพิจารณาส่วนใหญ่
  • โปรดทำความเข้าใจบริบทนี้ก่อนอ่านประเด็นข้างต้น รายละเอียดเชิงลึกดูได้จากต้นฉบับเพราะที่นี่นำมาเฉพาะหัวข้อเท่านั้น

14 ความคิดเห็น

 
cih1228 2023-06-04

ผมจะกลับมาอ่านวันละครั้งครับ 23/06/04

 
cwyang 2023-02-07
  1. ส่วนที่ยากที่สุดของซอฟต์แวร์คือการสร้างสิ่งที่ถูกต้อง
    อันนี้
  2. ส่วนที่สำคัญที่สุดของซอฟต์แวร์คือการสร้างสิ่งที่จำเป็น
    ดูดีกว่า
 
cwyang 2023-02-07

สิ่งที่สำคัญที่สุดในการพัฒนาซอฟต์แวร์คือการสร้างสิ่งที่ จำเป็น
สิ่งนี้ดูดีกว่า

 
xguru 2023-02-07

ดีมากเลย ขอบคุณครับ~!

 
munidev 2023-02-07

ผู้คนไม่ได้ต้องการนวัตกรรมอย่างแท้จริง <- นี่หมายความว่าอย่างไรนะ?

 
xguru 2023-02-07

ผู้คนพูดถึงนวัตกรรมกันมาก แต่ในความเป็นจริงพอคุณนำสิ่งที่เป็นนวัตกรรมมาให้ ส่วนใหญ่กลับได้รับเสียงตอบรับเชิงลบ ดังนั้นจึงต้องมองระยะยาวและเดินหน้าต่อไป

 
draupnir 2023-02-03

คำเตือนนี้โดนใจมากครับ

 
eyelove 2023-02-03

ว้าว เป็นบทความที่ดีมากจริงๆ..

 
tomriddle7 2023-01-31

คำว่า technical sharks น่าจะหมายถึงเทคโนโลยีที่ผ่านการพิสูจน์แล้วและมีความเสถียร มากกว่าจะหมายถึงเทคโนโลยีที่ "ล้าสมัย"

 
xguru 2023-01-31

อ้อ สำนวนมันดูแปลกไปหน่อย ผมเลยแก้ไขแล้วครับ

 
functor 2023-01-30

เป็นบทความที่ดีนะครับ

 
galadbran 2023-01-30

ผมชอบมากที่คุณทำเครื่องหมายส่วนที่ว่า "สำคัญ" ไว้แยกต่างหาก โดยเฉพาะในแง่ที่ได้ให้บริบทมาด้วย

 
cqssfm 2023-01-30
  • ไม่มีทางรู้ได้จากการสัมภาษณ์ว่าผู้สมัครจะเป็นเพื่อนร่วมทีมที่ดีได้หรือไม่
 
xguru 2023-01-30

อ๋อ ดีขึ้นมากเลยครับ แก้ไขแล้วครับ