ทำอย่างไรให้เป็น Developer ที่ดี(จนติดเป็นนิสัย)

14-ธ.ค.-17

คัมภีร์เทพ IT

บทความนี้เป็นของ Ravi Shankar Rajan (Global IT Program Manager บริษัทหนึ่งในประเทศอินเดีย) ซึ่งเขาได้เขียนไว้ได้ดีมาก โดยบทความเริ่มต้นจาก การที่เขาย้อนกลับไปนึกถึงตอนเขาเริ่มทำงานวันแรกในฐานะ Developer เขาโดนหัวหน้าตั้งคำถามว่าระหว่าง “Vandal(คนป่าเถื่อน/คนที่ชอบทำลาย)” กับ “Developer” ต่างกันอย่างไร? เขาได้ตอบคำถามไปแบบไม่ค่อยเข้าใจ แต่สิ่งที่หัวหน้าสรุป คือ "ถ้าผู้คนทำลายสิ่งที่มนุษย์สามารถทำทดแทนใหม่ได้ จะเรียกคนเหล่านั้นว่า Vandal แต่ถ้าพวกเขาทำลายสิ่งที่ถือว่าไม่สามารถถูกทดแทนที่ได้โดยมนุษย์ จะเรียกคนเหล่านั้นว่า Developer" ดังนั้น คุณจะต้องเป็น Vandal ที่สร้างสรรค์ เพื่อเป็น Developer ที่ยอดเยี่ยม คุณต้องตั้งคำถามและพยายามเปลี่ยนสถานภาพที่เป็นอยู่ในทุกๆ วัน" และนี่ก็เป็นวิธีง่ายๆ ที่จะช่วยให้คุณสามารถไปสู่ความยอดเยี่ยมได้
 

1.       สร้างแบรนด์ให้ Code ของคุณ

Developer ที่เกียจคร้านมักจะแค่เขียน Code ให้จบๆ ไป กว่าจะรู้ตัวพวกเขาก็กลายเป็นคนที่ด้อยกว่า Developer คนอื่นๆ แล้ว ในทางตรงกันข้าง Developer ที่มีความ Active เขาจะเขียน Code อย่างมีเอกลักษณ์ ซึ่งเป็นการสร้างแบรนด์ให้ตนเองอีกทางหนึ่ง และความเป็นเอกลักษณ์นี้ สามารถทำได้ง่ายเพียงแค่เขียน "Code เพิ่มอีกเล็กน้อย" เพื่อทำให้ชีวิตของผู้ใช้งานง่ายขึ้น ซึ่งถือเป็นการเพิ่มประสิทธิภาพของ Code ให้มีประสิทธิภาพยิ่งขึ้น ประเด็นที่ต้องจำไว้คือ คุณต้องทำบางอย่างที่ทำให้คุณมีความแข็งแกร่งเหนือ Developer คนอื่นๆ ซึ่งจะทำให้ผู้คนจดจำคุณได้ และเจ้า "ความแข็งแกร่ง" ที่เหนือผู้อื่นนี้แหละ จะช่วยผลักดันให้คุณก้าวหน้าในอาชีพในภายหลังได้ ซึ่งมันก็ตรงกับทฤษฎีของ Darwin ที่ว่า "ผู้ที่เหมาะสมที่สุดที่จะอยู่รอดได้"

2.       โปรแกรมที่ดีควร รวดเร็ว เชื่อถือได้ และราคาไม่แพง

การ Coding ที่ไร้ประโยชน์ซึ่งเขียนด้วยความรวดเร็ว(มาก) จะไม่ให้ผลลัพธ์ที่มีประสิทธิภาพทั้งต่อตัวคุณเองหรือองค์กรของคุณ เนื่องจาก Code ดังกล่าวจะต้องใช้ความพยายามอย่างมากในการหา Bug และแก้ไขข้อบกพร่อง คุณควรกำหนดเป้าหมายในการเขียน Code ที่ใช้ประโยชน์ได้ มีคุณภาพสูง และมี Feature ที่ครอบคลุม ภายในเวลาที่กำหนด งานของคุณ ก็คือ การทำให้มันใช้งานได้อย่างถูกต้องและรวดเร็วเป็นสำคัญ โดยทั่วไป Deadline, Timeline และความกดดัน มันเกิดขึ้นอยู่แล้ว แต่นั่นไม่ได้เป็นข้ออ้างในการเขียน Code ห่วยๆ ออกไป เพราะความน่าเชื่อถือของคุณจะถูกทำลายทันทีที่คุณได้เริ่มต้นทำมัน

3.       พยายามทำทุกอย่างให้ง่ายเข้าไว้

คนทั่วไปสามารถเขียน Code ที่คอมพิวเตอร์เข้าใจได้ แต่ Programmer ที่ดี จะเขียน Code ที่มนุษย์สามารถเข้าใจได้ สิ่งที่สำคัญก็คือ "ทำสิ่งที่ง่ายที่สุดตราบเท่าที่มันยังทำงานได้อยู่" หากรูปแบบการเขียน Code ของคุณเป็นแบบที่ ตัวคุณเองเท่านั้นที่สามารถเข้าใจได้ละก็ คุณควรใส่ใจในการวิเคราะห์รูปแบบของการเขียน Code ที่ซับซ้อน และหาวิธีการเขียน Code ที่มีคุณภาพมากขึ้น แต่มีความเรียบง่ายและมีโครงสร้างเหมาะสม ด้วยวิธีนี้จะช่วยคุณและองค์กรได้มากเลยทีเดียว จำไว้เสมอ ความสง่างามที่ดีที่สุด คือความเรียบง่าย การควบคุมได้และกำจัดความซับซ้อน เป็นเรื่องสำคัญของการเขียนโปรแกรมที่ดี ส่วนการเขียนโปรแกรมแย่ๆ ก็เหมือนกันมีเซ็กส์แบบไม่ป้องกันนั่นแหละ เพราะแค่คุณพลาดเพียงครั้งเดียวก็ส่งผลกระทบกับคุณไปทั้งชีวิต

