https://cdnp-2f3a.kxcdn.com/blog/wp-content/uploads/2015/04/15-Most-Popular-Programming-Languages-You-Must-Learn-in-2015.png

จาก Full Stack Dev มาเป็น Deep Dive Dev

Kittisak Phetrungnapha
iTopStory
Published in
2 min readMar 19, 2017

--

คำเตือน: บทความนี้เขียนขึ้นจากความเห็นส่วนตัว โปรดใช้วิจารณญาณในการรับสาร

เมื่อครั้งยังเยาว์วัย สมัยเพิ่งเรียนจบใหม่ๆ เนื่องจากอาชีพโปรแกรมเมอร์มีเส้นทางให้เลือกค่อนข้างหลากหลาย ไม่ว่าจะเป็น web, app, network, hardware, server และอื่นๆ อีกมากมาย ซึ่งแต่ละเส้นทางเนี่ย มันก็ไม่ได้ใช้ภาษาเดียวกันทั้งหมดในการพัฒนาขึ้นมาหรอก ถึงต่อให้มีรากฐานมาจากภาษาเดียวกัน แต่สุดท้ายก็แตกแยกย่อยไปเป็น framework ต่างๆ มากมายอยู่ดี ดูอย่าง JavaScript สิครับ ลองนับดูมี framework ทั้งหมดกี่ตัว?? นับไม่ถ้วนเลยใช่ม้าาา ตอนนั้นผมก็เลยเกิดคำถามขึ้นมาในใจว่า แล้วเราจะเลือกเส้นทางไหน ใช้ภาษาอะไร framework อะไรดีในการหารายได้เลี้ยงปากเลี้ยงท้องของตัวเองดีนะ หรือว่าไม่ต้องเลือกหรอก ทำมันซะหมดทุกอย่างเลย จะได้เก่งๆ ทำได้หลากหลายแนวดี ซึ่งตอนนั้นก็ยังหาคำตอบที่แน่นอนให้กับตัวเองไม่ได้ ก็เลยไปสมัครงานกับบริษัทเล็กๆ แห่งหนึ่ง โดยไปรับผิดชอบในส่วนของ IT ให้เขา เพราะข้อดีของการทำงานบริษัทเล็กๆ ก็คือ เราจะได้ทำ ลอง เรียนรู้หลากหลายอย่างมาก จะได้ลองหาเส้นทางที่ตัวเองชอบจริงๆ ได้ถูก

ซึ่งก็คิดไว้ไม่ผิดครับ ได้ทำทุกอย่างตั้งแต่สากกะเบือยันเรือรบจริงๆ ตั้งแต่ออกแบบ โครงสร้าง database ว่าจะใช้ตัวไหนดี มี table อะไร field อะไร มีความสัมพันธ์กันยังไงบ้าง พอเสร็จแล้วก็มาทำ API ไว้สำหรับติดต่อจาก clients ไปยัง database เพื่อเอาข้อมูลต่างๆ มาแสดงผล หลังจากนั้นก็ทำ web หน้าบ้าน และหลังบ้านสำหรับให้ลูกค้าใช้งาน เสร็จแล้วก็ต่อด้วย apps ทั้ง Android และ iOS เรียกได้ว่าครบถ้วนกระบวนความเลยทีเดียว (เหนื่อยมาก)

เวลาผ่านไปหลายเดือน พอทุกอย่างเรียบร้อย ซึ่งก็ได้ลองทำอะไรหลายๆ อย่างที่เรียกได้ว่า Full Stack มาระดับหนึ่ง เราก็เลยลองกลับมานั่งคิดทบทวนกับคำถามที่คาใจเรามาตั้งแต่แรกว่า จริงๆ แล้ว เราอยากทำอะไรกันแน่ อยากจะเป็น Full Stack ที่ทำได้หลายๆ อย่าง หรือจะเลือก Deep Dive เจาะลึกลงไปทางใดทางหนึ่งไปเลย ซึ่งปัจจัยที่ใช้ประกอบการตัดสินใจของผมนั้นก็มีหลากหลาย เช่น

  1. คุณภาพของเนื้องานที่เราทำออกมา
  2. ระดับความเข้มข้นในเรื่องต่างๆ ที่เราได้เรียนรู้
  3. กำลัง ความสามารถของเรา ในการตาม trend ของภาษาต่างๆ
  4. career path ของเส้นทางที่เลือก
  5. ความสุขในการทำงาน
  6. อื่นๆ อีกมากมาย

