การเป็นวิศวกรที่ดีคือการสั่งสมประสบการณ์
(addyosmani.com)- แม้จะเป็นโปรเจ็กต์เล็ก ๆ แต่ทุกโปรเจ็กต์ก็เป็นโอกาสในการเพิ่มทักษะและเครื่องมือใหม่ลงในกล่องเครื่องมือของตัวเอง
- เมื่อคุณสามารถนำทักษะที่เรียนรู้จากโปรเจ็กต์หนึ่งมาผสานกับเครื่องมือที่ได้จากอีกโปรเจ็กต์เพื่อแก้ปัญหาได้ คุณจะสร้างคุณค่าได้มากขึ้น ทุกอย่างล้วนสะสมต่อยอดกัน
- ในช่วงแรกเราอาจเริ่มจากการเรียนรู้ภาษา/ไลบรารี แต่เมื่อเส้นทางอาชีพเติบโตขึ้น ขอบเขตความสนใจก็ควรกว้างขึ้นด้วย
- ไม่ใช่แค่ในด้านเทคนิคเท่านั้น แต่รวมถึงแนวทาง วิธีวิทยา และกระบวนทัศน์ด้วย
- คุณค่าที่แท้จริงของการเติบโตในฐานะวิศวกรไม่ได้อยู่ที่การสะสมทักษะแบบแยกส่วนเท่านั้น แต่อยู่ที่การถักทอสิ่งเหล่านั้นให้เป็นโครงข่ายความสามารถที่ซับซ้อนและทรงพลังกว่าผลรวมของแต่ละส่วน
กล่องเครื่องมือ
- หากจินตนาการทักษะด้านวิศวกรรมเป็นกล่องเครื่องมือ ทุกครั้งที่เราเรียนรู้อัลกอริทึม/ภาษา/เฟรมเวิร์กใหม่ ก็เหมือนกับการเพิ่มเครื่องมือชิ้นใหม่เข้าไปในกล่องนี้
- แต่การมีเครื่องมืออยู่กับการรู้ว่าเมื่อไรและอย่างไรจึงจะใช้มันได้อย่างมีประสิทธิภาพนั้นเป็นคนละเรื่องกันโดยสิ้นเชิง
- และนี่คือจุดที่ประสบการณ์มีคุณค่า
- ทุกโปรเจ็กต์ไม่ว่าจะมีขนาดแค่ไหน ต่างก็มอบโจทย์เฉพาะตัวที่ช่วยให้เข้าใจสถานการณ์ที่ควรใช้เครื่องมือบางอย่าง
-
"พื้นที่สบายอาจให้ความรู้สึกสบาย แต่แทบไม่ค่อยให้บทเรียน ลองมองหาโปรเจ็กต์ที่ผลักให้คุณยืดตัวออกไปอย่างตั้งใจ แล้วกล่องเครื่องมือของคุณจะขอบคุณเอง"
- แต่กล่องเครื่องมือไม่ใช่วัตถุที่หยุดนิ่ง มันพัฒนาไปพร้อมกับผู้ใช้
- เมื่อเวลาผ่านไป คุณจะไม่เพียงเพิ่มเครื่องมือมากขึ้นเท่านั้น แต่ยังเริ่มนำเครื่องมือเหล่านั้นมาผสมกันในรูปแบบใหม่เพื่อแก้ปัญหาที่ซับซ้อนยิ่งขึ้น
- ประสบการณ์การใช้ RESTful API ในโปรเจ็กต์หนึ่งอาจช่วยให้คุณผสานบริการจากภายนอกได้อย่างชำนาญในอีกโปรเจ็กต์หนึ่ง
- ความเข้าใจเรื่องมัลติเธรดดิ้งสามารถช่วยเพิ่มประสิทธิภาพของแอปพลิเคชันที่มีข้อมูลจำนวนมากได้อย่างมาก
- ประเด็นสำคัญคือ คุณไม่จำเป็นต้องมีกล่องเครื่องมือแยกต่างหากสำหรับแต่ละโปรเจ็กต์
- ด้วยกล่องเครื่องมือใบเดียว คุณก็สามารถใช้ประโยชน์จากความต้องการเฉพาะและข้อจำกัดของแต่ละโปรเจ็กต์ได้
การจับคู่ทักษะและเครื่องมือ
- สิ่งที่แยกวิศวกรที่ยอดเยี่ยมออกจากวิศวกรทั่วไป คือความสามารถในการนำทักษะที่เรียนรู้จากโปรเจ็กต์หนึ่งมาผสานกับเครื่องมือที่ได้มาจากอีกโปรเจ็กต์
- การผสมเกสรข้ามกันนี้ (Pollination) ทำให้การแก้ปัญหามีประสิทธิภาพมากขึ้น และมักนำไปสู่ทางออกที่ดีกว่า
- คุณภาพของกล่องเครื่องมือไม่ได้วัดจาก "จำนวนเครื่องมือ" แต่ขึ้นอยู่กับ "ความหลากหลายของปัญหาที่เครื่องมือเหล่านั้นสามารถแก้ได้"
- ตัวอย่างในโลกจริง
- สมมติว่าคุณเคยทำงานกับเว็บไซต์อีคอมเมิร์ซ โดยอาศัยความเข้าใจเชิงลึกเกี่ยวกับธุรกรรมฐานข้อมูลเพื่อรักษาจำนวนสต็อกให้ถูกต้องแม่นยำ
- และในอีกโปรเจ็กต์หนึ่ง คุณได้ลงลึกกับการเขียนโปรแกรม WebSocket สำหรับแอปพลิเคชันแชตแบบเรียลไทม์
- ตอนนี้คุณได้รับมอบหมายให้พัฒนาแดชบอร์ดแบบเรียลไทม์สำหรับการจัดการสต็อก
- ในลักษณะนี้ คุณสามารถผสานทักษะที่ได้จากโปรเจ็กต์ต่างกันเพื่อสร้างโซลูชันที่ทรงพลัง
- คุณสามารถใช้ความเข้าใจเชิงลึกเกี่ยวกับธุรกรรมฐานข้อมูลเพื่อรับประกันความน่าเชื่อถือและความสอดคล้องของข้อมูลสต็อก พร้อมกับใช้ WebSockets เพื่อส่งอัปเดตแบบเรียลไทม์ไปยังแดชบอร์ด
- การรวมทักษะเหล่านี้เข้าด้วยกันมีข้อได้เปรียบชัดเจน คือไม่เพียงแก้ปัญหาได้ แต่ยังแก้ได้อย่างมีประสิทธิภาพและสง่างามอีกด้วย
- การยืดตัวออกไปให้พ้นเขตปลอดภัย: เหตุใดการท้าทายตัวเองให้ก้าวออกนอกเขตปลอดภัยจึงสำคัญ
- เป็นเรื่องง่ายที่จะถูกดึงดูดให้เลือกโปรเจ็กต์ที่สอดคล้องกับชุดทักษะเดิมที่คุ้นเคยและกดดันน้อยกว่า
- แต่ยิ่งคุณสั่งสมประสบการณ์ที่หลากหลายมากเท่าไร ขอบเขตของเครื่องมือก็จะยิ่งกว้างขึ้น และความสามารถในการออกดอกออกผลในลักษณะนี้ก็จะยิ่งดีขึ้น
- จงมองหาโปรเจ็กต์ที่บังคับให้คุณได้เรียนรู้สิ่งใหม่ หรือคิดในแบบที่คุณไม่เคยทำมาก่อนอย่างตั้งใจ
- คุณจะพบว่าแม้แต่โปรเจ็กต์ที่ดูเผิน ๆ เหมือนไม่เกี่ยวข้องกันเลย ก็ยังให้ประโยชน์ได้มาก
รักษาความคล่องตัวและความสามารถในการปรับตัว
- เทคโนโลยีพัฒนาอยู่ตลอดเวลา และเครื่องมือที่คุณเชี่ยวชาญในวันนี้อาจไม่ได้มีประโยชน์มากนักในวันพรุ่งนี้
- แต่นั่นไม่ได้หมายความว่าเครื่องมือเหล่านั้นจะไร้ค่า ตรงกันข้าม มันสามารถช่วยให้คุณพัฒนาความสามารถในการปรับตัวและสร้างนวัตกรรมท่ามกลางความเปลี่ยนแปลงได้
- ตัวอย่างเช่น การเกิดขึ้นของสถาปัตยกรรมคลาวด์เนทีฟไม่ได้ทำให้ความรู้เรื่องฐานข้อมูลเชิงสัมพันธ์แบบเดิมหมดความหมายไป
- การเข้าใจพื้นฐานของ SQL และการออกแบบฐานข้อมูลสามารถยกระดับความสามารถในการทำงานกับโซลูชันจัดเก็บข้อมูลสมัยใหม่ได้อย่างมาก
เคล็ดลับเชิงปฏิบัติในการสั่งสมประสบการณ์ที่มีคุณค่า
- การเชี่ยวชาญเครื่องมือคือเพียงหนึ่งหมุดหมายของการเดินทางสู่การรู้ว่าเมื่อไรและอย่างไรจึงควรใช้มัน
- มีทางเลือกมากมายในการสั่งสมประสบการณ์
- คัดสรรโปรเจ็กต์ที่หลากหลาย: ลองทำงานกับโปรเจ็กต์ที่มีขนาดต่างกัน ใช้เทคโนโลยีต่างกัน และอยู่ในโดเมนปัญหาที่ต่างกัน แต่ละโปรเจ็กต์สามารถเพิ่มบางสิ่งที่เป็นเอกลักษณ์ลงในกล่องเครื่องมือของคุณได้
- ทบทวนและบันทึก: หลังจากทำโปรเจ็กต์เสร็จ ให้ใช้เวลาทบทวนสิ่งที่ได้เรียนรู้ วิธีที่ดียิ่งกว่าคือบันทึกมันไว้ ไม่ว่าจะผ่านรีโพซิทอรีส่วนตัวที่รวม "บทเรียนที่ได้เรียนรู้" หรือโพสต์บล็อกสาธารณะ ก็ช่วยทำให้ความเข้าใจแน่นแฟ้นขึ้นและแบ่งปันความรู้ได้
- มีส่วนร่วมกับชุมชน: การมีส่วนร่วมกับชุมชนผ่านการคอนทริบิวต์โอเพนซอร์ส หรือแพลตฟอร์มโซเชียลที่ออกแบบมาสำหรับนักพัฒนา สามารถทำให้คุณได้พบกับปัญหาที่อาจไม่มีทางได้เจอด้วยวิธีอื่น
- มีเมนเทอร์และรับการเมนเทอร์: หนึ่งในวิธีที่มีประสิทธิภาพที่สุดในการผสานสิ่งที่เรียนรู้ คือการสอนผู้อื่น เช่นกัน อย่าลังเลที่จะขอคำแนะนำหรือเรียนรู้จากวิศวกรที่เชี่ยวชาญในด้านที่คุณยังไม่ถนัด
- อย่าหยุดเรียนรู้: ไม่ว่าจะเป็นคอร์สออนไลน์ เว็บบินาร์ หรือการลองเรียนภาษาใหม่ในช่วงสุดสัปดาห์ การเรียนรู้อย่างต่อเนื่องคือสารหล่อลื่นของเส้นทางอาชีพที่พัฒนาอยู่เสมอ
บทสรุป
- การผสมเกสรทางทักษะ (Pollination) ไม่ใช่แค่ความบังเอิญ แต่คือความงดงามของวิศวกรรม
- โซลูชันที่ดีที่สุดมักเกิดจากการผสมผสานทักษะที่คาดไม่ถึง
- เพราะฉะนั้น ครั้งต่อไปที่คุณต้องต่อสู้กับปัญหาใหม่ ลองพิจารณากล่องเครื่องมือแห่งประสบการณ์ของคุณอย่างใกล้ชิด
- คุณอาจพบคำตอบไม่ใช่จากการเชี่ยวชาญเครื่องมือใหม่ แต่จากการใช้เครื่องมือที่สั่งสมมาหลายปีอย่างชาญฉลาด
- แนวทางแก้ปัญหาที่มีหลายชั้นและละเอียดอ่อนเช่นนี้เอง ที่จะช่วยผลักดันอาชีพของคุณอย่างแท้จริงและทำให้คุณโดดเด่นในฐานะวิศวกร
6 ความคิดเห็น
ดูเหมือนว่า AI จะช่วยลดอุปสรรคลงไปมาก ทำให้การเปลี่ยนผ่านแบบนี้เกิดขึ้นได้เร็วขึ้น
ช่วยหาโอกาสให้ได้เก็บประสบการณ์หน่อย -_-
ที่บริษัทห่วย ๆ สะสมไม่ได้หรอก โดยเฉพาะถ้ามีพวกสาย PHP ยิ่งแล้วใหญ่!
ช่วงนี้รู้สึกได้อย่างมากเลยครับ
แค่อ่านหนังสืออย่างเดียวคงไม่พอจริง ๆ
หรือว่าคำตอบเดียวคือการย้ายงานไปบริษัทที่ดี (เพื่อให้ได้ประสบการณ์ที่ดี)?
ก็พูดยากอีกเหมือนกันว่าจะบอกว่าที่ที่ได้มีประสบการณ์กับโปรเจกต์หลากหลายคือบริษัทที่ดี
ผมคิดว่าคงพูดไม่ได้ว่าเปลี่ยนงานคือคำตอบเสมอไป เพราะการเปลี่ยนงานก็เหนื่อยมากจริงๆ
ในตอนนี้ การลองทำไซด์โปรเจกต์น่าจะดีที่สุดไหม?
ขอบคุณครับ เดี๋ยวจะเริ่มเลยครับ 555