See the original English version of this article here
หลายคนคงมีความใฝ่ฝันที่จะเป็น Full-Stack Engineer และหากคุณอยากรู้ว่าการทำงานของ Full-Stack Engineer เป็นอย่างไร ในบทความนี้ คุณ Maksym Zavodniuk จะมาแบ่งปันข้อมูลเกี่ยวกับบทบาทในฐานะ Full-Stack Engineer ที่ Agoda กับ A Day in the Life ของ Full-Stack Engineer
สำหรับ Dynamic Landscape ของ Software Development บทบาทของ Full-stack Engineer ถือว่ามีความสำคัญอย่างมาก ผู้เชี่ยวชาญที่มีความสามารถรอบด้านเหล่านี้ ซึ่งเป็นทั้งสถาปนิกและผู้สร้างเว็บไซต์ สร้างสรรค์ User-facing Elements และในขณะเดียวกันก็จัดการ Server-side Processes ที่ทำให้ Digital Platforms ทำงานได้อย่างราบรื่น เป็นบทบาทที่ไม่เพียงต้องการทักษะที่หลากหลาย แต่ยังต้องมีกรอบความคิดในการแก้ไขปัญหาและมีความกระตือรือร้นที่จะเรียนรู้อย่างต่อเนื่อง
บทบาทของ Full-Stack Engineer
Full-stack Engineer ทำหน้าที่ในการออกแบบและ Implements Features ทั้งในส่วนงาน Back-end (BE) และ Front-end (FE) ควรมีความเชี่ยวชาญทั้งในภาษาและ Library ต่าง ๆ เช่น JavaScript, React, Angular และ Vue สำหรับ Front-end รวมทั้งจัดการ Interface Design ด้วย CSS สำหรับส่วนของ Back-end ควรจะมีความเชี่ยวชาญในการจัดการฐานข้อมูล เช่น MongoDB, SQL หรือ PostgreSQL ซึ่งอาจจะต้องพึ่งพา Back-end หรือ Front-end ทั้งนี้ขึ้นอยู่กับความเชี่ยวชาญของแต่ละคน
A Day in the Life ที่ Agoda
คุณ Maksym ทำงานกับ Agoda มา 3 ปีแล้ว และตอนนี้เขาอยู่ในทีม WhiteLabel Booking Creation งานในแต่ละวันของ Full-stack Engineer ในทีมของคุณ Maksym ที่ Agoda อาจแตกต่างกัน มีตั้งแต่หน้าที่ที่เน้น Back-end ไปจนถึงงาน Front-end ล้วน ๆ และบางครั้งก็มีทั้งสองส่วนผสมกัน บางครั้งยังเจาะลึกถึงการกำหนดค่า CI/CD Pipelines และทำความเข้าใจการทำงานภายในของ Service ต่าง ๆ
สำหรับงานบางอย่างที่จำเป็นต้องมีความเข้าใจในเชิงลึกเกี่ยวกับระบบ ในกรณีเช่นนี้มักจะเริ่มต้นด้วยงาน “การสืบสวน” ซึ่งเป้าหมายหลัก คือ การวิจัย, การรวบรวมข้อมูลเกี่ยวกับการจัดการข้อมูล, Flow ต่างๆ และวิธีการแสดงข้อมูลในฐานข้อมูล ในกรณีแบบนี้ ประสบการณ์ของ Back-end และ Front-end จะช่วยให้เห็นภาพรวมว่าทำไมจึงตัดสินใจในแนวทางนั้น ๆ
เมื่อเร็ว ๆ นี้ ทีมคุณ Maksym มีงาน “ป้องกันการจองซ้ำ” เพื่อให้แน่ใจว่าห้องประเภทเดียวกันจะไม่ถูกจองซ้ำ 2 ครั้งโดยใช้ชื่อเดียวกันในวันเดียวกัน งานนี้ขอให้มีการ Update ฐานข้อมูลเพื่อจัดเก็บข้อมูลของ User เพื่อการเปรียบเทียบ ซึ่งใน Front-end เองก็ยังมีการตรวจสอบและแจ้งคำเตือนอีกด้วย
Technical Skills และ Tool ต่าง ๆ
ในฐานะ Web Full-stack Engineer การเข้าใจ JavaScript ถือเป็นสิ่งสำคัญ นี่เป็นวิธีเดียวที่จะทำให้ Web Application ของคุณมี Dynamic และดูทันสมัย ซึ่งโดยทั่วไปแล้ว JavaScript ยังใช้เป็นภาษา Programming อีกด้วย เมื่อสร้าง Back-end Applications โดยเฉพาะสำหรับ Engineers ที่เปลี่ยนจาก Front-end Background ทำให้การใช้ Syntax เดียวกันข้าม Stack ค่อนข้างทำได้สะดวกกว่า อย่างไรก็ตาม การเป็น Full-stack Engineer ไม่ได้หมายความว่าคุณจะต้องยึดติดกับภาษา Programming เพียงภาษาเดียวเสมอไป
เพื่อรักษาสมดุล คุณ Maksym จะสลับระหว่างงาน Front-end และ Back-end ในงานที่ทำอยู่เป็นประจำ ในเวลาว่าง คุณ Maksym จะสนุกกับการทำ Projects ส่วนตัว โดยเขามักจะสำรวจเทคโนโลยีที่แตกต่างจากงานประจำวันของเขา
การสื่อสารและการทำงานร่วมกันอย่างมีประสิทธิภาพ
การสื่อสารที่ดีและการทำงานร่วมกันอย่างราบรื่นระหว่างทีม Front-end และ Back-end ถือเป็นสิ่งสำคัญ เราใช้เทคนิคการทำงานร่วมกัน เช่น การระดมความคิด, Design Reviews, การตรวจสอบ Tickets และการรักษาความชัดเจนผ่าน API Contracts เป็นต้น
การเติบโตและการเรียนรู้อย่างมืออาชีพ
คุณ Maksym ติดตามเทคโนโลยีใหม่ ๆ อยู่เสมอโดยการเข้าร่วมใน Tech Communities, การพูดคุยกับเพื่อนร่วมงานที่ Agoda, การเข้าเรียนหลักสูตรต่าง ๆ, การอ่านบทความ และการเพิ่มความมั่นใจด้วยแบบฝึกหัดหรือ Proof of Concept (PoC)
ช่วงเวลาสำคัญในสายอาชีพ
ช่วงเวลาสำคัญในการเดินทางของคุณ Maksym คือ งานแรกของเขาในตำแหน่ง Full-stack โดยที่คุณ Maksym ทำงานกับ MEAN Stack (MongoDB, Express, Angular และ Node) เป็นประสบการณ์ตรงที่ทำให้เขาได้เห็นการมีส่วนร่วมของเขา ที่ได้เกิดขึ้นจริงใน Development Stack ทั้งหมด ตั้งแต่ Front-end Form Validation ไปจนถึง Back-end Data Processing
คำแนะนำด้านอาชีพการทำงาน สำหรับ Full-Stack Engineers
หากคุณกำลังมองหางานในตำแหน่ง Full-stack Engineer คำแนะนำของคุณ Maksym คือการสร้างรากฐานที่แข็งแกร่งใน Front-end และ Back-end Development ประสบการณ์เชิงปฏิบัติเป็นสิ่งสำคัญ อย่ากลัวที่ผิดพลาด ให้ลองลงมือทำและเรียนรู้จากสิ่งเหล่านั้น อย่าอายที่จะเผชิญกับความท้าทาย ซึ่งสิ่งเหล่านี้จะเป็นโอกาสในการเพิ่มพูนความเชี่ยวชาญของคุณ
สุดท้ายนี้คุณ Maksym กล่าวว่า สำหรับเขาการทำงานในฐานะ Full-stack Engineer ที่ Agoda คือ การเดินทางในการเรียนรู้ การปรับตัว และการแก้ปัญหาอย่างต่อเนื่อง เป็นบทบาทที่ต้องการความหลงใหลในเทคโนโลยีและการอุทิศตนเพื่อการเรียนรู้อย่างสม่ำเสมอ ไม่ว่าจะเป็นการแก้ไขปัญหาฐานข้อมูลหรือสร้าง Responsive User Interface เส้นทางของ Full-stack Engineer นั้นเต็มไปด้วยโอกาสในการเติบโตและนวัตกรรมต่าง ๆ อีกมากมาย และทั้งหมดนี้ก็คือ A Day in the Life ของ Full-Stack Engineer
เมื่อ หางาน IT ให้ ISM Technology Recruitment เป็นอีกหนึ่งตัวช่วย เพื่อให้คุณได้ “ชีวิตการทำงานในแบบที่คุณต้องการ” เพียงส่ง Resume มาที่นี่
ISM เชี่ยวชาญในธุรกิจ IT Recruitment & IT Outsourcing โดยเฉพาะ ได้เปิดทำการมาแล้วกว่า 30 ปี มีพนักงานทุกสายและทุกระดับทางด้าน IT ที่ได้ร่วมงานกับลูกค้าองค์กรใหญ่ที่มีชื่อเสียงและบริษัทข้ามชาติมากมาย
Source: https://medium.com/