Choose an option
We are looking for a skilled and experienced Lead Java Developer to join our team.
In this role, you will work on cutting-edge projects, delivering high-quality software solutions while collaborating with multidisciplinary teams. You will take a key role in designing, implementing, and maintaining backend systems that support critical business objectives.
Please note that working from the customer's office is required 2-3 days per week.
Responsibilities
- Work alongside developers, architects, and stakeholders to design and deliver software solutions
- Build and maintain backend microservices using Java and Spring frameworks
- Write efficient, maintainable, and well-documented code that meets project specifications
- Design and implement REST APIs to enable seamless communication and system integration
- Develop unit tests to maintain high standards of code quality and reliability
- Identify and resolve software issues by analyzing root causes and implementing fixes
- Contribute to system architecture discussions and collaborate on design strategies
- Keep up with the latest technologies and industry trends to improve development approaches
- Guide and mentor junior developers, ensuring adherence to industry best practices
Requirements
- Bachelor's or Master's degree in Computer Science, Information Technology, or a related field
- Minimum of 5 years of experience in software development
- At least one year of experience in leading and managing development teams
- Proficiency in developing microservices using Java and Spring frameworks, such as Spring Boot
- Strong expertise in building and managing Java microservice infrastructures
- Solid understanding of REST APIs and their implementation in distributed systems
- Experience in writing unit tests to ensure consistent code quality
- Strong analytical and problem-solving skills for addressing technical challenges
- Ability to collaborate effectively in technical discussions and brainstorming sessions
- Advanced English communication skills, both written and spoken, at a B2 level or higher
Nice to have
- Knowledge of client-server architectures and their practical applications
- Familiarity with low-level protocols and their role in software development
- Understanding of threads and event-driven architectures
- Experience with authentication methods and security protocols
- Background in cryptography concepts and their use in software systems