คำบรรยายลักษณะงาน
ทำงานแบบไฮบริด (ทำงานที่ออฟฟิศ 1-2 วันต่อสัปดาห์)
Job Function:
ประเภทงาน:
Programmer / Developer
ประเภทงานย่อย:
Back End Developer
จำนวนตำแหน่งที่เปิดรับ:
1
เงินเดือน (บาท):
80,000 - 100,000 (ขึ้นอยู่กับทักษะและประสบการณ์)
ระดับตำแหน่งงาน:
Senior Level
Job Description:
- ออกแบบ พัฒนา และบำรุงรักษาบริการแบ็กเอนด์โดยใช้ และ สำหรับเว็บแอปพลิเคชัน
- ปรับปรุงระบบที่มีอยู่ซึ่งซัพพลายเออร์ใช้งานอยู่ และมีส่วนร่วมในโครงการพัฒนาระบบใหม่
- สร้างและบำรุงรักษา RESTful API ที่ปรับขนาดได้และมีประสิทธิภาพสูง
- ประยุกต์ใช้สถาปัตยกรรม MVC และหลักการ Dependency Injection ในการออกแบบแอปพลิเคชัน
- ผสานรวมกับฐานข้อมูล (PostgreSQL, Oracle) และเขียนคำสั่ง SQL ที่มีประสิทธิภาพและเหมาะสมที่สุด
- ใช้งานกลไกการจัดการข้อผิดพลาด การบันทึก และการตรวจสอบทั่วโลก
- พัฒนากระบวนการแบบอะซิงโครนัสและไม่บล็อกเพื่อปรับปรุงประสิทธิภาพของระบบ
- ผสานรวมตัวกลางส่งข้อความ เช่น Kafka หรือ RabbitMQ สำหรับสถาปัตยกรรมแบบขับเคลื่อนด้วยเหตุการณ์
- ใช้งานความปลอดภัยของ API รวมถึง Basic Auth, API Key และ JWT กับผู้ให้บริการข้อมูลประจำตัว (เช่น Keycloak)
- สร้างและบำรุงรักษาเอกสารประกอบ API โดยใช้ Swagger หรือ OpenAPI
- พัฒนาและบำรุงรักษาการทดสอบหน่วยและการทดสอบการบูรณาการโดยใช้ Supertest หรือเฟรมเวิร์กที่คล้ายกัน
- ทำงานร่วมกับทีมงานข้ามสายงานและทีมงานต่างประเทศ (เช่น ทีมงานจากอินเดีย) เพื่อให้มั่นใจว่าการส่งมอบงานเป็นไปอย่างราบรื่น
- เข้าร่วมในการตรวจสอบโค้ดและตรวจสอบให้แน่ใจว่าได้ปฏิบัติตามมาตรฐานการเขียนโค้ดและแนวปฏิบัติที่ดีที่สุด
- มีส่วนร่วมในการจัดทำเอกสารทางเทคนิค รวมถึงการออกแบบระบบ แผนภาพลำดับ และข้อกำหนด
Qualifications & Requirements:
- จบการศึกษาระดับปริญญาตรีในสาขาวิทยาการคอมพิวเตอร์ วิศวกรรมซอฟต์แวร์ เทคโนโลยีสารสนเทศ หรือสาขาที่เกี่ยวข้อง
- มีประสบการณ์อย่างน้อย 8 ปีในการพัฒนาแบ็กเอนด์โดยใช้
- มีความเชี่ยวชาญในเฟรมเวิร์ก และ เป็นอย่างดี
- มีความเข้าใจอย่างถ่องแท้ในสถาปัตยกรรม MVC และ Dependency Injection
- ประสบการณ์การใช้เครื่องมือ ORM (Sequelize หรือ Prisma) และทักษะ SQL ที่แข็งแกร่ง (PostgreSQL, Oracle)
- ประสบการณ์ในการสร้าง RESTful API พร้อมระบบรักษาความปลอดภัย (JWT, API Key, OAuth/Keycloak)
- ประสบการณ์การเขียนโปรแกรมแบบอะซิงโครนัสและ Message Broker (Kafka, RabbitMQ)
- คุ้นเคยกับการจัดทำเอกสาร API (Swagger/OpenAPI) และการทดสอบ (เช่น Supertest)
- มีความรู้เกี่ยวกับแพลตฟอร์มคลาวด์และแนวทางการใช้งานสมัยใหม่ (AWS/Azure, CI/CD, Docker/Kubernetes) (จะได้รับการพิจารณาเป็นพิเศษ)
- มีประสบการณ์การใช้เครื่องมือตรวจสอบ/บันทึกข้อมูลและ APM (เช่น Datadog, ELK) (จะได้รับการพิจารณาเป็นพิเศษ)
- ภาษาไทยระดับเจ้าของภาษา และมีความรู้ภาษาอังกฤษที่ดี (สามารถอ่านเอกสารและเข้าร่วมการประชุมทางเทคนิคได้)