Required Skills and Responsibilities: Qualification and Experiences: BS/MS degree in Computer Science, Engineering or a related subject Proven hands-on Software Development experience Proven working experience in Java development Hands-on experience in designing and developing applications using Java EE platforms Object Oriented analysis and design using common design patterns. Profound insight into Java and JEE internals (Class loading, Memory Management, Transaction management, etc) Excellent knowledge of Relational Databases, SQL and ORM technologies (JPA2, Hibernate) Experience in the Spring Framework Experience as a Sun Certified Java Developer Experience in developing web applications using at least one popular web framework (JSF, Wicket, GWT, Spring MVC) Experience with test-driven development Additional experience with: