Title : Java Developer
Location : Cape Town (Mowbray)
Key Roles and Responsibilities:
- Work as part of a project team to develop and test enterprise-ready business applications in a variety of configurations (e.g. web-based, desktop-based, service-based, or scheduled processes).
- Help produce brand new solutions, solutions based upon third-party applications, or solutions that interact with existing systems.
- Is aware of, prepared to learn and follow industry best-practice when developing applications.
- Use programming languages and tools (generally) around the Java platform.
- Work with Business Analysts to specify business requirements and help translate these requirements into technical specifications (including Class, Sequence, and other UML diagrams).
- Help Database Developers write efficient and effective database access code.
- Work with QA Analysts to implement testing plans and write the necessary code to automate testing in line with our Test-Driven Development methodology.
- Work with customers and project managers to deliver quality, effective software, in line with our Agile Development process.
- Help diagnose the root causes of systems issues using their problem-solving skills.
- Help research and evaluate potential technical solutions to business problems
- Strong communication skills, both written and verbal.
- Good judgement and experience of prioritizing and working on tight deadlines.
- Ability to learn fast and share knowledge, experience and best practices with teammates
- Willingness to take responsibility and ownership of work.
- Empathize with customers and communicate at the appropriate level
- Appreciation of their position within the wider roles & responsibilities of the DPS community
- Ability to work under pressure
- Practical approach to problem solving
- Able to document information and share knowledge with colleagues
- Follows a structured approach to their work
- Personal drive to succeed
- IT Diploma or related Degree will be an advantage but is not essential
- Proven Java experience of at least 3 – 5 years professional development experience
- Candidates with more or deeper development experience are welcome to apply
- Remuneration package will be tailored according to relevant technical experience
- Development experience in a Scrum based Agile environment will be an advantage
- Exposure to BDD/TDD will be a definite advantage
- Exposure to object-oriented design concepts will be an advantage
TECHNICAL SKILLS REQUIRED
The following represents a list of the technologies the incumbent will be required to operate in. Being proficient in a good deal of these technologies will qualify you to apply for this position as knowledge of the complete stack will be an advantage but is not essential.
|Java||Basic JSE API (to v7)|
|GUI Development (Swing / SWT)|
|JAXP / JAXB|
|Logging frameworks (SLF4J, Log4J)|
|JSP & HTML (incl v5.0)|
|JSP Custom Tags|
|Caching mechanisms (ehCache)|
|Frameworks||Web Frameworks (Struts/JSF,PrimeFaces)|
|Spring (Core, Web, Remoting, Security etc.)|
|ORM Concepts and Frameworks (Specifically myBatis)|
|Databases||Core RDBMS Concepts|
|Design Patterns (GoF)|
|O/S||Windows – Desktop & server|
|Websphere (including Admin)|
|Integration Frameworks (Apache Camel)|
|General Dev.||Unit Testing Concepts (JUnit, Mockito etc.)|
|Retail Business Domain Knowledge|
|Scripting||Python / Jython|
|Process||Agile – SCRUM|
|Distributor Source Management Processes|
|Certifications||Oracle Entry-Level Java Programmer|
|Oracle Java Professional Programmer|
- Competency based interview to assess above requirements
- Applicable assessment
- Background checks
If you are interested in applying, please email your updated CV to [email protected]. Please add the name of the vacancy to the subject line of your email