The purpose of the Intermediary Java Developer: To develop functionality for a JEE (J2EE) based product. The backend is a service oriented Spring based application. It provides a service layer for different user channels ranging from web, rich clients and batch users integrating via JMS and web services. The work contains a portion of support and refactoring of existing code as well as new development (extend it for new functionality) and add extra integration points.
Location: Gleneagles – Somerset West
- Support existing and develop new functionality and components.
- Understand existing product and domain elements and work with business analysts to refine and implement new requirements.
- Refactor and improve the code to keep the product maintainable and adaptable to new requirements.
- Work effectively in a team environment and follow/develop product software development processes and standards.
- Evaluate and improve application performance, and high availability features.
- Create unit and integrated system tests to show that the developed functionality works as intended.
- Create technical documentation that explains how the various components of the system work and how to use them.
- Do root cause analysis on bugs to find and fix the cause of a problem in an integrated system.
- Build and deploy the system on an application server.
- Create and execute functional test scenarios (dev testing).
- Incorporate the work done by other developers and do whatever is necessary to get the system to work again with the changes, including debugging other people’s code, making changes to test data, etc.
- Relevant tertiary qualification in Information Technology or Computer/Engineering Sciences.
- A strong knowledge of Java is essential.
- 2-3 years relevant experience as an intermediary back-end developer as part of a team in a software development environment.
- Ability to work in a team environment: Follow mentorship/provide team leader mentorship, collaborate on a common (UML) design model.
- A good understanding of the SDLC process, tools and techniques specifically as applied to software development methodology.
Skills and Knowledge requirements:
- Experience with team development tools: Use of source control applications (preferably GIT); Use of a UML tool for documentation.
- Ability to deliver production quality software by e.g. paying attention to detail, do extensive unit testing and support quality testing phases.
Experience and skills with the following technologies is advantageous:
- JEE (J2EE) server side technologies, SOAP and Services
- Spring framework (preferable)
- JPA /Hibernate
- Experience with an application server (IBM Websphere - preferable)
- Integration experience (Web/RESTful services, JMS)
- JAXB and XML Schema
- SQL and experience with a relational database (i.e. Oracle, PostgreSQL, MySQL, DB2)
- Business process/workflow layers e.g. JBPM, BPEL (Activiti)
- Rules engines (i.e. Drools)
- Design patterns (Object Oriented, SOLID, GRASP)
- Continuous integration tools (i.e. Jenkins, Bamboo, Docker)
- Self starter, self motivated, team player
- Excellent communication and interpersonal skills
- Strong attention to detail
- Able to work under pressure and meet deadlines
The Employment Equity policy of Interfront will be considered as part of the recruitment and selection process. For statistical purposes, please indicate your Equity status. Successful candidates will be required to undertake an oath of secrecy, pre-employment screening and or vetting, and a declaration of private interest. The appointment is also subject to appropriate reference(s) and security clearance if applicable.
Included in package:
- Retirement annuity, Group life and income protection, Medical aid
- 24 days annual leave
- Office shut down in December between Christmas and New Years day
To Apply, Send application to: firstname.lastname@example.org