เด็กจบใหม่ จะทำงานโปรแกรมเมอร์ บริษัทคาดหวังอะไรจากคุณ ?

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

คำเตือน !!

บทความนี้เป็นทัศนคติส่วนตัวของผมเองอาจจะผิดถูกไปบ้างแต่พยายามจะส่วนที่เป็นประโยชน์จริงๆสำหรับผู้อ่านนะครับ ถ้ามีอะไรไม่ถูกหรือไม่ตรงสามารถแชร์ความคิดเห็น comment ใต้บทความได้เลยครับ

ไม่เก่งทำไรไม่เป็นเลยเรียนมา 4 ปี เกาะเพื่อนผ่านทำไงดี ?

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

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

ต่อมาเราจะรู้ได้ไงว่างานในโลกนี้หรือภาษาตอนนี้อันไหนเราควรจะเรียนรู้ดี ผมมีวิธีง่ายๆดังนี้สำหรับคุณครับ

  • ถามเพื่อนหรือคนเก่งๆครับ ว่าคนพวกนี้ตามเทคโนโลยีอยู่แล้วเขาจะบอกได้ว่าควรเลือกเรียนภาษาไหน หรืออะไรที่เป็น trend ของโลก ณ ตอนนี้ครับ
  • ไปดูว่าภาษาอะไรติด top 10 ของโลกครับ คลิกตรงนี้เลย
  • เริ่มจากความชอบของตัวเอง อันนี้ถ้าคุณได้ลองเขียนมาบ้างคุณอาจจะชอบภาษาใดภาษาหนึ่งอยู่แล้วแนะนำว่าให้เริ่มจากภาษานั้นๆก่อนก็ได้ครับ
  • ดูจากเว็บสอนการเขียน code ก็ได้ครับปกติผมเรียนจาก udemy ลองดูจากภาพด้านล่างครับ

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

แต่ห้ามโกหก คนที่มาดู project ของคุณเขารู้แน่ๆว่าคุณอยู่ในระดับไหน ทำงานนี้จะติดปัญหาอะไร เขาจะถามแน่ๆ ถ้าหากคุณจ้างหรือไม่ได้ทำเองจะตอบไม่ได้ ครับ

ไม่ต้องเทพ ณ ตอนแรก

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

  • เรียนรู้เกี่ยวกับ project ที่ตัวเองเข้าไปมีส่วนร่วม
  • เรียนรู้ว่า งานเสร็จ คืออะไร
  • เรียนรู้การตั้งคำถาม

เรียนรู้เกี่ยวกับ project

บอกเลยว่าปัจจุบันไม่มี project ไหนที่คุณจะได้เข้าไปทำตั้งแต่ตั้งไข่ เพราะว่ามันเสี่ยงในการรับเด็กจบใหม่มาทำงานกับ project ตั้งไข่ครับ โดยส่วนใหญ่คุณมักจะได้ไปทำงานในส่วนของการดูแล project ที่เกิดขึ้นแล้ว แล้วลูกค้าต้องการ feature ใหม่ๆ ต่อเติมจากของเดิมครับ

สิ่งที่คุณต้องพยายามอย่างแรกคือเอา project ที่คุณเกี่ยวข้องมาศึกษา สมมติ project ที่คุณเข้าไปเกี่ยวกับต้องใช้เครื่องมืออะไรที่คุณไม่เคยเห็นหรือใช้งานมาก่อน สิ่งที่คุณต้องทำคือเรียนรู้ว่าเครื่องมือที่คุณไม่เคยเห็นมันทำงานอย่างไร และตอนนี้บริษัทที่คุณเอามันมาใช้ปรับใช้ไปถึงระดับไหนแล้ว ค่อยๆเรียนรู้นอกเวลาหรือในเวลาก็ได้ เพราะว่า

คำว่าไม่รู้ คือจะใช้ได้ไม่เกิน 2 เดือนจริงๆครับ ถ้าเป็นบริษัทงานโหดๆหน่อยเขาไม่ปล่อยนานขนาดนั้น พอเรียนรู้แล้วจะเกิดคำถามซึ่งเราจะไปอธิบายเพิ่มในข้อ เรียนรู้การตั้งคำถาม

งานเสร็จ คืออะไร ?

