หน้าที่และความรับผิดชอบของแต่ละตำแหน่งในทีมพัฒนา Software
จากข้อมูลในปี 2565 พบว่ายอดขาย Application ทั่วโลกอยู่ที่ 469,198 พันล้านดอลลาร์ และในปีนี้ 2566 ได้มีการคาดการณ์ว่ายอดขายจะเพิ่มขึ้นเป็น 526,259 พันล้านดอลลาร์ และจากสถิติเมื่อเดือนมกราคม 2566 พบว่าคนไทยใช้งานอินเทอร์เน็ตเฉลี่ย 8.06 ชั่วโมง/วัน ซึ่งนับเป็นการใช้เวลา ⅓ ของวันเลยทีเดียว จะเห็นได้ว่าตลาดในการพัฒนา Website และ Application เติบโตขึ้นในทุก ๆ ปี บทความนี้จะเป็นการอธิบายถึงหน้าที่และความรับผิดชอบของแต่ละตำแหน่งในทีมพัฒนา Software ว่ามีตำแหน่งใดบ้าง แต่ละหน้าที่นั้นรับผิดชอบงานส่วนใดบ้าง สำหรับตำแหน่งหน้าที่และความรับผิดชอบของสมาชิกในทีมในการทำ Software แบ่งได้คร่าว ๆ ดังนี้
Business Development / Sales
Business Development หรือเรียกสั้น ๆ ว่า BD ก็คือนักพัฒนาธุรกิจ เป็นตำแหน่งที่ช่วยเพิ่มยอดขาย ลดต้นทุนด้วยการพัฒนาธุรกิจขององค์กรให้ดียิ่งขึ้น หรือปรับธุรกิจให้เหมาะสมกับลูกค้าแต่ละเจ้ามากขึ้น รวมไปถึงการแสวงหาโอกาสทางธุรกิจใหม่ ๆ ให้กับทางบริษัทอีกด้วย สำหรับหน้าที่ที่ต้องรับผิดชอบของตำแหน่งงาน Business Development มีหน้าที่หลัก ๆ ดังนี้
-
ทำงานร่วมกับหลายทีม ไม่ว่าจะเป็นทีม Marketing, Operation รวมไปถึงทีม Project Manager เพื่อเป็นการรวบรวมข้อมูลจากแต่ละทีมมาวิเคราะห์ รวมถึงส่งต่อข้อมูลโปรเจกต์ต่าง ๆ ที่ปิดการขายมาได้ให้กับทีม Project Manager รับช่วงต่อ
-
ร่วมวางแผนแนวทางด้านธุรกิจให้กับบริษัท ทั้งในส่วนของการขยายตลาดเพื่อเพิ่มโอกาสที่จะเข้าถึงลูกค้ารายใหม่ และการรักษาฐานลูกค้าเดิมที่มีอยู่ให้แก่บริษัท
-
นำเสนอขายผลิตภัณฑ์ของบริษัท รวมถึงต่อรองเจรจาและปิดการขาย
UX/UI Designer
UX หรือ User Experience คือประสบการณ์ของผู้ใช้งาน ส่วน UI หรือ User Interface คือส่วนที่เชื่อมถึงผู้ใช้งาน UX/UI Designer เป็นตำแหน่งที่รับผิดชอบในการออกแบบ Product หรือ Software ให้ตอบสนองตามโจทย์ที่ลูกค้ากำหนดให้ออกมาสวยงาม ง่ายต่อการใช้งาน และมีประสบการณ์การใช้งานที่ดี สำหรับหน้าที่ที่ต้องรับผิดชอบของตำแหน่งงาน UX/UI Designer มีหน้าที่หลัก ๆ ดังนี้
-
นำ Requirement หรือ Pain Point จากลูกค้ามาออกแบบโดยใช้หลักการออกแบบต่าง ๆ เพื่อสร้างประสบการณ์ที่ดีในการใช้งานสินค้าหรือบริการ
-
ออกแบบโครงร่าง (Wireframe), ม็อคอัพ (Mockup) หรือต้นแบบ (Prototype)
-
ประสานงานกับทีม Developer และ Project Manager หรือหน่วยงานที่เกี่ยวข้องเพื่ออธิบายการออกแบบและ Support ในแต่ละขั้นตอนของการพัฒนา
Project Manager
Project Manager หรือเรียกสั้น ๆ ว่า PM คือผู้จัดการโครงการ มีหน้าที่วางแผน ดำเนินการติดตามโครงการ และส่งมอบโครงการได้อย่างมีประสิทธิภาพตามระยะกำหนดเวลาที่วางเอาไว้ภายในทรัพยากร และงบประมาณที่กำหนด สำหรับหน้าที่ที่ต้องรับผิดชอบของตำแหน่งงาน Project Manager มีหน้าที่หลัก ๆ ดังนี้
-
วางแผนงานอย่างละเอียดและรอบคอบเพื่อดำเนินการตามแผนโครงการ โดยแก้ไขและปรับเปลี่ยนแผนการตามความเหมาะสม หรือต่อรองให้มีการแก้ไขน้อยที่สุด แต่ยังตอบโจทย์ความต้องการของลูกค้าเพื่อให้อยู่ในระยะเวลาและงบประมาณที่ได้กำหนดเอาไว้
-
ติดต่อประสานงานกับลูกค้า และสมาชิกในทีมเพื่อสื่อสารให้เข้าใจตรงกันถึงความคืบหน้าของงาน และสิ่งที่ส่งมอบในแต่ละครั้ง
-
จัดการเอกสาร และตรวจสอบให้แน่ใจว่าเอกสารที่ต้องส่งมอบทั้งหมดในโครงการมีความครบถ้วนและถูกต้องตามที่ตกลงไว้กับลูกค้า
Software Developer
Software Developer หรือนักพัฒนาซอฟต์แวร์ คือผู้ที่ทำหน้าที่ในการออกแบบ การวางแผนพัฒนาสินค้า หรือบริการ ผ่านการเขียนโปรแกรมโดยใช้ภาษาโปรแกรมใดภาษาหนึ่ง นอกจากการเขียนโปรแกรมแล้ว สิ่งที่ต้องคำนึงถึงเพิ่มเติมคือนักพัฒนาจะต้องมีความสามารถในพัฒนาสินค้า หรือบริการได้ตามที่กำหนดไว้เพื่อให้ได้ Software ที่ตรงตามความต้องการในเวลาที่เหมาะสม
ซึ่ง Software Developer สามารถแบ่งออกเป็นตำแหน่งหลัก ๆ ได้อีกเป็น Front-End Developer/Application Developer, Back-End Developer และ Software Tester แต่ละตำแหน่งมีหน้าที่หลัก ๆ ดังนี้
Front-End Developer / Application Developer
-
นักพัฒนาซอฟต์แวร์ที่นำการออกแบบที่ได้รับจาก Designer มาแปลงให้ออกมาในรูปแบบ Code เพื่อสร้าง Website หรือ Application ให้สามารถใช้ได้ในแพลตฟอร์มหรืออุปกรณ์ต่าง ๆ โดยคำนึงถึงความเร็วและการแสดงผลตามที่โครงการกำหนด และทำงานร่วมกับ Back-End Developer ในการพัฒนา Website หรือ Application ให้ออกมาใช้งานได้ตามต้องการ
-
ขยายความเพิ่มเติม Front-End คือส่วนหนึ่งของ Website หรือ Application ที่ผู้ใช้งานมองเห็นได้ หรือสามารถโต้ตอบกับมันได้ เช่น กดปุ่ม กดเมนู แสดงผลตัวหนังสือ หรือรูปภาพต่าง ๆ
Back-End Developer
-
นักพัฒนาซอฟต์แวร์ที่รับผิดชอบในการพัฒนาส่วนของระบบหลังบ้าน (หรือก็คือในส่วน Back-End)โดยสร้างและควบคุมดูแลระบบที่ทำงานภายใน Website หรือ Application เช่น การเชื่อมต่อกับฐานข้อมูล การจัดการกับข้อมูลผู้ใช้ การสร้างฟังก์ชันการทำงานต่าง ๆ ซึ่งส่วนหลักจะเป็นระบบฐานข้อมูล (Database) ที่ใช้เก็บข้อมูล และเซิร์ฟเวอร์ (Server) ที่ใช้จัดการกับการส่งคำขอ (Request) และการตอบกลับ (Response) รวมถึงการประมวลผลเพื่อให้ผู้ใช้งานสามารถใช้งาน Website หรือ Application ได้อย่างมีประสิทธิภาพตรงตามที่ออกแบบไว้ และทำงานร่วมกับ Front-End Developer ในการพัฒนา Website หรือ Application ให้ออกมาใช้งานได้ตามต้องการ
Software Tester
-
Software Tester คือนักทดสอบระบบซอฟต์แวร์ ซึ่งหลังจากที่ทีม Developer พัฒนา Software ขึ้นมาแล้ว ก่อนจะส่งมอบให้ลูกค้า หรือปล่อย Software ออกไปให้ผู้ใช้งานได้ใช้จริง Software Tester จะต้องทำการทดสอบระบบเพื่อค้นหาจุดที่ไม่ตรงตาม Requirement ของลูกค้า หรือจุดที่ยังเป็นข้อผิดพลาดของ Software ที่อาจจะทำให้เกิดปัญหาเพื่อส่งเรื่องให้กับทีม Developer เพื่อทำการแก้ไข ซึ่งก่อนจะทำการทดสอบได้ Software Tester จะต้องทำการออกแบบ Test Cases และส่งให้ลูกค้าตรวจสอบก่อนว่าอ่านแล้วเข้าใจหรือไม่ จากนั้นมาสรุปการทดสอบให้กับผู้ที่เกี่ยวข้องรับทราบ
อย่างไรก็ตามจำนวนคนและตำแหน่งหน้าที่ความรับผิดชอบนั้นอาจมีการเปลี่ยนแปลงไปตามขนาดของโปรเจกต์ หรือ Job Description ของแต่ละบริษัท หวังว่าบทความนี้จะเป็นประโยชน์สำหรับคนที่สนใจทำงานตำแหน่งในโปรเจกต์พัฒนา Software หรือเป็นผู้ว่าจ้างในการทำ Software ก็ตาม
แหล่งอ้างอิง
-
https://www.seo-winner.com/Mobile-App-Development-Trends-for-2023
-
https://thegrowthmaster.com/trends/digital-trend-statistic-2023
-
https://blog.skooldio.com/ux-ui-designer-ultimate-guide/
-
https://aigencorp.com/project-manager-resposponsibility-skill-and-salary/#:~:text=Project%20Manager
-
https://th.jobsdb.com/th/career-advice/article/software-developer