Mô Tả Công Việc
Trách Nhiệm Chính
- Phát triển và duy trì các hệ thống backend dựa trên thông số kỹ thuật thiết kế sản phẩm, đảm bảo phù hợp với mục tiêu kinh doanh và tiêu chuẩn kỹ thuật.
- Thiết kế và triển khai lược đồ cơ sở dữ liệu, tối ưu hóa hiệu suất truy vấn và đảm bảo tính toàn vẹn dữ liệu thông qua các phương pháp quản lý cơ sở dữ liệu mạnh mẽ.
- Tạo và duy trì tài liệu kỹ thuật, bao gồm thông số kỹ thuật API, sơ đồ kiến trúc hệ thống và hướng dẫn triển khai, để hỗ trợ hợp tác nhóm và chia sẻ kiến thức.
- Hợp tác với các nhà phát triển frontend và quản lý sản phẩm để thiết kế và triển khai giao diện hệ thống phần mềm, đảm bảo tích hợp liền mạch và chức năng.
- Viết và thực thi các bài kiểm tra đơn vị cho các thành phần đã phát triển, xác định và giải quyết lỗi, đồng thời đảm bảo chất lượng mã thông qua các giao thức kiểm tra nghiêm ngặt.
- Giám sát việc triển khai và bảo trì các hệ thống backend, bao gồm giám sát hiệu suất hệ thống, quản lý môi trường máy chủ và triển khai các bản cập nhật với thời gian ngừng hoạt động tối thiểu.
- Cập nhật các công nghệ mới nổi và các phương pháp hay nhất trong ngành để liên tục cải thiện kiến trúc hệ thống, bảo mật và khả năng mở rộng.
- Tham gia vào các đánh giá mã, chia sẻ kiến thức chuyên môn với các thành viên trong nhóm và đóng góp vào việc phát triển các cơ sở mã hiệu quả và dễ bảo trì.
- Phối hợp với các kỹ sư DevOps để đảm bảo quy trình triển khai suôn sẻ, tự động hóa kiểm tra hệ thống và triển khai các đường ống CI/CD để phân phối phần mềm hiệu quả.
- Cung cấp hỗ trợ kỹ thuật để khắc phục sự cố hệ thống, phân tích nhật ký lỗi và giải quyết vấn đề kịp thời để đảm bảo tính khả dụng của hệ thống và sự hài lòng của người dùng.
Yêu Cầu Công Việc
- Có kinh nghiệm đã được chứng minh trong phát triển backend, với nền tảng vững chắc về các ngôn ngữ lập trình như Java, Python hoặc Node.js.
- Chuyên môn về thiết kế và quản lý cơ sở dữ liệu, bao gồm kinh nghiệm với cơ sở dữ liệu quan hệ (ví dụ: MySQL, PostgreSQL) và cơ sở dữ liệu NoSQL (ví dụ: MongoDB, Redis).
- Hiểu biết về phát triển và tích hợp API RESTful, với kinh nghiệm thiết kế và tài liệu hóa API để giao tiếp hệ thống liền mạch.
- Hiểu biết sâu sắc về vòng đời phát triển phần mềm, bao gồm các giai đoạn phân tích yêu cầu, thiết kế, phát triển, kiểm thử, triển khai và bảo trì.
- Thành thạo các hệ thống kiểm soát phiên bản như Git, với kinh nghiệm trong các quy trình phát triển hợp tác và thực hành quản lý mã.
- Kinh nghiệm với các nền tảng đám mây như AWS, Azure hoặc Alibaba Cloud, bao gồm kiến thức về kiến trúc serverless, container hóa (ví dụ: Docker) và các công cụ điều phối (ví dụ: Kubernetes).
- Khả năng viết và thực thi các bài kiểm tra đơn vị bằng cách sử dụng các khung như JUnit, PyTest hoặc Mocha, đảm bảo chất lượng mã và độ tin cậy của hệ thống.
- Kỹ năng giải quyết vấn đề xuất sắc, với khả năng phân tích các vấn đề hệ thống phức tạp và triển khai các giải pháp hiệu quả trong thời gian hạn chế.
- Kỹ năng giao tiếp tốt, với khả năng hợp tác với các nhóm chức năng chéo, trình bày các giải pháp kỹ thuật cho các bên liên quan không chuyên về kỹ thuật và tài liệu hóa quy trình một cách rõ ràng.
- Kinh nghiệm với các công cụ giám sát hệ thống như Prometheus, Grafana hoặc New Relic, và kiến thức về các kỹ thuật tối ưu hóa hiệu suất cho hệ thống backend.
- Thành thạo các thực hành bảo mật hệ thống, bao gồm kiến thức về cơ chế xác thực, mã hóa dữ liệu và tiêu chuẩn mã hóa an toàn để bảo vệ thông tin nhạy cảm.
- Khả năng làm việc độc lập và như một phần của nhóm, với cách tiếp cận chủ động để xác định cơ hội cải tiến và đổi mới hệ thống.
- Kinh nghiệm với các phương pháp phát triển agile, bao gồm Scrum hoặc Kanban, và quen thuộc với các công cụ như Jira hoặc Trello để quản lý dự án.
- Chú ý đến chi tiết, với khả năng đảm bảo triển khai chính xác các yêu cầu hệ thống và duy trì tài liệu kỹ thuật chất lượng cao.
- Kiến thức về các kỹ thuật mở rộng hệ thống và tối ưu hóa hiệu suất, bao gồm cân bằng tải, chiến lược lưu trữ đệm và lập chỉ mục cơ sở dữ liệu.
- Kinh nghiệm với các đường ống tích hợp liên tục và triển khai liên tục (CI/CD), bao gồm các công cụ như Jenkins, GitLab CI hoặc CircleCI để kiểm thử và triển khai tự động.
- Khả năng khắc phục sự cố hệ thống, phân tích nhật ký lỗi và triển khai các bản sửa lỗi để đảm bảo tính ổn định và thời gian hoạt động của hệ thống.
- Thành thạo các nhiệm vụ quản trị hệ thống, bao gồm cấu hình máy chủ, giám sát và bảo trì môi trường backend.
- Kinh nghiệm với các công cụ tài liệu hệ thống như Swagger, Postman hoặc Confluence để tạo và duy trì tài liệu kỹ thuật toàn diện.