น้องๆหลายคนและตัวผมเองในอดีตนั้น ไม่ได้รู้จักคำดีนี้เหมือนที่ภาษาอังกฤษที่ว่า what done is done งานเสร็จไม่ใช่ทำเสร็จตามแค่รับมอบหมายเพียงเท่านั้น แต่การทำงานเพื่อส่งมอบงานให้ดี ยกตัวอย่าง สมมติว่ามีงานมอบหมายให้คุณทำงาน 1 งานเช่น ให้สร้าง feature login โดยใส่ email กับ password เมื่อ login ผ่านให้ไปหน้า profile

สมมติถ้าคุณอ่านเท่านี้คุณคิดอะไรบ้าง ? ต้องมีอะไรบ้าง ? ถ้าหากคุณคิดว่ามี input ที่รับค่า email กับ password แค่นี้ผิดไหม ไม่ผิดครับ คุณอาจจะใส่ค่าแล้วส่งค่าไปแล้วก็ redirect ไปหน้า profile อย่างนี้เสร็จหรือยังให้ตอบในใจ ? …

แล้วยังไงต่อ ? อาจจะคิดต่ออีกหน่อยว่า เอ๊ะ … แล้วต้องเช็คค่าอะไรแบบไหน แล้วแสดงแบบไหนอีก ต้องแสดง error message ตรงไหน ? ให้ alert หรือเปล่าหรือว่าต้องเป็น pop up

ต้องส่งค่าไปไหนอย่างไร ? ตรงตัว input ต้องแสดง hilight แบบไหน ? สมมติถ้าแสดงข้อความแจ้งเตือนแล้ว ต้องลบเมื่อไหร่ ? ต้องแปลภาษาด้วยหรือเปล่า เพราะบางครั้งเว็บเป็นแบบ multi language รองรับหลายภาษา บางคนทำเสร็จแสดงข้อความแจ้งเตือนเป็นภาษาอังกฤษอย่างเดียวแล้วไม่ได้แปลไทยอีกด้วย แบบนี้เรียกเสร็จไหม ? เมื่อคลิกปุ่มหรือเมื่อ user เริ่มแก้ไข จะเห็นว่าแค่ input สองอย่างก็สามารถทำให้เราคิดอะไรเยอะเยะได้ขนาดนี้

สิ่งเหล่านี้เราสามารถถามรายละเอียดเพิ่มเติมได้ ทีมจะมองว่าคุณละเอียดอีกด้วย เพราะสิ่งพวกนี้มันไม่ได้มีเขียนลงในรายละเอียดถ้าคุณใส่ใจและทำงานได้ดีแบบเสร็จจริงๆ

การตั้งคำถาม

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

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

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

ถามว่าแล้วมันช่วยอะไรให้เราพัฒนา กับการแค่ตั้งคำถาม เพราะบางครั้งมันจะมีผลกระทบไปเกี่ยวกับเรื่องการใช้ keyword ในการหาใน google ถ้าคุณใช้คำที่ถูกต้องหรือใกล้เคียงคำตอบจะหาง่าย แต่ถ้าตั้งผิดก็หากันเป็นวันทำนองนี้ครับ

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

จริงๆแนะนำเรื่องการตั้งคำถามมีพี่หนูเนยเคยเขียนไว้ดีมากอยากแนะนำให้ไปลองอ่านต่อครับ //nuuneoi.com/blog/blog.php?read_id=806

ไม่มีใครให้การบ้านคุณอีกแล้ว คุณต้องตั้งการบ้านเอง

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

คุณค่าของคุณไม่มีไม่ถึงราคาที่เขาให้ครับ

– oxygenyoyo

ถ้าหากคุณเพิ่งจบใหม่แน่นอนว่าคุณอาจจะได้ยินจากเพื่อนว่า เฮ้ยเราสมัครที่นู้นที่นี่ได้เงิน 50,000 เลยนะ หรืออีกคนได้ 70,000 เลย เอาจริงๆการได้เงินเยอะระดับหนึ่ง ความคาดหวังจะสูงตามเงินที่คุณได้ด้วย เพราะฉะนั้นสร้าง value ( คุณค่า ) ของคุณซะ แล้วจะมีแต่คนอยากให้เงินคุณอยู่แล้วครับไม่ต้องกังวล

สร้างการบ้านที่พัฒนาความสามารถของคุณตั้งแต่ตอนที่เริ่มเข้าชีวิตทำงาน แล้วคุณจะก้าวหน้าเร็ว

ขอให้มีความสุขกับชีวิตการทำงานครับ :)

Credit

ฝากข้อคิดเห็น

This site uses Akismet to reduce spam. Learn how your comment data is processed.