Senior Java Software Engineer
We are seeking a Senior Java Software Engineer to design and implement software components for the LCC subsystem. The role requires strong Java development experience along with mandatory Python, C, and C++ programming skills. The candidate will work with microservices, containerized environments, APIs, secure data handling, SQL-based storage, and data serialization. The role also involves close collaboration with development, architecture, engineering, and QA teams.
Key Skills
- Strong Java development experience with mandatory Python, C, and C++ programming skills.
- Experience with microservices architecture, Docker, Kubernetes, SQL databases, and clustering.
- Proficiency in gRPC, REST APIs, and data formats including JSON, YAML, XML, and Protobuf.
- Experience with cryptographic libraries, secure coding practices, unit testing, and BDD automation using Cucumber and Gherkin.
- Ability to translate architectural requirements into software components, participate in design reviews, prepare design documents, and conduct code inspections.
- Experience collaborating with QA teams to develop BDD feature definitions and translate acceptance criteria into executable test scenarios.
Required Qualifications
- Bachelor’s degree in Computer Science, Engineering, or a related field.
- 7+ years of experience in Java development.
- Mandatory experience with Java, Python, C, and C++.
- Experience with microservices, Docker, Kubernetes, and SQL databases.
- Experience with gRPC, REST APIs, data serialization formats, and secure coding practices.
- Experience with BDD tools and frameworks such as Cucumber.
- Strong problem-solving, communication, and collaboration skills.
Additional Skills
- Experience with cloud platforms such as AWS, Azure, or GCP.
- Knowledge of CI/CD pipelines and DevOps practices.
- Familiarity with Agile/Scrum methodologies.