See the original English version of this article here

เรียนรู้ 8 นิสัย ที่สามารถเปลี่ยนคุณให้กลายเป็น Software Engineer ที่ยอดเยี่ยม เพื่อปรับปรุงการแก้ปัญหา คุณภาพของ Code และการเติบโตในอาชีพการทำงาน กับ 8 นิสัยของ Software Engineer ที่ยอดเยี่ยม
1. ต้องนึกถึง System ด้วย ไม่ใช่แค่เขียน Code
Engineer ที่ยอดเยี่ยมไม่เพียงแต่จะเขียน Code เท่านั้น แต่ยังต้องเข้าใจการออกแบบ Architecture ทั้งหมดเบื้องหลัง Application อีกด้วย การเปลี่ยนแปลงวิธีคิดจากการแก้ปัญหาเฉพาะส่วนไปสู่การสร้างระบบที่ปรับขนาดได้ บำรุงรักษาได้ และมีประสิทธิภาพ
ทุกครั้งที่คุณสร้าง Feature ให้ถามว่า:
- สิ่งนี้จะมีผลกระทบต่อส่วนอื่น ๆ ของ System อย่างไร?
- สามารถบำรุงรักษาได้ไหม?
- จะเกิดอะไรขึ้น ถ้าปริมาณ Traffic เพิ่มขึ้น 10 เท่า?
การคิดเหมือน Architect ไม่ใช่แค่เพียง Coder เป็นสิ่งที่จะทำให้การทำงานของคุณมีความยืดหยุ่นมากขึ้น
2. เขียน Code ที่น่าเบื่อ…แต่สวยงาม
Engineer ที่ยอดเยี่ยมจะมุ่งเน้นที่ความชัดเจนและเรียบง่าย จะหลีกเลี่ยงโซลูชันที่ชาญฉลาดหรือซับซ้อนเกินไปพวกเขาเขียน Code ที่คนอื่นสามารถเข้าใจได้ และง่ายต่อการบำรุงรักษา
Code ที่อ่านได้ช่วยประหยัดเวลาของทีม ป้องกันข้อผิดพลาดต่าง ๆ และทำให้คุณกลายเป็นเพื่อนร่วมทีมที่ทุกคนอยากร่วมงานด้วย
ควรทำดังนี้:
- ชื่อตัวแปรที่ชัดเจน – ช่วยให้ผู้อื่นเข้าใจได้ทันทีว่าเกิดอะไรขึ้น
- การจัดรูปแบบที่สอดคล้อง – หลีกเลี่ยงความยุ่งเหยิงทางสายตาและทำให้มองเห็นรูปแบบต่าง ๆ ได้ง่าย
- แสดงความคิดเห็นที่สร้างสรรค์และรอบคอบ (เมื่อจำเป็น)
- ฟังก์ชันที่มีจุดประสงค์เดียว – จะทำให้ Code ของคุณสามารถทดสอบได้ และง่ายต่อการพิจารณาเหตุผล
3. ลงทุนในงาน แบบเชิงลึกทุกวัน
Engineer ที่ยอดเยี่ยมรู้ดีว่าการแก้ปัญหาที่ซับซ้อน การออกแบบระบบ และการเขียน Code ที่มีคุณภาพต้องอาศัยสมาธิอย่างต่อเนื่อง ไม่ใช่การทำงานหลายอย่างพร้อมกันหรือสลับงานอยู่ตลอดเวลา
พวกเขาจะมีช่วงเวลา สำหรับการทำงานอย่างเข้มข้นโดยเฉพาะ ซึ่งจะช่วยให้สามารถแก้ไขปัญหาที่ซับซ้อนได้อย่างง่ายดาย โดยปราศจากสิ่งรบกวน เช่น การแจ้งเตือนจาก Slack หรือ อีเมล และการประชุม คุณลองแบ่งเวลา 2 – 3 ชั่วโมงต่อวัน เพื่อทำงานที่ต้องใช้สมาธิ ปิดการแจ้งเตือนต่าง ๆ วางโทรศัพท์ไว้ในห้องอื่น ผลงานของคุณจะออกมาดีขึ้นมาก
4. เชี่ยวชาญศิลปะแห่งการ Debug
Engineer ทุกคนต้องเจอกับอุปสรรคมากมาย แต่ Engineer ที่ยอดเยี่ยมจะรู้วิธีฝ่าฟันอุปสรรคเหล่านั้นได้อย่างรวดเร็ว แทนที่จะรู้สึกติดขัดหรือหงุดหงิด พวกเขาใช้ทักษะในการ Debug ด้วยความอยากรู้อยากเห็น ความอดทน และการแก้ปัญหาอย่างเฉียบแหลม
พวกเขาคิดว่า Bug เหมือนเป็นปริศนา พวกเขาไม่ตื่นตระหนก และพวกเขาจะสืบสวนหาความจริง
พวกเขาทำสิ่งเหล่านี้:
- สร้างปัญหาที่เกิดขึ้นซ้ำ ๆ อย่างเป็นระบบ เพื่อทำความเข้าใจว่าปัญหาเกิดขึ้นเมื่อใดและเกิดขึ้นเพราะเหตุใด
- อ่าน Logs เปรียบเหมือนนักสืบ
- ใช้ Breakpoints, Print Statements หรือ Profilers อย่างชาญฉลาด
- หยุดและคิดอย่างถี่ถ้วน ก่อนที่จะขอความช่วยเหลือจาก Stack Overflow
ทักษะในการ Debug ของคุณ ส่งผลโดยตรงต่อทั้งความเร็วและความมั่นใจของคุณใน Code ที่คุณเขียน
5. อยากรู้อยากเห็นและเรียนรู้อย่างต่อเนื่อง
เทคโนโลยีพัฒนาอย่างรวดเร็ว สิ่งที่กำลังเป็นที่นิยมในปัจจุบันอาจล้าสมัยในอีก 1 ปีข้างหน้า วิธีเดียวที่จะก้าวไปข้างหน้าได้คือ การเรียนรู้อย่างต่อเนื่อง
โดยอ่านหนังสือ, ติดตาม Blog ต่าง ๆ, ลงเรียนหลักสูตรออนไลน์, สร้าง Side Project หรือ เข้าร่วม Open-source Communities อย่ามัวแต่ไล่ตามเครื่องมือที่กำลังยอดนิยม แต่ให้เจาะลึกทำความเข้าใจว่าสิ่งต่าง ๆ ทำงานได้อย่างไร
“การเรียนรู้ในทุก ๆ ชั่วโมง จะสะสมความรู้และประสบการณ์ให้คุณตลอดอาชีพการทำงาน”
6. สื่อสารอย่างมืออาชีพ
คุณอาจเป็น Engineer ที่เก่งมาก แต่หากคุณไม่สามารถอธิบายความคิดของคุณได้อย่างชัดเจน คุณจะไปถึงเป้าหมายได้ยาก
การสื่อสารอย่างมืออาชีพ คือ:
- การเขียน Document ที่ชัดเจน
- การอัปเดตงาน เข้าใจง่าย สั้น กระชับ โดยไม่ต้องพูดยืดยาว
- อธิบาย Technical Concept ให้กับผู้ที่ไม่ใช่นักเทคนิค ฟังได้อย่างเข้าใจ
- การถามคำถามที่ดี ในการทำ Code Review
ทั้งหมดที่กล่าวมานี้ มันคือสิ่งที่ทำให้ผู้มีส่วนร่วมในทีม กลายมาเป็นผู้นำทีม
7. ตรวจสอบ Code ด้วยความตั้งใจและใส่ใจ
การตรวจสอบ Code ไม่ได้เป็นเพียงแค่การค้นหา Bug เท่านั้น แต่ยังเป็นการแบ่งปันความรู้ การปรับแนวทางปฏิบัติ และเป็นวิธีที่มีประสิทธิภาพในการสร้างทีมที่ดีขึ้น
เมื่อทำ Code Review ควรทำดังนี้:
- เป็นคนใจดี ไม่ดูถูกคนอื่น
- ชี้ให้เห็นว่าเหตุใด บางอย่างจึงควรเปลี่ยนแปลง
- ชื่นชมการตัดสินใจที่ดี
- เสนอทางเลือก ไม่ใช่แค่คำวิจารณ์
สิ่งเหล่านี้สร้างความไว้วางใจ ปรับปรุงคุณภาพ และช่วยเสริมสร้างทีมของคุณให้แข็งแกร่งขึ้น
8. ไม่ใช่แค่งาน แต่เป็นปัญหาของคุณเอง
อันนี้แหละที่จะเปลี่ยนเกม Engineer ทั่วไปจะทำหน้าที่ของตนให้เสร็จสิ้นตามที่ได้รับมอบหมาย แต่ Engineer ที่ยอดเยี่ยมจะคิดว่าตัวเองเป็นเจ้าของและใส่ใจกับผลกระทบที่แท้จริงของงาน
สิ่งที่พวกเขาทำ:
- เจาะลึกเพื่อทำความเข้าใจว่า “ทำไม”
- ท้าทาย Requirement ที่ไม่ชัดเจน
- พยายามมองหาสถานการณ์ที่ผิดปกติหรือรุนแรง ที่อาจเกิดความเสียหายได้อย่างจริงจัง
- ดำเนินการต่อไปจนกระทั่งปัญหาจะได้รับการแก้ไข
พวกเขาไม่รอคำสั่ง แต่พวกเขาเป็นผู้นำ ด้วยการริเริ่ม
สุดท้ายนี้การจะเป็น Software Engineer ที่ยอดเยี่ยมได้นั้น ไม่ได้หมายความว่าต้องรู้ทุกภาษาหรือทุก Framework แต่มันเป็นเรื่องของวิธีคิด วิธีทำงาน และวิธีที่คุณจะเติบโต
สร้างนิสัยเหล่านี้ ฝึกฝนเป็นประจำทุกวัน นิสัยเหล่านี้จะทำให้คุณไม่เพียงแต่เป็น Engineer ที่ดีขึ้นเท่านั้น แต่ยังเป็นกำลังสำคัญที่ทุกทีมต้องการอีกด้วย
“จงกระหายอยู่เสมอ จงถ่อมตัวอยู่เสมอ และส่งมอบผลงานอย่างต่อเนื่อง”
และทั้งหมดนี้ก็คือ 8 นิสัยของ Software Engineer ที่ยอดเยี่ยม
เมื่อ หางาน IT ให้ ISM Technology Recruitment เป็นอีกหนึ่งตัวช่วย เพื่อให้คุณได้ “ชีวิตการทำงานในแบบที่คุณต้องการ” เพียงส่ง Resume มาที่นี่
ISM เชี่ยวชาญในธุรกิจ IT Recruitment & IT Outsourcing โดยเฉพาะ ได้เปิดทำการมาแล้วกว่า 30 ปี มีพนักงานทุกสายและทุกระดับทางด้าน IT ที่ได้ร่วมงานกับลูกค้าองค์กรใหญ่ที่มีชื่อเสียงและบริษัทข้ามชาติมากมาย
Source: https://medium.com/