The Java Developer works with the product and design teams to understand end-user requirements and use cases and translate them pragmatic and effective technical solutions.
Shaping and implementing technology / business solutions to contribute to client organization’s competitive differentiation.
Uses various software development technologies to rapidly develop creative and efficient solutions that enhance client organization’s technology stack.
Collaborates with other team members to implement user stories, write tests, and continuously deliver new / improved product functionality.
Communicates with internal IT teams to resolve technical dependencies during implementation.
Requirements
Engineer I : 0-2 years total software development experience.
Engineer II : 2-4 years total software development experience.
Engineer III : 4-6 years total software development experience.
Bachelor’s degree in computer science or similar, advanced degree preferred with outstanding record of academic achievement.
Experience working in JVM based programming languages like Java 8+, Kotlin and/or modern backend frameworks like Spring-Boot.
Significant experience writing, utilizing and securing RESTful API services in large scale distributed applications.
Experience with microservice architectures, including understanding of service discovery and circuit breakers.
Experience with relational and non-relational databases (e.g., Oracle, PostgreSQL, MySQL/MariaDB, MongoDB, CouchDB, Cassandra, Elasticsearch … etc.).
Experience in build scripts Maven, Gradle, CI Jenkins and/or Azure Pipelines.
Experience in engineering practices such as code refactoring, design patterns, test driven development, continuous integration, building highly scalable applications, application security.
Experience in container technologies like Docker / Kubernetes a plus.
Experience in agile development methodologies.
Knowledge in any other languages such as NodeJS, Go-Lang, and/or Python a plus