Role Overview
We are seeking a smart and enthusiastic Java software engineer with expertise in MongoDB and a strong interest in current technology and engineering practices. Utilizing your knowledge of Java, MongoDB, and best engineering practices, you will assist clients in adopting the latest version of MongoDB across their application suite. You will actively lead team discussions, participate in code reviews, and collaborate with colleagues to identify, prioritize, and deliver features that add value to our clients. Additionally, you will mentor less experienced developers.
We believe that small, multi-disciplinary teams are most effective in delivering complex changes. Therefore, we are looking for someone with a collaborative mindset who is flexible and willing to take on various responsibilities throughout the project lifecycle.
Job Requirements
Technical Skills and Experience
This position is ideal for a highly skilled developer with extensive experience in Java and MongoDB (or other NoSQL databases).
Must Have:
- Excellent command of spoken and written English (working directly with UK/US-based clients).
- Expertise in Java 8+, with experience in Java 11/14/17 and OpenJDK preferred.
- Hands-on experience with MongoDB or other NoSQL databases, including data modeling.
- In-depth knowledge of Spring, particularly Spring Boot, Spring Framework, and Spring Data.
- Experience with Azure or AWS.
- Understanding of synchronous and asynchronous communication:
- REST-based
- Queue and/or Topic based (depending on technology)
- Proficiency in Microservice Architecture, including containerization, high availability, and failover scenarios.
- Experience writing unit and integration tests.
- Familiarity with Docker and containerized applications.
- Experience with Maven/Gradle and CI/CD pipelines.
Soft Skills
Key Attributes and Behaviors:
- Ability to understand business requirements and translate them into technical solutions.
- Customer Focus: Passion for understanding the problem we aim to solve with software and advocating solutions to the client.
- Delivery Focus: Strong analytical and problem-solving skills. Ability to evaluate, design, and implement effective solutions. Flexibility to adapt skills to various client engagements, use cases, and modes of change delivery.
- Integrity and Respect: Professional approach to all aspects of client engagement and collaborative team working. Ability to build relationships quickly based on trust and transparency. Strong presentation and communication skills are essential due to the client-facing nature of the role.
- Value-Driven: Creative thinking, with an aptitude for innovation and a strong desire to exceed client expectations.
- Energy: Positive attitude and determination to learn and succeed.
If this sounds like you, we'd love to hear from you!