The Technical Lead Developer is responsible for CODE QUALITY.
As a member of a SAFe Team, the Technical Lead works on Customer Projects or Core Product Delivery Teams. The Technical Lead supports the DPM by modifying, developing, testing and maintaining application systems.
As a subject matter expert in Development, this role will be able to write quality code, drive the solution design within the team, be delivery focused, knowledgeable on established best practices and coding standards and be the “reference book” for the team.
Job Specification:
Key Roles and Responsibilities

CODE QUALITY

– SDLC – Leads or helps to lead project teams to design, develop and test enterprise-ready business applications in a variety of configurations (e.g. web-based, desktop-based, service-based or scheduled processes).
– BEST PRACTICES – Understands industry best practice related to coding and tools & understands The Company’s established best practices.
– DEVELOP – Write quality code, set an example of quality for the team members. Gain team’s respect by producing quality of code and applying own practices
– CODE & PEER REVIEWS – Uses expertise and mentoring skills, alongside practices such as code reviews and code analysis, to ensure the team adheres to best practice when developing solutions.

SOLUTION DESIGN

– Designs, plans and oversees the development of entire solutions from scratch, or solutions that integrate with third -party applications, or that interact with existing legacy systems. Justifies design and development decisions based upon industry experience.
– Helps Database Developers design databases and ensures the Development Team writes efficient, effective database access code in line with best practice.
– Owns, researches, evaluates and fully understands potential technical solutions to business problems
– Must have a very good understanding of the solution architecture
– Removes technical impediments
– Set reasonable expectations for the team members

QA/TESTING

– Works with QA Analysts to develop and implement testing plans.
– Ensures the team writes the necessary code to automate testing in line with the Test-Driven Development (TDD) methodology.

EXPERTISE

– Has well-established knowledge of programming languages and tools in general;
– Also has an understanding and recognition of where other appropriate tools are more applicable.

Be a “reference book” for the team

MANAGEMENT

– Perform technical management
– Build & maintain high team morale
– Be role model for the team

– Actively foster knowledge sharing, to avoid centralization of knowledge and avoid creating dependences on any single person in projects
– Mentor & raise skill levels of team members
– Motivate team members, especially when working under pressure with tight deadlines
– Maintain quality deliverables, on time, to agreed expectations
– Be approachable to assist with any functional or technical concerns

Maintain a balance between technical and leadership functions

ROOT CAUSE ANALYSIS
Ensure the root causes of systems issues are diagnosed effectively by working with the team to improve their problem-solving skills and build upon their knowledge of existing systems.

COLLABORATE – Working collaboratively within the Agile development team:

– As a technical expert, works collaboratively with DPM, Architects, Developers, Product Owners,
– Business Analysts, QA (Testers) to identify and specify business requirements and derive the
– design of the related solution, and ensures these are translated into technical specifications (including Class, Sequence and other UML diagrams) by the Development team.
– Works alongside customers and DPM to ensure quality, effective software is delivered regularly by the team, in line with the SAFe (Agile) Development process and methodology.
– As a member of the team, to assist and enable other team members to meet sprint deliveries according to the requirements set.
– Participate in Planning Meetings, Sprint Planning Development Cycles every 2 weeks and Daily Standup meetings
– Provide and document the technical design solution for the Developers to code.
– Deliver according to the Definition of Done and the Definition of Ready.
– Update JIRA with accurate information to identify risks/issues proactively at the sprint level

– Constantly looking for ways to increase the teams’ velocity/productivity by eliminating the waste.
– Support the development process by assisting and mentoring Developers to understand the technical solution.

Minimum Requirements:

Mandatory Skills / Abilities required to do the Job

– Self-starter, able to manage individual responsibilities and also contribute successfully to team deliveries on complex, long-term projects.
– Practical problem solver with strong analytical ability and abstract thinking
– Able to devise and drive innovative design solutions
– Maintains strategic vision within their work
– Provides technical leadership and motivation to development staff
– Able to document information and share knowledge within team & across company
– Able to maintain customer focus with all deliverables (own & team’s)
– Strong interpersonal skills. Listening attentively to requirements, in depth questioning, interpretation and ability to see the holistic view of the business and assess technical impacts accordingly.
– Excellent verbal and written communication skills. Able to document and present the results of technical design clearly and concisely.
– Able to Multi-task and manage multifaceted design projects (dual track)
– Technical and Leadership talents

Personal Attributes / Character traits required for this job

– Analytical thinker
– Critical thinking skills
– Delivery focused – deadline driven and adhere to Sprint deadlines

– Take initiative
– Structured approach to work
– Team Player – must be able to work collaboratively with the SAFe Team members
– Keen attention to detail
– Flexible/adaptable/approachable and willing to work in rapid changing, high delivery environment.
– Integrity & Professionalism
– Stays focused and retain prioritization skills under pressure
– Energy & personal drive to succeed
– Self-development to keep abreast of industries best practices, innovation and evolution in software development as well as technical toolsets
– Minimum requirement is Matric with at least 7 years of on the job work experience.
– Retail exposure would be an advantage
– Experience in using Agile (SAFe) methodologies will be an advantage.
– Exposure to Enterprise development preferred.

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)
– Java 5.0 Language Fundamentals (preferably Java 7)
– 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

PLEASE NOTE THE FOLLOWING:

– Clean criminal and credit record required
– Applications will only be considered from RSA Citizens, or foreign national applicants with permanent resident permits.

Learn more/Apply for this position