Our JSE listed client in the financial services industry based in Sandton is looking for a Senior Java Developer
Responsibilities
- Responsible for building and supporting applications.
- Primary responsibility will be to design and develop these layers of our applications, and to coordinate with the rest of the team working on different layers of the infrastructure. A commitment to collaborative problem solving, sophisticated design, and quality product is essential.
- Perform a high-level impact analysis, establish Scope and provide estimates based on technical requirements.
- Proactively liaise with all stakeholders.
- Create required planning tasks in SDLC tool and set due dates according to agreed milestones.
- Actively participate in the collaborative technical design process.
- Research and find effective solutions to technical issues that arise.
- Update development timelines based on final requirements.
- Liaise with the relevant subject matter experts where clarification is required.
- Translate technical requirements into executable code without errors.
- Ensure optimally performing system code in line with technical specifications, following prescribed process, architecture standards and procedures.
- Ensure delivery within agreed timeframes.
- Conduct unit testing and fix any defects found within the agreed SLA.
- Escalate risks to the project early on.
- Run code through the automated code review tool, review errors with the technical lead and fix before committing to the code base.
- Perform peer code reviews to ensure consistent application of standards, logic and effective use of libraries and reusable aspects of the software.
- Develop and maintain reusable Unit Tests.
- Assist the Test Analyst in ensuring that a comprehensive test pack is produced, which includes all the required scenarios.
- Verify that the completed software meets the established standards and is fit for purpose.
- Review the risk / impact of defects found in testing, prioritize and ensure that the priority is accurate.
- Conform to the Build and Release cycles.
- Provide timeous support to the Quality Assurance Team when issues arise during testing.
- Handle all outstanding defects.
- Production Support and Root Cause management:
- Ensure that the root cause of system errors are effectively analysed and prioritized for fixing.
- Proactively bring issues and problems to the attention of the team and propose solutions to solve them.
- Assist system users and the infrastructure teams with technical support issues.
- Adhere to the culture of communication and collaboration across all teams.
- Attend and participate in the regular team / project stand-ups.
Experience and education required
- Degree in Computer Science or Business Informatics, or similar qualification, is highly preferable
- 5 + years’ experience in building and maintaining Java applications
Technologies
- Java programming language (Java 7 or later)
- Java EE
- JBoss/Weblogic EAP (or similar Application Server)
- Data layer (JPA, Domain Object Model, XML/XSD, JAXB, ORM frameworks, RDBMS – Oracle – and PL/SQL beneficial)
- Business services (EJB, RMI)
- Integration services (JMS, Apache Camel, REST / SOAP web services)
- Messaging systems (Tibco EMS, Oracle Advanced Queuing, MQ)
- Presentation layer technologies (Java Server Faces, Java Server Pages, HTML 5, JavaScript, jQuery, CSS3)
- Design patterns (DAO, Command pattern, MVC, etc)
- Spring Framework ( Spring MVC , Spring Batch)
- Hibernate
- JUnit and JMock
- XML knowledge
- JSON knowledge
- SonarQube
- Build tools (Apache Ant, Maven, Jenkins, etc)
Please note that if you do not hear from us within 3 weeks, consider your application unsuccessful.
Desired Skills:
- Java Programming
- Java EE
- Spring Framework
- Javascript
- Jquery
- Hibernate
- Junit