Hello, Worldวงแหวนเว็บ

2020 & 2021

2021-01-03

ก่อนหน้านี้ผมเองก็ได้ทำการ review ตัวเองในปี 2019 และ ตั้งเป้าหมายของปี 2020 เอาไว้ใน blog ที่ผ่านมา วันนี้ก็เลยมาเขียน blog แบบนี้อีกครั้ง แต่ครั้งนี้ขอรวบให้อยู่ใน blog เดียวกันไปเลย เพื่อไม่ให้สิ้นเปลืองเวลา (ที่จริงขี้เกียจแยกเขียน 555)

2020

Becoming a Software Developer

หากใครอ่าน blog ผมก่อนหน้านี้ที่เคยเขียนไว้ ก็จะทราบว่าผมเปลี่ยนสายงานจากการเป็นวิศวกรในสายงาน EPC (Engineering Procurement and Construction) ด้วยการไปลงเรียน Fullstack Javascript ของ Software Park ที่จัดร่วมกับ สมาคมโปรแกรมเมอร์ไทย ซึ่งก็ใช้เวลาเรียนราวๆ 4 เดือน แต่ที่จริงมันสั้นกว่านี้ เนื่องด้วย COVID-19 เลยต้องเปลี่ยนมาเรียนแบบ online และยืดเวลาออกไปนานกว่าปกติ หลังจากที่เรียนจบ ผมก็หางานและได้งานทำเลยที่ Vonder ตำแหน่ง Backend Developer นับตั้งแต่เริ่มงานปลายเดือนกรกฎาคมจนถึงวันนี้ ก็เป็นเวลาราวๆ 5 เดือน ก็พอจะประมวลเรื่องราว ข้อคิด เกร็ดเล็ก ๆ น้อย ๆ ได้ดังต่อไปนี้

  • งานจริง ซับซ้อนกว่าที่คิด ถึงแม้ว่าจะใช้เวลาราวๆ 5 เดือนในการเรียน codecamp (ที่จริงนานกว่านั้นอีก ถ้านับรวมกับการศึกษาด้วยตัวเอง) แต่พอมาเจองานจริง ยังรู้สึกว่าตัวเองปรับตัวได้ค่อนข้างลำบากพอสมควร กว่าจะเข้าใจ flow และ requirement ของงานที่รับผิดชอบอยู่ ทั้งนี้ด้วยโครงสร้างของ product ที่ทำอยู่เป็นลักษณะ microservice ซึ่งยังใหม่สำหรับผมมาก อีกอย่างนึงก็คือการเขียน query ของ MongoDB ในโลกจริงนั้น ลืม findOne หรือ findById ไปได้เลย 555 เพราะที่คุณต้องเจอคือการเขียนแบบ aggregate ซะส่วนใหญ่ ทำเอาผมเป๋ไปพักนึงเหมือนกัน

  • Stackoverflow is your best friend ก่อนหน้านี้เคยใช้ stackoverflow แค่ค้นหาคำตอบเวลาติด bug หรือหาวิธีเขียน code แบบต่างๆ แต่ไม่เคยเขียน post ถามเท่าไหร่เลย แต่เนื่องจากปัญหาต่างๆ ที่เจอในโลกจริง ตอนทำงานจริงที่ผมเจอแล้วไปต่อไม่ได้ โดยเฉพาะ query ของ MongoDB ก็เลยลองไป post ถามดูใน stackoverflow มีคนมาช่วยตอบ ช่วยอธิบายคำถามได้เป็นอย่างดี เป็น community ที่แข็งแกร่งจริงๆ 555

  • เพื่อนร่วมงานเก่งมากกกก ตอนแรกที่ผมมาใหม่เข้าใจว่าทุกคนที่นี่น่าจะ 25+ แต่ไม่ใช่เลย เป็นน้องๆ จบใหม่กันแทบทั้งนั้น แต่ความสามารถของแต่ละคนไม่เด็กเลย ไม่ว่าจะเป็นเรื่อง Node.js, React.js หรือ Infrastructure ของ product แต่ละคนมีความรับผิดชอบสูงมาก เป็นแรงกระตุ้นให้ผมต้องพัฒนาตัวเองได้เป็นอย่างดี

  • ไม่ใช่แค่เขียน Code แต่ต้องอ่าน Code คนอื่นด้วย เนื่องจากผมเข้ามารับช่วงต่องานของน้องอีกคนนึงที่ย้ายไปทำ product อีกตัว เลยต้องทำความเข้าใจ code base ที่น้องเค้าเขียนไว้เยอะเลยทีเดียว ตอนแรกๆ ก็ทำได้ค่อนข้างช้า เพราะนอกจากจะต้องเข้าใจ requirement ของ product แล้ว แต่ก็ต้องมาทำความเข้าใจกับ code อีก แต่พอนานไป ก็เริ่มจับต้นชนปลายได้ดีขึ้น หา bug และแก้ไขได้เร็วขึ้น อันนี้ถือว่าเป็น skill ที่ผมเองคิดว่าพัฒนาขึ้นมาได้ค่อนข้างดี

  • เขียน code ให้ใช้งานได้ก่อน คือก่อนหน้านี้เวลาได้ที่ผมได้รับมอบหมายงานอะไรก็ตาม ผมมักจะไป focus ที่จะเขียนให้สวยบ้าง, reuse ได้บ้าง ซึ่งมันทำให้บางครั้งผมต้องนั่งเสียเวลาปรับแต่ง code ตัวเองในเรื่องที่ไม่ค่อยจำเป็นนักสักเท่าไหร่ จนกระทั่งมาอ่าน บทความ นี้จบ ก็รู้สึกคล้อยตามว่า เออว่ะ ทำไมไม่ focus ให้มันใช้งานได้ก่อน ให้ทีมสามารถ deliver งานก่อน จากนั้นค่อยหาเวลา refactor อีกที

