Perform technical analysis to identify solutions and create technical documentation.
Develop functionalities for applications/systems.
Write APIs, Unit Tests, and optimize performance for APIs and databases.
Participate in database design to meet customer requirements.
Design high-level and low-level solutions for products.
Participate in project supervision to ensure technical quality and coding standards.
Be responsible for mentoring team members on coding, and technology, and guiding the development of features based on design and architecture documentation.
Explore core technologies and company technologies.
Research and explore new technologies such as K8S, Microservices, Cloud Native, etc.
Yêu Cầu Công Việc
Solid understanding of the software development process (candidates with experience in Scrum/Agile/Kanban are preferred).
Strong knowledge of OOP, OOA/D, and design patterns such as GoF, Dependency Injection, IoC, SOLID, etc.
Experience in multi-threading, synchronous, and asynchronous processing.
Ability to conduct in-depth research and problem-solving.
Good knowledge of databases (RDBMS, NoSQL), ORM, and persistence frameworks.
Proficient with code versioning tools (Git, SVN, etc.).
Capable of code review, code standardization, and adherence to coding conventions.
Experience working with Microservices architecture, Layered architecture, SOA, and Distributed Systems.
Experience with Docker, Docker Swarm, and Kubernetes is an advantage.
Experience with streaming/messaging frameworks like MQTT, RabbitMQ, and Kafka is a plus.
2-5 years of experience working with Java, Oracle, Spring framework, Hibernate, Play framework, Servlet, Webservice, SOAP/Restful, and Git.