Senior Java Developer
|Location||Cape Town, South Africa|
|Employment Type||Full Time|
|Experience||6 to 8 years|
- J2EE Applications
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 clients,
rich clients and batch users integrating via JMS and web services. The work contains a portion of
support and refactoring of the existing code as well as new development to extend it for new
functionality and add extra integration points.
- 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
- Evaluate and improve application performance, and high availability features.
- Create unit and integrated system tests.
- Create technical documentation to support developed components through their lifecycles.
- Do root cause analysis on bugs to find and fix the cause of a problem in an integrated
- Work effectively in a team environment, actively collaborating to improve software
development processes and standards.
- Relevant tertiary qualification in Engineering or Information Sciences.
- A strong knowledge of Java essential.
- At least 5 years relevant experience as a back-end developer in multi-tier Java application
- Ability to work in a team environment, collaborate on a common (UML) design model.
- A thorough understanding of SDLC processes, tools and techniques
Skills and Knowledge requirements:
- Experience with team development tools: Use of source control applications (preferably
Subversion); 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, EJB’s and RESTful Services
- Spring framework (preferable)
- JPA /Hibernate
- Experience with an application server (i.e. Tomcat, Websphere,Weblogic)
- Integration experience (Web services, JMS – nice to have)
- 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
- Rules engines (i.e. drools)
- Design patterns
- Continuous integration tools (i.e. Hudson, Jenkins)