COVID-19

ผมลาออกในช่วงที่กำลังมีข่าวเริ่มระบาดที่จีน ตอนแรกก็คิดว่าไม่น่าจะร้ายแรง ที่ไหนได้ กระทบทุกอย่างในชีวิตเลยทีเดียว 555 ยิ่งคนที่เดือดร้อนกว่าผม ยิ่งหนักเข้าไปใหญ่ โรคระบาดครั้งนี้เปลี่ยนแปลงการดำเนินชีวิตอะไรหลายๆ อย่าง รัฐบาลสั่งให้ Lock Down ห้ามออกจากบ้านถ้าไม่จำเป็น บริษัทหลายแห่ง เปลี่ยนมาให้พนักงานทำงานที่บ้านแทน (Work From Home) แต่ก็มีหลายที่ปรับตัวไม่ได้ เจ๊งไปเลยก็มีโดยเฉพาะอุตหกรรมท่องเที่ยว หรือธุรกิจ SMEs ต่างๆ พอถึงช่วงกลางปีก็เริ่มผ่อนคลาย ยอดผู้ติดเชื้อลดลงจนเป็นศูนย์ สถานการณ์ก็เริ่มเป็นปกติ แต่ที่ไหนได้ ปลายปีเจอระบาดอีก นี่ก็ยังไม่รู้เลยว่าจะจัดการกันยังไง

Politics

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

Life

เป็นอีกปีที่รู้สึกว่าค่อนข้างเครียดกับปัญหาต่างๆ พอสมควร แต่ก็รู้สึกว่ายังจัดการได้ หลักๆ ก็น่าจะเป็นเรื่องเงิน เพราะว่าพอเปลี่ยนสายงานใหม่ รายได้ก็หายไปเยอะพอสมควรเทียบกับปีก่อน ๆ แต่ถ้าตัดรายจ่ายที่ไม่จำเป็นออกไป ลำบากขึ้นนิดหน่อย แต่ก็ยังพออยู่ได้ แต่ที่น่าเป็นห่วงคือสุขภาพของตนเอง ถึงแม้ว่าปีนี้จะไม่ป่วยเลย แต่ก็ไม่ค่อยได้ออกกำลังกายเหมือนเมื่อก่อน น้ำหนักขึ้นมาราว ๆ 5 kg. ได้ 😭 ปีนี้คงต้องแบ่งเวลาตัวเองให้ดีกว่า ให้มีเวลาออกกำลังกายต่อสัปดาห์มากกว่าเดิม

2021

Software Architecture & Design Patterns

เป็นเรื่องหลัก ๆ เลยที่ผมต้องการศึกษาให้ลงลึกมากกว่าเดิม เพราะรู้สึกว่าการที่พัฒนา software ให้ดีขึ้น ยั่งยืนและมีประสิทธิภาพ ต้องเข้าใจเรื่องพวกนี้ อีกทั้งผมเองต้องการพัฒนาตัวเองเพื่อเป็นนักพัฒนา software ที่ดีกว่าเดิม ตอนนี้ก็พอมีหนังสือเกี่ยวกับเรื่องพวกนี้อยู่บ้าง เหลือแค่มีเวลาอ่านมันเท่านั้น 555 ที่เล็งๆ ไว้ก็มี

Learn new Programming Language

จากปีก่อนที่เคยตั้งเป้าหมายไว้ ปีนี้คิดว่าจะ focus เรื่องเดิม แต่ว่าจะศึกษาให้ลึกลงไปอีก

  • Typescript พอได้ concept คร่าวๆ แต่ต้องศึกษาเพิ่มเติมพวก Decorator กับ Generic อีกสักหน่อย
  • GraphQL เหลือ subscription ที่ต้องศึกษาเพิ่มเติม
  • Docker & Kubernetes ต้องศึกษาใหม่ เพราะใช้เป็นแค่ผิวๆ เท่านั้น
  • React Native (เอาไว้ก่อนนนนน last priority)
  • Golang เริ่มศึกษาจริงๆ จังสักที
  • Ruby

Contribute more Open Source Software

ตั้งใจไว้หลายทีละ แต่ก็ไม่ได้ลงมือทำจริงๆ จังๆ สักที ปีนี้ตั้งเป้าไว้สัก 4-5 repositories ความคาดหวังคือการอ่าน source code ของคนอื่นและ design patterns ของแต่ละ software ที่ถูกสร้างขึ้นมา จะสามารถพัฒนาการเป็น software developer ของตนเองได้เป็นอย่างดี

ขอให้ปี 2021 เป็นปีที่ดีของทุกๆคนนะครับ

Happy New Year 2021 and Happy Coding :)

Created by Teerapat Prommarak, © 2019