กลับมาพบกันอีกครั้งกับ Topic : โปรแกรมเมอร์ที่ดี สำหรับผู้เริ่มต้นที่มีความสนใจ มีใจรักในการเขียนโค้ด (Coding) เขียนโปรแกรม หรือจะใช้คำว่าพัฒนาระบบ ล้วนมีความหมายเดียวกันทั้งสิ้น เรื่องราวที่แอดจะมาเล่าให้ฟังวันนี้ ถือเป็นประสบการณ์ตรงในการเริ่มต้นพัฒนาระบบ
จากจุดนั้นมาถึงปัจจุบันนี้มีเรื่องราวมากมายที่อยากมาถ่ายทอดสำหรับโปรแกรมเมอร์มือใหม่ที่มีความทะเยอทะยานอย่างสุดขั้ว อันที่จริงแล้วก็ไม่ได้มีอะไรมากหรอก 🙂 แอดแค่มี Tips & Technic ที่โปรแกรมเมอร์ที่ดีควรมีมาฝาก
ศาสตร์แห่งการเขียนโปรแกรม
ก่อนอื่นเลยหลายคนที่พึ่งเรียนจบวิทย์-คอมฯ หรือวิศวะ-คอมฯ ต่างก็มีเป้าหมาย และสิ่งที่ตนเองหลงไหลอยู่แล้ว บางคนอยากเป็น data science, software engineering, software tester, digital marketing หรือศาสตร์ภายในแขนงคอมฯอีกหลากหลาย
แต่สำหรับบางคนที่มีเป้าหมายคือการเป็นโปรแกรมเมอร์ (Software developer) แน่นอนจุดแรกที่ต้องผ่านคือ Junior Programmer หรือมือใหม่หัดขับนั้นเอง เฮ้ยไม่ใช้สิ Dev น้อยของเรานี้แหละ
กลับมาเข้าสู่ประเด่น …
โปรแกรมเมอร์ที่ดี ควรเตรียมความพร้อมอย่างไร ?
จากหัวข้อข้างต้นเลย ในส่วนนี้จะขอแบ่งออกเป็นหัวข้อย่อยเพื่อให้มองเห็นภาพ และทำความเข้าใจได้ชัดเจนดังนี้
1. ความรู้พื้นฐานโปรแกรมมิ่ง (Knowledge based programming language) หรือโปรแกรมมิ่งพื้นฐานที่เคยได้เรียนในมหาลัยนั้นแหละครับ เพราะมันจะเป็นจุดที่ปูทาง และเสริมสร้าง Logic ทางความคิดให้แก้เรา เพื่อนำไปใช้แก้ปัญหาต่าง ๆ อีกมากมายที่ต้องเจอบนโลกของการ Developer แน่นอน พื้นฐานยังไงก็คือพื้นฐาน หลายคนตั้งคำถามมากมายว่าที่เรียนมานั้นสามารถเป็นโปรแกรมเมอร์ที่สมบูรณ์แบบได้จริง-หรือไม่ ? คำตอบที่ผมอยากบอกก็คือ จริงครับ แต่มันเป็นเพียงส่วนเริ่มต้นแค่ 10% เท่านั้น อีก 90% ต้องศึกษาเองเกือบทั้งหมด ต่อไปเราไปดูสิ่งที่ควรมีอย่างที่ 2 ก็คือ
2. ความอยากรู้อยากเห็นแบบไม่มีที่สิ้นสุด อยากรู้อะไร ? คำตอบคือทุกอย่างแหละครับที่คุณอยากรู้เกี่ยวกับวิชาชีพ อยากเก่งแบบรุ่นพี่ อยากรู้ว่ากระบวนการทำงานของระบบนี้คืออะไร อยากรู้ว่าเราจะ optimization ระบบที่เราพัฒนาให้มีคุณภาพดีขึ้นได้อย่างไร ฯลฯ ยาวครับ ทุกอย่างที่เราอยากรู้อย่างที่บอกแหละครับ
เมื่อเกิดความอยากรู้ ก็จะเกิดการเรียนรู้ การค้นคว้า การเสาะหา หรืออาศัยประสบการณ์คนอื่น เรียกได้ว่าโปรแกรมเมอร์ต้องเรียนรู้แบบไม่มีที่สิ้นสุดครับ ฮ่ะ … ฟังไม่ผิดหรอก เป็นงานที่ต้องอดทนอย่างมาก !
3. วินัย ความสม่ำเสมอ คืออะไร ? คือการที่เราจะต้องอดทน Coding งานให้เสร็จนั้นแหละครับ
4. สมาธิ ความสงบ ข้อนี้เป็นสิ่งสำคัญมากสำหรับโปรแกรมเมอร์ทุกวัย หลายคนจะสังเกตุเห็นว่าทำไมมีคนประเภทนึงที่ชอบทำงานเวลาดึก หรือดึก-เช้า นี้แหละครับอาชีพนี้ เพราะช่วงเวลาดังกล่าวจะเป็นช่วงเวลาทองสำหรับโปรแกรมเมอร์หลายคน เพราะมันสงบเงียบยังไงละครับ ราตรีนี้เลยอีกยาวไกล
5. ความคิดสร้างสรรค์ แน่นอนครับงานสายนี้ต้องเป็นงานที่ช่วย Transformation ปรับปรุงเปลี่ยนแปลง หรือคิดค้นนวัตกรรมใหม่ ๆ อยู่เสมอ เพื่อช่วยเปลี่ยนแปลงโลกให้น่าอยู่มากยิ่งขึ้น ถือเป็นเรื่องที่ดี และน่าชื่นชมเลยล่ะ
ข้อสุดท้ายที่ขาดไม่ได้สำหรับ Junior Programmer ก็คือการให้ความเคารพรุ่นพี่ หรือผู้ที่มีประสบการณ์สูงกว่าเรา เพราะเค้าจะสามารถสั่งสอน และคอยให้คำแนะนำเราเหมือนเป็นอาจารย์คนที่ 2 ให้เราสามารถเดินไปได้ถูกทาง
เป็นอย่างไรกันบ้างครับ กับ Topic แรกของเราที่พูดถึงการเป็นนักพัฒนาที่ดี มีคุณภาพ พร้อมที่จะรับมือกับปัญหาอีกมากมายที่จะเข้ามา Bug นั่นเอง … – -” เออนั้นแหละ ขอบคุณครับแล้วคุณจะกลายเป็น Senior Programmer ที่ดีได้ในอนาคต
เออลืม ! ผมจะขอใบ้ให้ … ทุกสิ่งที่แนะนำมาทั้งหมด หากคุณสามารถทำมันได้อย่างสม่ำเสมอ แน่นอนในอีก 3 ปีข้างหน้าการเขียนโปรแกรมอาจจะเป็นเรื่องง่ายสำหรับคุณไปเลยก็ได้