Job brief
Design and develop high-volume, low-latency applications for mission-critical systems and delivering high-availability and performance.
Contribute in all phases of the development lifecycle adhering to industry standards and software development best practices.
You will be part of a talented software team that works on mission-critical applications. Java developer roles and responsibilities include managing Java/Java EE application development while providing expertise in the full software development lifecycle, from concept and design to testing.
Education and/or Work Experience Requirements:
· Proven hands-on Software Development experience for financial solutions with high availability, resilience and real-time transaction processing
· Profound insight of Java and JEE internals (Classloading, Memory Management, Transaction management etc)
· Experience in developing web applications using at least one popular web framework (JSF, Wicket, GWT, Spring MVC, Spring Boot)
· Excellent knowledge of Relational Databases (MySQL), NoSQL, Databases (MongoDB)
· Excellent knowledge of middleware technologies (Mongoose, Maven, etc.) and ORM technologies (JPA2, Hibernate)
· Familiarity with architecture styles/APIs (REST, RPC)
· Familiarity with SOAP APIs
· Excellent knowledge of Relational Databases and SQL
· Understanding of Agile/Rapid software development methodologies (Test Driven Development)
· Experience in using collaboration tools such as Jira, Confluence, Github, etc.
· Profound insight of object-oriented software development (design patterns, Java anti-patterns)
· BSc/BA in Computer Science, Engineering or a related field
Candidate with 2+ years of experience in software development is preferred.
Domain Knowledge:
· CoreJava,
· J2EE,
· Hibernate (ORM),
· Database MYSQL,
· Cloud AWS, Maven,
· Github (Version controlling)
Restful Webservices