Title : Java Developer
Location : Cape Town (Mowbray)
KEY RESPONSIBILITIES
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
CORE SKILLS/COMPETENCIES
- 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
MINIMUM REQUIREMENTS
- 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.
Skill Set | Skill | |
Java | Basic JSE API (to v7) | |
GUI Development (Swing / SWT) | ||
JAVA 8.0 | ||
JDBC
J2EE |
||
Servlets | ||
JAXP / JAXB | ||
Logging frameworks (SLF4J, Log4J) | ||
EJB (MDBs) | ||
JSP & HTML (incl v5.0) | ||
JSP Custom Tags | ||
JavaScript / AJAX | ||
AOP | ||
Caching mechanisms (ehCache) | ||
Frameworks | Web Frameworks (Struts/JSF,PrimeFaces) | |
Spring (Core, Web, Remoting, Security etc.) | ||
ORM Concepts and Frameworks (Specifically myBatis) | ||
XML | Core Concepts | |
DTD/XSD | ||
XSL (XSL:FO) | ||
Databases | Core RDBMS Concepts | |
Oracle | ||
DB/2 | ||
SQL | ||
App Design | OOA/D | |
Design Patterns (GoF) | ||
Enterprise Patterns | ||
Application Architecture | ||
Technical Architecture | ||
O/S | Windows – Desktop & server | |
Linux | ||
App Servers | Tomcat | |
Websphere (including Admin) | ||
Integration Frameworks (Apache Camel) | ||
General Dev. | Unit Testing Concepts (JUnit, Mockito etc.) | |
Maven | ||
Retail Business Domain Knowledge | ||
Scripting | Python / Jython | |
Shell Scripting | ||
Process | Agile – SCRUM | |
TDD/BDD/Specification-by-Example | ||
Distributor Source Management Processes | ||
Certifications | Oracle Entry-Level Java Programmer | |
Oracle Java Professional Programmer |
RECRUITMENT PROCESS
- 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