Job Description

Our client a leader in insurance is looking for an experienced Senior Java Developer. Develop, maintain and support mission-critical, enterprise-grade software applications that improve business efficiency and are aligned to the enterprise architecture and business strategy. This position will challenge software engineering as well as people skills. From a software engineering perspective, you will have the opportunity to solve and design complex integration patterns. Various technologies are used within this space of which the major ones are Java EE, Maven, Jenkins CI, Docker, Amazon Web Services, Oracle, WebSphere Liberty, Angular, AIX and Linux. Development challenges will include new software development as well as maintaining current software, including modernisation of platforms with minimal impact on business. From a people perspective you should be able to operate on your own and within a team setup, depending on the projects you will be involved. Knowledge sharing is key to the role and technical guidance as well as mentoring of junior to intermediate developers will be expected. Responsibilities and work outputs - Develop software based on technical design (Internal Process). - Keep abreast of new technologies/methodologies, business changes and internal system changes in order to align system development with best practices and system architecture. - Collaborate with stakeholders to gather requirements, conduct analysis and prioritise requests. - Contribute to the design of scalable solutions that supports the system architecture. - Translate business requirements into workable solutions and document solutions into technical specifications. - Design and code new software functionality using code that is scalable, readable, maintainable and re-usable. - Develop and maintain productive working relationships with peers and organizational and role players to achieve effective collaboration. - Provide stakeholder with regular feedback on the technical design and timelines for solution in order to manage expectations. - Collaborate with business analysts and testing team in developing, testing and deploying new software system components or software system enhancements. - Collaborate with testing team to co-create test cases. - Conduct System Integration Testing (SIT) and User Acceptance Testing (UAT) and resolve all issues/queries. - Contribute to user acceptance testing (UAT) and training material. - Once the solution has been successfully tested, prepare and produce releases of software components into production/live environment. - Support continuous improvement by investigating alternatives and technologies and presenting these for architectural review. - Maintain existing programmes, ensuring all errors are resolved and documented. - Advise and guide colleagues regarding effective business system analysis approaches and techniques. - Review and quality assure deliverables of junior team members in accordance with IT Strategy, architecture and best practice. - Mentor team members and provide insight into effective and efficient Java development practices. - Design solutions that eliminate the reoccurrence of errors. - Provide technical guidance to the operations and support team. - Monitor the performance of solutions and make recommendations to improve the performance and functionality of the solution. - Engage with clients in a client-centric manner(Client Services). - Provide authoritative, expertise and advice to clients and stakeholders. - Build and maintain relationships with clients and internal and external stakeholders. - Deliver on service level agreements made with clients and internal and external stakeholders in order to ensure that client expectations are managed. - Make recommendations to improve client service and fair treatment of clients within the area of responsibility. - Participate and contribute to a culture that builds rewarding relationships, facilitates feedback, and provides exceptional client service Self-management and teamwork (People). - Develop and maintain productive and collaborative working relationships with peers and stakeholders. - Positively influence and participate in change initiatives. - Continuously develop own expertise in terms of professional, industry, and legislation knowledge. - Contribute to continuous innovation through the development, sharing, and implementation of new ideas. - Take ownership of driving career development Contribute to financial controls and planning (Finance). - Identify solutions to enhance cost-effectiveness and increase operational efficiency. - Manage financial and other company resources under your control with due respect. - Provide input into the risk identification processes and communicate recommendations in the appropriate forum.

Requirement

Skills Required - Java EE (Not Spring) - GitLab - Jenkins - Ansible - Linux/AIX - REST - Back End Development - Object Orientated development and design - WebSphere Application Server and WebSphere Liberty Server Experience and Qualifications - 5-7 years of intermediate/senior java development experience using Java EE on Unix-based platforms. - Relevant IT qualification. - Relevant postgraduate IT qualification. Java skills: - 5 years of Software Development experience in a distributed computing environment using Java EE. - Solid (Java EE) back-end development experience. - Advanced understanding and everyday use of OO principles such as inheritance, interfaces, abstract classes, etc. - Good systems and code design skills including good documentations skills where necessary. - Understanding and experience with micro-services. - Strong knowledge of REST API designs. - Strong knowledge with CI/CD principles. If you meet ALL of the above requirements and are 100% comfortable with all aspects of the job spec please send your updated CV in Word format and relevant documents to cvs4cara@therecruiters.co.za