วิศวกรออกแบบซอฟแวร์ /Software Design Engineer
Salary: ฿30,000 – ฿45,000 per month
ตำแหน่ง : Software Design Engineer (วิศวกรออกแบบซอฟต์แวร์)
รับผิดชอบการออกแบบ พัฒนา ทดสอบ ติดตั้ง และปรับปรุง Software สำหรับเครื่องจักรอุตสาหกรรมให้ตรงตามความต้องการของลูกค้า โดยครอบคลุมตั้งแต่การวิเคราะห์ Requirement การออกแบบระบบ การพัฒนาโปรแกรม การทดสอบ การติดตั้งใช้งานจริง การถ่ายทอดองค์ความรู้ และการสนับสนุนทีมงานที่เกี่ยวข้อง เพื่อให้เครื่องจักรทำงานได้อย่างมีประสิทธิภาพ มีเสถียรภาพ และสามารถส่งมอบได้ตามแผนงานของบริษัท
บทบาทหน้าที่ในสายงาน (Key Responsibilities)
1. วิเคราะห์ Requirement และวางแผนการพัฒนา Software
- ศึกษาความต้องการของลูกค้า (User Requirement)
- วิเคราะห์กระบวนการทำงานของเครื่องจักร
- จัดทำ Software Specification
- จัดทำ แผนการสร้าง และ พัฒนา Software ในแต่ละโครงการ
- กำหนด Software Module และ Hardware ที่เกี่ยวข้อง
- จัดทำ Requirement Document เพื่อใช้ในการพัฒนา
2. ออกแบบและพัฒนา Software
- ออกแบบ Architecture ของ Software พร้อมผังของโครงสร้างทั้งหมด
- พัฒนาโปรแกรมด้วยภาษาและเครื่องมือที่บริษัทกำหนด
- พัฒนา GUI
- Database
- Machine Vision
- Motion Control
- Communication Protocol กับ PLC แบรนด์ต่างๆ
- HMI
- AI / IOT/ Image Processing
- ควบคุม Version ของ Software จัดเก็บอย่างเป็นระบบ
3. ทดสอบและตรวจสอบ Software
ดำเนินการทดสอบและตรวจสอบซอฟต์แวร์ให้ครบทุกขั้นตอนตามมาตรฐานการพัฒนา เพื่อให้มั่นใจว่าระบบสามารถทำงานได้ถูกต้อง มีความเสถียร ปลอดภัย และพร้อมใช้งานจริง โดยครอบคลุมการทดสอบ ดังนี้
- Functional Test : ตรวจสอบว่าฟังก์ชันทุกส่วนของโปรแกรมทำงานได้ตรงตาม Requirement
- Boundary Test : ตรวจสอบการทำงานเมื่อป้อนค่าต่ำสุด สูงสุด หรือค่าที่อยู่นอกขอบเขตที่กำหนด
- Exception Handling Test : ตรวจสอบการแจ้งเตือนและการจัดการเมื่อเกิดข้อผิดพลาดระหว่างการทำงาน
- Unit Conversion Test : ตรวจสอบความถูกต้องของการคำนวณและการแปลงหน่วยข้อมูล
- Simulation Test : ทดสอบการทำงานของโปรแกรมในสภาพแวดล้อมจำลองก่อนติดตั้งจริง
- Robustness Test : ตรวจสอบความเสถียรของโปรแกรมในการรองรับการใช้งานผิดวิธีหรือข้อมูลที่ไม่ถูกต้อง
- Consistency Test : ตรวจสอบความเสถียรและความสม่ำเสมอของผลลัพธ์จากการทำงานซ้ำหลายครั้ง
- Site Acceptance Test (SAT) : ทดสอบการทำงานของโปรแกรมร่วมกับเครื่องจักรจริง ณ สถานที่ติดตั้ง ก่อนการส่งมอบให้ลูกค้า
รวมถึงวิเคราะห์และแก้ไขข้อบกพร่อง (Bug) ที่พบระหว่างการทดสอบ เพื่อให้ซอฟต์แวร์มีคุณภาพและพร้อมใช้งานจริง
4. ติดตั้งและสนับสนุนการใช้งาน
- ติดตั้ง Software บนเครื่องจักร
- Calibration
- Commissioning
- สนับสนุนการทดลองผลิต
- แก้ไขปัญหาในช่วง Start-up
- สนับสนุนทีม Service และทีม Assembly
5. ถ่ายทอดองค์ความรู้และจัดทำเอกสาร
- จัดทำ Software Documentation
- จัดทำคู่มือการใช้งาน
- จัดทำ Training Material
- Internal Training
- Customer Training
- Backup Source Code และข้อมูลทั้งหมดก่อนส่งมอบ
6. สนับสนุนการปรับปรุงและพัฒนาเทคโนโลยี
- ศึกษาเทคโนโลยีใหม่
- พัฒนา Reusable Module
- ปรับปรุงประสิทธิภาพ Software
- ลดเวลาในการพัฒนา
- เสนอแนวทางการพัฒนาอย่างต่อเนื่อง
คุณสมบัติ
- ปริญญาตรี วิศวกรรมคอมพิวเตอร์ วิทยาการคอมพิวเตอร์ วิศวกรรมระบบควบคุม เมคคาทรอนิกส์ หรือสาขาที่เกี่ยวข้อง
- มีประสบการณ์พัฒนา Software สำหรับเครื่องจักรอุตสาหกรรมอย่างน้อย 2-5 ปี
- หากมีประสบการณ์ด้าน Machine Vision หรือ Industrial Automation จะได้รับการพิจารณาเป็นพิเศษ
- มีความรู้พื้นฐานที่จำเป็น เช่น
1) Software Development : C#, .NET, Visual Studio
2) Database : SQL Server, MySQL
3) Machine Vision : Cognex VisionPro, QuickBuild
4) Automation : PLC Communication, Ethernet/IP, Modbus, OPC-UA (ถ้ามี)
5) Industrial Machine : Machine Control, Servo, Motion, IO
6) Software Testing : Functional Test, Simulation, Debugging
7) ภาษาอังกฤษ : อ่าน Technical Manual ภาษาอังกฤษได้, สื่อสาร Email กับ Supplier ต่างประเทศได้
- คิดวิเคราะห์อย่างเป็นระบบ
- แก้ไขปัญหาเฉพาะหน้าได้ดี
- เรียนรู้เทคโนโลยีใหม่ได้รวดเร็ว
- ทำงานร่วมกับหลายฝ่ายได้
- รับผิดชอบงานจนสำเร็จ
- มีแนวคิดในการปรับปรุงงานอย่างต่อเนื่อง