Design, develop, and maintain Java-based applications and services.
Work with cross-functional teams to identify and implement new features and functionality.
Collaborate with other developers to maintain code quality and ensure the application is scalable and performant.
Leverage cloud technologies to improve the overall performance and availability of the application.
Provide technical guidance and mentorship to junior developers.
Work within Agile/Scrum team to design and implement data pipelines.
Write unit tests and contribute to integration as well as regression tests.
Develop automatic detection and remediation to prevent outages.
Develop build and deployment automation for microservices using CI/CD.
Minimum Requirements:
Bachelor’s degree in computer science / software engineering (or similar) or equivalent experience
3 years experience with Java with Spring boot, practical experience of software development or proven equivalent seniority in software development with product teams
In-depth technical understanding of data structures, I/O, multi-threading, Restful Web Services
Strong experience with software development in cloud: AWS, Azure, or GCP
Experience with cloud-native technologies such as Kubernetes, Docker, and Serverless
Database knowledge (RDBMS/NoSQL)
Strong debugging skills of performance/memory leaks/crash/multi-threaded/algorithms.
Experience with source control tools (GIT or similar)
Experience with compiling and continuous integration tools like: Eclipse/IntelliJ, Gradle/Maven, Jenkins, Artifactory
Excellent teamwork and communication skills.
High self-learning and self-managed abilities.
Integration/build/static code analysis tools
Preferred Skills:
Working Knowledge with Python software development