1. Kinh nghiệm làm việc
Có tối thiểu từ 2 năm kinh nghiệm phát triển backend sử dụng ngôn ngữ Java.
Có kinh nghiệm làm việc với các hệ quản trị dữ liệu quan hệ như MySQL/PostgreSQL và Search Engine như Solr/ElasticSearch...
Có kinh nghiệm viết Unit test, Integration test.
Ưu tiên có kinh nghiệm: Spring Cloud, Spring Security, Redis, Kafka, CICD ...
Có kinh nghiệm triển khai, phát triển phần mềm bằng Agile/ Scrum.
2. Kiến thức/Năng lực chuyên môn/Kỹ năng
Có khả năng phân tích, sắp xếp và triển khai công việc theo thứ tự ưu tiên.
Có kỹ năng giao tiếp và làm việc nhóm tốt.
Có đam mê và định hướng lâu dài với nghề lập trình
Cần phải có hiểu biết về khoa học máy tính
Cần phải có hiểu biết vững chắc về các nguyên tắc cơ bản của JDK 8+, Spring boot 2.x+, Spring framework 5+.
Yêu cầu kiến thức và kỹ năng: API RESTful, Microservice architecture, Distributed transaction, Code management (GitHub/JIRA....)
Kiến thức về các ngôn ngữ lập trình: Đây là nền tảng cơ bản của lập trình. Một lập trình viên cần biết ít nhất một ngôn ngữ lập trình để có thể viết mã.
Kiến thức về các cấu trúc dữ liệu và thuật toán: Đây là những kiến thức cần thiết để viết mã hiệu quả và hiệu suất.
Kiến thức về các framework và thư viện: Các framework và thư viện cung cấp các tính năng và chức năng sẵn có, giúp lập trình viên tiết kiệm thời gian và công sức.
Kiến thức về cơ sở dữ liệu: Cơ sở dữ liệu lưu trữ dữ liệu của một ứng dụng hoặc trang web. Lập trình viên cần có kiến thức về cách truy cập và quản lý dữ liệu trong cơ sở dữ liệu.
Kiến thức về kiến trúc web: Kiến trúc web là cách thức các trang web và ứng dụng được thiết kế và xây dựng. Lập trình viên cần có kiến thức về cách thiết kế và xây dựng các trang web và ứng dụng có thể mở rộng và bảo mật.
Kiến thức về bảo mật: Bảo mật là một vấn đề quan trọng đối với các ứng dụng và trang web. Lập trình viên cần có kiến thức về cách bảo vệ các ứng dụng và trang web khỏi các cuộc tấn công bảo mật.
3. Năng lực cốt lõi
Có tố chất và tư duy phù hợp với hệ giá trị cốt lõi của công ty (IPAM & 4C)