Title : Technical Lead Developer
Location : Cape Town (Mowbray)
At redPanda Software we have a decade of experience in developing customised software for the retail and financial industries. Working with clients in South Africa, Africa and the UK, we have built our reputation for producing the highest quality solutions across the following specialised business processes: Customer Experience, Point of Sale, Data Warehousing, Credit Management, Insurance and Payment Systems. Our core values are: Harmony, Pride, and Accountability in everything we do.
PURPOSE OF THE JOB
This Technical Lead Developer is responsible for CODE QUALITY.
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.
- SDLC – Leads or helps to lead project teams to design, develop and test enterprise-ready business applications in a variety of platforms (e.g. web-based, desktop-based, service-based or scheduled processes).
- BEST PRACTICES – Understands industry best practice related to coding and tools & understands redPanda’s established best practices and assists/contributes to establishing the RPs standards.
- DEVELOP – Write quality code, set an example of quality for the team members. Gain team’s respect by producing quality of code in line with RPs standards.
- 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.
- 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
- 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.
- Drive unit and integration testing
- 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
- Perform technical management
- Build & maintain high team morale
- Be role model for the team
- Actively foster knowledge sharing, to avoid centralisation 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 flow 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 Technical Planning meetings 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.
Mandatory Skills / Abilities required to do the Job
- Generalist with the following core competencies and a proven track record in:
- Container technologies such as Docker, Kubernettes etc
- nTier Enterprise Development – Web, Mobile and Desktop Frontend, Middle Tier & Database
- C#, .Net core, ORMs such as Entity Framework, Linq2DB, nHibernate
- Presentation Layer (UI) – HTML, CSS, Javacript, such as ReactJS, Angular, Bootstrap etc
- Databases – MySQL, document databases, key/value databases
- WINDOWS and LINUX Operating Systems
- Testing Tools – XUnit, Moq, RobotFramework or exposure to any testing tools preferable
Personal Attributes / Character traits required for this job
- Analytical thinker
- Critical thinking skills
- 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
- Self development to keep abreast of industries best practices, innovation and evolution in software development as well as technical toolsets
- IT Diploma or Degree in related field.
- +5 years of experience
- Retail exposure would be an advantage
- Experience in using Agile (SAFe) methodologies will be an advantage.
- Exposure to Enterprise development preferred.
- Competency based interview to assess above requirements
- Applicable assessment
- Background checks