ในการสร้าง Software ล้วนต้องเกี่ยวข้องกับหลายขั้นตอนทั้งส่วนของการ Design, Test, Research และ Programming แต่หากจะแบ่งประเภทของ Developer จากพื้นฐานทักษะที่ใช้ในการพัฒนาเรื่อง Design, Database และจัดการระหว่าง Function ต่างๆ เราสามารถแบ่งเป็น Front-end, Back-end และ Middleware Developers เรามาดูกันว่าพวกเขามีความแตกต่างกันในเรื่องใดบ้าง
Front-End Developer
สำหรับส่วนนี้เป็นส่วนของ Presentation ซึ่งเป็นส่วนที่ End user จะสามารถโต้ตอบด้วย ส่วนนี้เป็นส่วนของ User Interface ที่แสดงให้เห็นว่ามีองค์ประกอบใดบ้างของ Software หรือ System ที่จะสามารถมองเห็นได้ และวิธีที่ End user จะมีปฏิสัมพันธ์กับ System
จากที่ Front end คือส่วนที่ End user จะสามารถมองเห็นได้ Front End Developer ควรต้องมีความชำนาญใน Web Design และ Software ที่เกี่ยวกับ Graphic อย่าง Photoshop เป็นต้น โดยปกติ Code ที่ใช้ใน Front-End มีทั้ง HTML, CSS และ JavaScript ซึ่ง Code เหล่านี้จะช่วยให้ Developer สามารถสร้างส่วนที่ End user สามารถมองเห็นได้ ซึ่งประกอบด้วย Menu, Folder, Button และ Screen layouts สำหรับตำแหน่งงานที่เกี่ยวข้องกับส่วนนี้ของ Front-End จะเป็น Web Designer ซึ่งถือเป็นคนที่มีความเชี่ยวชาญในเรื่องของการออกแบบ ว่าจะให้ “Look” ของ Website มีหน้าตาออกมาอย่างไร
Back-End Developer
สำหรับส่วนนี้จะเป็นส่วนที่ End user ไม่สามารถมองเห็นได้จากภายนอก โดยส่วนใหญ่แล้ว งานส่วนนี้จะเกี่ยวข้องกับ Database ที่ทำการควบคุม Software และจะไม่ได้แสดงให้กับ End user ได้เห็น หากมีการเปลี่ยนแปลงในส่วนนี้จะส่งผลต่อโดยรวมของ Look และ Function ของ Software หรือ System ในส่วนนี้จะ Support ในเรื่องของ Action ต่างๆ จาก End user เช่น การคลิกที่ปุ่ม, การ Request Data/Information หรือการออกคำสั่งใดเพื่อดำเนินการใดๆ ก็ตาม นอกจากนี้ยังมีการ Response ต่อ Action หรือคำสั่งขของ End user และ Submit ข้อมูลที่จำเป็นอีกด้วย
Code ที่ถูกใช้ในส่วนของ Back-End ก็มีอย่างเช่น PHP, Python, C++ และ .Net นอกจากนี้ยังมีความต้องการ Tools ที่จะสามารถติดต่อกับ Database ได้อีกด้วย จุดประสงค์ของสิ่งนี้ก็เพื่อช่วย Developer ในการสร้าง Application ที่จะสามารถค้นหาและนำเสนอข้อมูลได้อย่างรวดเร็ว สำหรับคนที่พัฒนางานในส่วนนี้ก็คือ Programmer นั่นเอง
ขอยกตัวอย่างในการสร้าง Website, งาน Back-End จะเป็น Web Programmer หรือ Developer ซึ่ง Web Developer จะต้องจัดการกับสิ่งต่างๆ เช่น Database Security, Content Management และ Website Structure เป็นต้น และยังมี Webmaster ที่ทำหน้าที่เป็นทั้ง Web Designer และ Web Developer ไปด้วยในตัว
Middleware Developer
งานส่วนนี้จะอยู่ตรงกลางของ Application, Software หรือ System ซึ่งจะทำหน้าที่เป็นเหมือนสะพานเชื่อมหรือผูกงานส่วนของ Front-End และ Back-End เข้าด้วยกัน นอกจากนี้อาจยังสามารถกล่าวได้ว่า มันเป็นเหมือนกาวที่คอยยึด User Interface และ Data เข้าไว้ด้วยกัน โดยทั่วไปงานส่วนนี้จะเกี่ยวกับเรื่องของ Logic เป็นหลัก สำหรับ Code ที่ใช้ในส่วนของ Middleware ก็มีอย่างเช่น Java และ C# ส่วน Communication Tools ที่ใช้ใน Application ก็มี SOAP และ JSON
จากการที่ Middleware โดยทั่วไปแล้ว มักจะเป็น Software ที่อยู่ใน Software ดังนั้น ตำแหน่งที่เกี่ยวข้องกับส่วนนี้ก็จะเป็น Middleware Analyst ซึ่งจะสามารถจัดการกับ Systems และ Automated Backup โดย Middleware Analyst จะต้องมีความรู้เป็นอย่างดีเกี่ยวกับ Middleware Technology
สรุป
ทั้ง 3 ส่วนที่กล่าวถึง ถือว่ามีความจำเป็นต่อการสร้าง Application, Software หรือ System โดยทั่วไปแล้ว Software Developer ส่วนใหญ่จะมีความเชี่ยวชาญเฉพาะด้านเพียงอย่างเดียว แต่ก็มีหลายคนที่มีความรู้เพียงพอเกี่ยวกับงานในส่วนอื่นๆ ที่เหลือด้วย ซึ่งคนที่มีความรู้และสามารถทำงานได้ในทั้ง 3 ส่วน เราจะเรียกว่า Full Stack Developer นั่นเอง แต่หลายๆ ครั้งคุณอาจจะพบว่ามันไม่ได้มีการแยกส่วนกันทำอย่างชัดเจน โดยเฉพาะ Front-End กับ Back-End แต่ถึงอย่างไรทั้ง 3 ส่วนที่กล่าวมา ก็ถือเป็นส่วนผสมที่สำคัญของ Software และ System อยู่ดี
ISM Technology Recruitment Ltd. (#1 Tech Recruiter in Thailand) เราเชี่ยวชาญในธุรกิจ IT Recruitment & IT Outsourcing โดยเฉพาะ เปิดทำการกว่า 25 ปี มีพนักงานทุกสายและทุกระดับทางด้าน IT ที่ได้ร่วมงานกับลูกค้าองค์กรใหญ่ที่มีชื่อเสียงและบริษัทข้ามชาติมากมาย หากคุณเป็นคน IT ที่อยากทำงานท้าทายและร่วมงานกับองค์กรชั้นนำ สามารถฝากประวัติการทำงาน (Resume) ของคุณไว้กับ ISM ได้ที่ https://www.ismtech.net/submit-your-resume แล้วคุณจะพบว่าอนาคตและโอกาสก้าวหน้ากำลังรอคุณอยู่