Role and Responsibilities
Implement & Maintain DevOps Infrastructure (On-Premise & Cloud):
- ออกแบบ, ติดตั้ง, และบำรุงรักษาระบบ DevOps infrastructure ทั้งในสภาพแวดล้อม on-premise และ cloud(AWS)
- ดูแลระบบ CI/CD pipeline สำหรับการสร้าง, ทดสอบ, และ deploy ระบบอย่างต่อเนื่องทั้งบนเซิร์ฟเวอร์ on-premise และ cloud
CI/CD Pipeline:
- ออกแบบและพัฒนากระบวนการ CI/CD pipeline โดยใช้เครื่องมือ GitLab CI, Argo CD
- ปรับปรุงและเพิ่มประสิทธิภาพ pipeline สำหรับการทดสอบ, การเตรียมสภาพแวดล้อม, และการ deploy ระบบทั้งใน on-premise และ cloud
- แก้ไขปัญหาที่เกิดขึ้นในกระบวนการ CI/CD และรับรองการ deploy เป็นไปอย่างราบรื่น
Monitoring & Logging System:
- ติดตั้งและดูแลระบบ Monitoring เพื่อการตรวจสอบสถานะของระบบและแอปพลิเคชันที่ทำงานในองค์กร โดยใช้เครื่องมือเช่น Prometheus, Telegraf, InfluxDB, Grafana, Netdata, Sentry, Graylog, หรือเครื่องมืออื่น ๆ
- ออกแบบระบบ Monitoring ที่รองรับทั้งสองสภาพแวดล้อมและสามารถให้ข้อมูลเชิงลึกในการวิเคราะห์ปัญหาของระบบ
Cloud Infrastructure Management (AWS):
- ออกแบบและดูแลโครงสร้างพื้นฐานบน cloud (AWS) เช่น EC2, S3, RDS, Lambda และบริการอื่น ๆ
- บริหารจัดการความปลอดภัย, การควบคุมการเข้าถึง และการบริหารจัดการการตั้งค่าบริการ Cloud บน AWS
- ปรับปรุงและพัฒนาโครงสร้างพื้นฐานบน AWS เพื่อเพิ่มประสิทธิภาพและลดค่าใช้จ่าย
On-Premise Infrastructure:
- ดูแลและบริหารจัดการ on-premise servers และ hardware infrastructure สำหรับการทำงานใน DevOps pipeline
- ติดตั้ง, คอนฟิก, และบำรุงรักษาเครื่องเซิร์ฟเวอร์, Storage, และ Network ที่เกี่ยวข้องกับ DevOps environment
- ดูแลและตรวจสอบการทำงานของเครื่องเซิร์ฟเวอร์และระบบ on-premise เพื่อให้ระบบทำงานได้อย่างมีประสิทธิภาพ
Containerization & Orchestration (Docker & Kubernetes):
- ใช้ Docker ในการสร้างและจัดการ containerized applications
- ออกแบบและดูแล Kubernetes clusters ทั้งในสภาพแวดล้อม on-premise และ cloud (AWS)
- ดูแลการตั้งค่าและการ scaling ของ Kubernetes deployments, services และ pods บนทั้งสองสภาพแวดล้อม
Linux Systems Administration:
- ทำงานร่วมกับทีมพัฒนาในการออกแบบและปรับปรุงกระบวนการ DevOps รวมถึงการ deploy ระบบไปยังทั้ง on-premise และ cloud
- สนับสนุนทีมในการแก้ไขปัญหาทางเทคนิคที่เกิดขึ้นในกระบวนการพัฒนาและการ deploy
การปรับปรุงและพัฒนาเครื่องมือ:
- คิดค้นและพัฒนาเครื่องมือใหม่ ๆ ที่จะช่วยให้กระบวนการ DevOps ทั้งใน on-premise และ cloud มีประสิทธิภาพยิ่งขึ้น
- พัฒนา Automation สำหรับการจัดการสภาพแวดล้อมทั้งใน Cloud และ on-premise ให้สามารถทำงานได้อย่างราบรื่น