Mô tả Công việc
Trách Nhiệm Chính
- Dẫn dắt thiết kế và phát triển hệ thống nền dựa trên các thông số kỹ thuật sản phẩm chi tiết, đảm bảo phù hợp với mục tiêu kinh doanh và tính khả thi kỹ thuật
- Thiết kế và triển khai các giải pháp cơ sở dữ liệu sử dụng công nghệ quan hệ và/hoặc NoSQL, tối ưu hóa cho hiệu suất, khả năng mở rộng và tính toàn vẹn dữ liệu
- Chuẩn bị và duy trì tài liệu kỹ thuật bao gồm sơ đồ kiến trúc hệ thống, thông số kỹ thuật API và hướng dẫn triển khai cho tất cả các thành phần backend
- Phát triển và kiểm tra các giao diện phần mềm sử dụng giao thức RESTful API, đảm bảo tương thích với hệ thống frontend và các dịch vụ bên thứ ba
- Thực hiện kiểm thử đơn vị cho tất cả các mô-đun đã phát triển, xác định và giải quyết các vấn đề kỹ thuật để đáp ứng tiêu chuẩn đảm bảo chất lượng
- Giám sát việc triển khai các hệ thống backend bằng các pipeline CI/CD, đảm bảo tích hợp liền mạch với cơ sở hạ tầng đám mây và giám sát hiệu suất hệ thống sau khi triển khai
- Cung cấp bảo trì và hỗ trợ liên tục cho các hệ thống backend hiện có, triển khai các bản cập nhật và cải tiến để nâng cao chức năng và bảo mật
- Hợp tác với các nhóm chức năng chéo bao gồm quản lý sản phẩm, kỹ sư QA và chuyên gia DevOps để đảm bảo phát triển hệ thống gắn kết
- Cập nhật các công nghệ mới nổi và phương pháp thực hành tốt nhất trong ngành để liên tục cải thiện kiến trúc hệ thống và phương pháp triển khai
- Tài liệu hóa các thay đổi và cập nhật hệ thống một cách rõ ràng, có tổ chức để đảm bảo chuyển giao kiến thức và duy trì tiêu chuẩn tài liệu hệ thống
Yêu Cầu Công Việc
- Có kinh nghiệm đã được chứng minh trong phát triển hệ thống backend với hiểu biết vững chắc về nguyên tắc thiết kế phần mềm và mẫu kiến trúc
- Chuyên môn về thiết kế và quản lý cơ sở dữ liệu, bao gồm thành thạo công nghệ SQL và NoSQL như MySQL, PostgreSQL, MongoDB hoặc Oracle
- Kỹ năng tài liệu xuất sắc với khả năng tạo thông số kỹ thuật rõ ràng, tài liệu API và sơ đồ kiến trúc hệ thống
- Khả năng lập trình mạnh mẽ bằng các ngôn ngữ như Java, Python hoặc Node.js, với kinh nghiệm phát triển các ứng dụng backend có thể mở rộng và bảo mật
- Thành thạo phát triển RESTful API, bao gồm hiểu biết về các phương thức HTTP, giao thức xác thực và chiến lược phiên bản hóa API
- Kinh nghiệm với các framework kiểm thử đơn vị như JUnit, pytest hoặc Mocha, với khả năng viết các trường hợp kiểm thử và gỡ lỗi các vấn đề kỹ thuật
- Hiểu biết về quy trình triển khai bao gồm container hóa (Docker), điều phối (Kubernetes) và nền tảng đám mây (AWS, Azure, GCP)
- Khả năng bảo trì và tối ưu hóa các hệ thống backend hiện có, bao gồm điều chỉnh hiệu suất, vá bảo mật và giám sát hệ thống
- Kỹ năng giao tiếp xuất sắc với khả năng hợp tác hiệu quả với các nhà phát triển, bên liên quan và nhóm kỹ thuật
- Khả năng giải quyết vấn đề mạnh mẽ với năng lực phân tích các thách thức kỹ thuật phức tạp và triển khai các giải pháp hiệu quả
- Kinh nghiệm với các hệ thống kiểm soát phiên bản như Git, với khả năng quản lý kho lưu trữ mã và hợp tác trong các quy trình phát triển
- Hiểu biết về các khái niệm tích hợp hệ thống, bao gồm cổng API, kiến trúc microservices và các mẫu thiết kế hướng dịch vụ
- Khả năng tài liệu hóa các thay đổi và cập nhật hệ thống một cách rõ ràng, có tổ chức để đảm bảo chuyển giao kiến thức và duy trì tiêu chuẩn tài liệu
- Thành thạo sử dụng các công cụ phát triển như Postman để kiểm thử API, Jira để quản lý tác vụ và Docker để container hóa
- Kinh nghiệm với các công cụ giám sát hệ thống như Prometheus, Grafana hoặc New Relic để đảm bảo độ tin cậy và hiệu suất hệ thống
- Hiểu biết về các phương pháp thực hành bảo mật tốt nhất bao gồm mã hóa dữ liệu, cơ chế xác thực và tiêu chuẩn mã hóa an toàn
- Khả năng làm việc độc lập trong khi duy trì sự hợp tác mạnh mẽ với các nhóm chức năng chéo để cung cấp các hệ thống chất lượng cao
- Sự chú ý đến chi tiết mạnh mẽ với năng lực đảm bảo chất lượng mã, độ chính xác của tài liệu và độ tin cậy của hệ thống
- Kinh nghiệm với các chiến lược mở rộng hệ thống bao gồm mở rộng ngang, cân bằng tải và thiết kế kiến trúc phân tán
