in Article

ทำไมนักศึกษาควรพัฒนาซอฟต์แวร์โอเพนซอร์ส

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

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

อย่าง แรกที่นักศึกษาจะได้รับพิจารณาการจ้างงานอย่างแน่นอน เราเรียกว่า “ประสบการณ์จริง” ซึ่งคุณจะได้เรียนรู้จากหลายสิ่ง หลายอย่าง จากการทำงานร่วมกับนักพัฒนาโอเพนซอร์ส ไม่เพียงแค่ประสบการจากการพัฒนาซอฟต์แวร์ แต่ยังรวมถึงประสบการณ์ใช้เครื่องไม้เครื่องมือต่างๆ อย่างเช่น คอมไพเลอร์ ระบบควบคุมเวอร์ชั่น ฯลฯ การทำงานร่วมกับมืออาชีพ และเรียนรู้หลายสิ่งหลายอย่างจากโครงการที่คุณเข้าร่วม ไม่ว่าจะเป็นการพัฒนา การทดสอบ และอื่นๆ ประสบการณ์ทั้งหมดที่ได้จะเหมือนกับประสบการณ์การทำงานจริงที่คุณจะต้องเจอ ในการทำงาน นั่นหมายความว่าผู้จ้างงานจะเริ่มเข้าใจว่าคุณให้เวลาในการเรียนรู้และศึกษา ทักษะเหล่านี้

อย่างที่สองการได้รับประสบการณ์จากโอเพนซอร์สนั่น หมายความว่าคุณสามารถตรวจสอบได้จากโค้ดที่คุณพัฒนา เอกสาร เอกสารการทดสอบ และอื่นๆ ซึ่งสิ่งเหล่านี้เป็นจุดเด่นในโอเพนซอร์ส และเป็นประโยชน์มากในการแสดงให้เห็นถึงทักษะและประสบการณ์ที่คุณมี

อย่าง ที่สามคุณจะมีรายชื่อ contact จำนวนมากเมื่อคุณทำงานในซอฟต์แวร์โอเพนซอร์ส โมเดลของชุมชนโอเพนซอร์สออกจะเป็นแนวกระตุ้นให้เกิดการร่วมมือกัน ซึ่งมีหลายช่องทาง ไม่ว่าจะเป็น mailing list, IRC chat room, blogs และเครื่องมืออื่นๆที่ใช้ในการสื่อสารแบบออนไลน์ได้ สิ่งเหล่านี้เป็นวิธีที่ดีมากในการทำงานร่วมกันและยิ่งคุณใช้เวลาอยู่กับ ชุมชนโอเพนซอร์สคุณก็จะยิ่งพบเห็นนักพัฒนาที่อยู่ในชุมชนมากขึ้น การสร้างความสัมพันธ์ในชุมชนไม่ได้เป็นเพียงแค่การช่วยให้ได้รับโอกาสใน อนาคต แต่คุณยังจะพบกับกลุ่มนักพัฒนาที่มีความแข็งแกร่งพอที่จะสามารถเอาไปอ้างอิง และโน้วน้าวผู้ว่าจ้างได้

อย่างสุดท้ายหากคุณได้รับประสบการณ์มากมาย จากโอเพนซอร์สคุณจะทำอย่างไรให้สิ่งเหล่านี้อยู่ใน resume ของคุณ สิ่งเหล่านี้ไม่ใช่เรื่องยาก ลองมาดูวิธีการและขั้นตอนกันครับ หากคุณเป็นนักศึกษาที่กำลังศึกษาอยู่ ประสบการณ์สำคัญที่สุด คือ “ประสบการณ์ด้านการศึกษา” นั่นหมายความว่าคุณต้องเรียนจบ ซึ่งจะส่งผลให้รายการประสบการณ์ต่างๆ ที่ได้จากการพัฒนาซอฟต์แวร์โอเพนซอร์สมีความหมาย (น่าเสียใจนะครับ แต่อันนี้เรื่องจริง)

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

ก่อนที่คุณจะโชคดีหรือไม่ดีในการสมัครงานอย่างน้อยคุณจะต้องอธิบายสิ่งที่ได้มาจากการพัฒนาซอฟต์แวร์โอเพนซอร์ส ลงใน resume ของคุณ
1. ทักษะที่ได้มาจากการใช้งานเครื่องมือ
2. ประสบการณ์ในการทำงานจริง
3. งานที่คุณทำเพื่อใช้ในการอ้างอิง
4. บันทึกการทำงานว่าคุณเป็นส่วนหนึ่งของทีมนักพัฒนา

  • Related Content by Tag