This role requires participation in technical designs and the development and maintenance of software and other digital applications or services. The incumbent will be expected to create prototypes, develop user-centred software, and advise on technical specifications. This role requires fundamentals in engineering practices, an analytical and data-driven approach to problem solving, while following DevOps, SRE and Cloud Based practices.
- Matric, with a degree in Computer Science/ Engineering/ Mathematics or related;
- 3-5 years of experience in mobile application development;
- Knowledge of, and experience in mobile frameworks and technologies such as:
- Flutter
- Experience creating code bridges/channels between native and flutter
- Collaboration tools e.g., Confluence, Jira, Microsoft Teams, Slack
- CI/CD technologies e.g. Jenkins and Git
- Native development – Java and Swift
- Mobile and API Testing Frameworks
- Architecture and Design: Event Driven Architecture / API First / Domain driven design;
- Familiarity with architecture styles such as Microservice and Serverless architectures;
- Knowledge of coding design patterns and experience working with information architecture and design interfaces
- Ability to explain and articulate complex topics to various levels stakeholders.
- Responsible for working on software development initiatives throughout the software development life cycle;
- Follow Agile methodologies (SCRUM / Kanban);
- Work in a DevOps culture;
- Partner with scrum master, product owner, Business Analysts and other developers to ensure optimised project delivery;
- Provide sizing and scoping for development work required;
- Operate as a subject matter expert across the development initiatives;
- Develop technical specifications and software application architecture and designs;
- Build Front-end and/or back-end solutions on the mobile digital channel/platform;
- Build cloud based functional mobile applications at an enterprise level;
- Build and test software prototypes;
- Design and implement test strategy and/or test plans based on continuous testing principles;
- Apply engineering principles for design, development, maintenance, testing and evaluation of software;
- Apply knowledge relating to the architecture of relevant systems;
- Develop, implement and improve the tools to enable software development;
- Identify issues that will enhance system quality, development and standard operating procedures;
- Client engagement to drive new products/ features and to ensure operational excellence;
- Work closely with multi-skilled and cross-functional teams e.g., architects, developers, UX designers, business analysts;
- Drive technology design and implementation;
- Enable rapid iteration;
- Ensure systems are scalable, responsive, robust and secure through monitoring and responding to application performance, stability and availability.
- Customer focus
- Multi-functional team collaboration
- Data-driven and attention to detail and big picture
- Action Oriented
- Continuous Improvement Management
- Automation
- Problem Finding and Solving
- Conflict management and resolution
- High EQ
Desired Skills:
- Systems Analysis
- Complex Problem Solving
- Programming
- C#
- Java
- SQL
- HTML