Senior Java developer
Remotely
Full-time
For the largest project in the retail industry we are looking for a specialist for the position of Senior Java developer.
The specialist will participate in the development of highly loaded and productive backend services for front-end and back-end systems in jvm languages (Java, Hybris) in microservice architecture.
Tasks expected of the specialist:
- Write high quality and understandable code for distributed system, stack: Java 8, Hybris / Kafka /Redis /Solr/Postgress
use and develop existing frameworks and open source libraries
- participate directly in the formation and development of your own ecommerce platform
- participate in the creation of architectural solutions and design of highly loaded fault-tolerant systems
- Implement and improve development processes in an environment of continuous growth of complex tasks and interesting projects
Essential Requirements:
- Strong knowledge of Core Java (Collections, Concurrency, IO/NIO, Lamdas, Stream API)
- extensive experience with well-known Utility Libraries(Guava, Apache Commons, Lombok, MapStruct, Jooq and etc) in solving practical tasks
- understanding and experience in using Testing Frameworks(JUnit, Mockito,*Mock), high coding culture, adherence to Clean Code and Clean Architecture principles.
- understanding and experience with SQL(MySQL) and NoSQL(Redis, Apache Solr/Elastic) storages
- Experience in fine-tuning jvm/gc and solving performance issues with java applications
- Understanding of basic data structures and algorithms, estimation of algorithm complexity through Big O notation
- knowledge of basic architectural patterns and styles, good design principles for designing highly loaded distributed systems
- ability to plan one's time, cope with the flow of tasks, and communicate productively with related departments
- Ability to describe architectural solutions using standard tools through UML notations and to clearly state your thoughts
Important:
- Experience with Docker, Kubernetes, Jenkins, GitLab
- Understanding of CI/CD culture, devops/sre practices, experience in use and implementation