Roles and Responsibilities:Contribute in all phases of the development lifecycleWrite well designed, testable, efficient codeEnsure designs comply with specificationsPrepare and produce releases of software componentsSupport continuous improvement by investigating alternatives and technologies and presenting these for architectural reviewEnsure continual knowledge managementAdherence to the organizational guidelines and processesSkills / Competencies:a. Bachelor/Master's degree with good experience in computer programmingb. 4+ years working experience in application development using JavaEssential Skills:Hands on experience in designing and developing applications using Java EE platformsObject Oriented analysis and design using common design patternsProfound insight of Java and JEE internals (Data structure, Algorithm and time complexity, Memory Management, Transaction management etc)Excellent knowledge of Relational Databases, SQL and ORM technologies (JPA2, Hibernate)Experience in the Spring FrameworkExperience in developing web applications using at least one popular web framework (JSF, Wicket, GWT, Spring MVC) and UI technology (Angular/React JS)Ability to operate independently while establishing strong working relationships with co-workers and cross-functional teamsStrong organizational and prioritization skillsDemonstrate critical attention to detail and deadlines, and are self-motivatedAbility to adapt to changes in direction and priorities in a project and deadline-oriented environmentStrong written and verbal English communication skillsProblem-solving attitudePreferred Skills:Knowledge in any UI technology (Angular, React, JS)Intermediate level knowledge of Unix environment (User commands, not System Admin commands)Understanding of capital markets and middle/back office processes in the financial services space#J-18808-Ljbffr