4.       ไม่ควรประมาทกับการ Testing เพราะชื่อเสียงของคุณขึ้นอยู่กับมัน

หาก Code ของคุณ ต้องการทีมงานในการ Testing เป็นอย่างมากเพื่อหาข้อบกพร่อง รวมทั้งใช้เวลาที่มากเกินเหตุกับ Code ของคุณ เพื่อให้คุณได้เข้าใจถึงข้อบกพร่องใน Code ที่คุณเขียน แบบนี้ก็ถือเป็นอาชญากรรมที่ร้ายแรง ที่คุณกำลังนำมาสู่อาชีพของคุณเองรวมทั้งการเติบโตขององค์กรด้วย ตัวเลือกที่ดีที่สุดคือ การทุ่มเทเวลาให้กับ "การทดสอบด้วยตัวคุณเอง" อย่างละเอียดก่อนที่จะมอบ Code ให้กับ Tester ด้วยวิธีนี้คุณไม่เพียงส่งมอบผลิตภัณฑ์ที่มีคุณภาพให้แก่ทีม Tester เท่านั้น แต่ยังสร้างชื่อเสียงให้กับตัวคุณเองอีกด้วย มีคำที่ Tom Cargill(ผู้เชี่ยวชาญ C++) เคยกล่าวไว้ว่า "90% แรกของ Code มันอธิบายได้ถึง 90% แรกของเวลาที่ใช้ในการพัฒนา ส่วนอีก 10% ของ Code อธิบายได้ถึงอีก 90% ที่เหลือของเวลาในการพัฒนา นั่นหมายถึง คุณจะต้องใส่ใจกับ Code มากๆ รวมทั้งหลีกเลี่ยงการที่ต้องทำซ้ำใหม่ เพราะมันไม่ได้ช่วยให้อะไรดีขึ้นเลย

5.       เป็น Developer ที่เก่งและโดดเด่น

มีคนชอบกล่าวว่า คนเก่งๆ สามารถทำผลงานได้เทียบเท่ากับ Engineer ทั่วไปถึง 10 คน นั่นเป็นเรื่องไร้สาระ ผู้หญิง 9 คนไม่สามารถมีลูกได้ในหนึ่งเดือน และ Developer เก่งๆ 10 คน ก็ไม่สามารถทำงานแทนคนทั่วไป 100 คนได้ คำถามคือ คนที่เก่งๆ ต้องมีจำนวนบรรทัดของ Code เยอะๆ หรือเปล่า คำตอบคือ “ไม่” การวัดความคืบหน้าของการเขียนโปรแกรมด้วยจำนวนบรรทัดของ Code ก็เหมือนกับการวัดความคืบหน้าในการสร้างเครื่องบินด้วยน้ำหนัก แต่ Developer ที่ดีเขาจะสามารถแก้ปัญหาได้ โดยเฉพาะอย่างยิ่งเขาจะทำให้ปัญหานั้นหายไป พวกเขาแก้ไขปัญหาแทนที่จะบ่นเกี่ยวกับปัญหา Developer ทุกคนที่คุณรู้จัก ก็ผ่านสิ่งเหล่านี้มาได้ด้วยการการแก้ปัญหาที่ยากๆ จนกระทั่งพวกเขาสามารถทำได้จริง การที่ใครคนหนึ่งเขียน Blog หรือหนังสือ หรือพูดได้ดี ไม่ได้หมายความว่า พวกเขาเป็น Developer ที่ดีด้วย
 

บทเรียนที่ได้เรียนรู้

ในท้ายที่สุด ปัจจัยที่สำคัญที่สุดในการเป็น Developer ที่ดีหรือดีเยี่ยม มันอยู่ที่ตัวคุณเอง บางทีมันอาจใช้ความสามารถพิเศษและความหลงใหลอย่างแท้จริงในการเป็น Top Programmer ที่น่าทึ่งเพียงแค่ 1% แต่ทุกคนที่มีความใส่ใจในการเขียนโปรแกรมและแก้ปัญหา ก็สามารถเป็น Programmer ที่ดีได้ หากคุณไม่ต้องการเป็น Programmer ที่ดีแล้ว ก็คงไม่มีใครที่สามารถช่วยคุณได้แม้ที่ปรึกษาจะเก่งแค่ไหนก็ตาม ตัวคุณเอง ที่เป็นศัตรูที่ยิ่งใหญ่ที่สุดของตัวเอง และคุณควรมุ่งมั่นเพื่อที่จะเป็น Programmer ที่ดีขึ้น อย่างที่ Kent Beck(Software Engineer ชาวอเมริกัน) ได้กล่าวไว้ว่า "ฉันไม่ใช่ Programmer ที่ยอดเยี่ยม ฉันเป็นเพียง Programmer ที่ทำสิ่งดีๆ จนติดเป็นนิสัย"

ที่มา: hackernoon.com

 

อัพเดทบทความจากคนวงในสายไอทีทาง LINE ก่อนใคร
อย่าลืมแอดไลน์ @techstarth เป็นเพื่อนนะคะ

 

เพิ่มเพื่อน

 

 

 

บทความที่เกี่ยวข้อง