<p>• A minimum of 3 years of proven working experience in Java development</p><p>• Proficient in Java, with a good knowledge of its ecosystems</p><p>• Knowledge of concurrency patterns in Java</p><p>• Familiarity with concepts of MVC, JDBC, and RESTful</p><p>• Familiarity with Java GUI frameworks (such as Swing, SWT, and AWT depending on project requirements)</p><p>• Hands-on experience in designing and developing applications using Java EE platforms</p><p>• Object Oriented analysis and design using common design patterns.</p><p>• Profound insight of Java and JEE internals (Classloading, Memory Management, Transaction management etc)</p><p>• Excellent knowledge of Relational Databases, SQL and ORM technologies (JPA2, Hibernate)</p><p>• Experience as a Oracle Certified Java Developer is preferable</p><p>• Experience in developing web applications using at least one popular web framework (JSF, Wicket, GWT, Spring MVC) is preferable</p><p>• Experience with test-driven development</p><p>• Knack for writing clean, readable Java code</p><p>• Experience with both external and embedded databases</p><p>• Understanding fundamental design principles behind a scalable application</p><p>• Implementing automated testing platforms and unit tests</p><p>• Proficient understanding of code versioning tools, such as Git</p><p>• Familiarity with build tools such as Ant, Maven, and Gradle</p><p>• Familiarity with continuous integration</p>