ซึ่งก็ใช้เวลาคิดหาคำตอบให้ตัวเองอยู่พอสมควร จนตัดสินใจได้ว่าจะเลือก Deep Dive ไปสักทางใดทางหนึ่งดีกว่า เพราะตัวเรานั้นอยากให้คุณภาพงานในสิ่งที่ทำออกมาดีที่สุด รู้ลึก รู้จริงใน domain ที่ตัวเองเลือก ประกอบกับเทคโนโลยีปัจจุบันไปไวมาก การที่จะตาม trend ให้ทันในทุกๆ แขนง น่าจะเป็นไปได้ยาก (แต่ก็ไม่ใช่ว่าจะเป็นไปไม่ได้ซะทีเดียว ยอดมนุษย์หลายคนที่ผมรู้จักก็ทำได้) ซึ่งผมคิดว่าตัวเองนั้นมีต้นทุนเรื่อง “เวลา” อยู่อย่างจำกัด สุดท้ายก็ได้เลือกมาทางสาย mobile apps แรกๆ ก็ทำทั้ง Android และ iOS ทั้งสองอย่างเลย เพื่อสำรวจความชอบของตัวเองต่อในเชิงลึกขึ้นไปอีก

พอเวลาล่วงเลยมา ก็เลือกเจาะเฉพาะ iOS อย่างเดียว เน้น Swift และ Objective-C เป็นหลัก ซึ่งพอผมเลือกได้แล้ว ปัจจัยข้อต่างๆ ด้านบน ก็เรียกได้ว่า มุ่งไปทาง iOS, Swift, และ Objective-C เกือบจะทั้งหมด ก็มีแอบตามๆ trend ของสายอื่นบ้างนิดหน่อยเพื่อไม่ให้ตก trend ซึ่งเราก็ไม่รู้หรอกว่า เส้นทางที่เราเลือก มันจะไปได้ไกลแค่ไหน อยู่ได้ถึงเมื่อไหร่ ไม่มีใครที่สามารถให้คำตอบได้ แม้แต่ตัวเราเอง เพราะทุกวันนี้โลกมันเปลี่ยนเร็วมาก สิ่งที่เรารู้ในวันนี้ อาจจะใช้ไม่ได้ในอนาคตก็ได้ เราเพียงแต่ทำในสิ่งที่ตัวเองรัก และสนุกไปกับมัน ก็น่าจะพอแล้ว (แต่ก็ต้องแพลนเผื่ออนาคตด้วยนิสนึงเนอะ ถ้าเกิดเวลานั้นมาถึงจริงๆ จะได้ไม่ลำบากมาก ^^)

สำหรับคนที่เลือกเส้นทางของตัวเองได้แล้ว ไม่ว่าจะเป็น Full Stack ก็ดี หรือ Deep Dive ก็ดี ผมเชื่อว่าทุกคนต้องมั่นใจในระดับหนึ่งว่า นี่แหละคือสิ่งที่ใช่สำหรับเราจริงๆ แต่ก็อยากฝากคำถามนี้ถึงคนที่ยังไม่แน่ใจ หรือยังไม่ได้ลองให้เวลาคิดกับตัวเองอย่างจริงจัง ว่าจริงๆ แล้ว เรารัก เราชอบ หรือเราอยากที่จะทำอะไรกันแน่ ให้คิดให้รอบคอบ จริงอยู่ที่ทุกอย่างในโลกนี้มันมี trade-off ได้อย่างเสียอย่างหมดนั่นแหละ แต่ผมว่ามันน่าจะน่ากลัวมากกว่า ถ้าเราไม่เลือกที่จะตัดสินใจนะ และเมื่อเราเลือกเส้นทางให้กับตัวเองได้แล้ว อีกสิ่งหนึ่งที่จะลืมไปไม่ได้เลยก็คือ ต้องรู้จัก “ปฏิเสธ” เรื่องอื่นๆ ให้เป็นด้วย อย่าลืมว่าต้นทุนเวลามันโหดร้ายนะ ก่อนจากกันไปนี้ก็ขอยกเอาประโยคหนึ่งที่ Steve Jobs เคยกล่าวเอาไว้ดังนี้

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

ที่มา: หนังสือแรงบันดาลใจที่มหาวิทยาลัยไม่มีสอน | สตีฟ จ๊อบส์

อย่าลืมนะครับ ไม่ว่าคุณจะเลือกเป็น Full Stack Dev หรือ Deep Dive Dev หรืออาชีพอะไรก็ตามแต่ ตัวคุณเท่านั้นที่จะหาคำตอบให้กับตัวเองได้ และเมื่อเลือกได้แล้ว ก็จงรักในสิ่งที่ทำ แล้วงานจะออกมาดีเอง สำหรับวันนี้ ก็ลากันไปเพียงเท่านี้ก่อน พบกันใหม่ บทความหน้า สวัสดีครับ :)

ติดตามเรื่องราวต่างๆ ทั้งเทคโนโลยี มุมมองชีวิต การเรียนรู้ การใช้ชีวิต ได้ที่ https://www.facebook.com/itopstory/

--

--

Kittisak Phetrungnapha
iTopStory

I am a software engineer who fall in love to code, read, and write. :) itopstory.com