We are looking for a Java developer responsible for building Java applications. Your primary responsibility will be to design and develop these applications, and to coordinate with the rest of the team working on different layers of the infrastructure. Thus, a commitment to collaborative problem solving, sophisticated design, and product quality is essential.
• Translate application storyboards and use cases into functional applications
• Design, build, and maintain efficient, reusable, and reliable Java code
• Ensure the best possible performance, quality, and responsiveness of the applications
• Identify bottlenecks and bugs, and devise solutions to these problems
• Help maintain code quality, organization, and automatization
• Proficient in Java, with a good knowledge of its ecosystems
• Solid understanding of object-oriented programming
• Familiar with various design and architectural patterns
• Skill for writing reusable Java libraries
• Knowledge of concurrency patterns in Java
• Familiarity with concepts of MVC, JDBC, and RESTful, SOAP
• Experience with Spring framework
• Understanding fundamental design principles behind a scalable application
• Creating database schemas that represent and support business processes
• Knowledge of database version tools like Liquibase.
• Proficient understanding of code versioning tools, such as Git
• Familiarity with build tools such as Maven, and Gradle
• Familiarity with continuous integration
• Proficiency with Linux based Systems.
• Knowledge of Scrum & Agile methodologies
Years of experiences: More than 2 years