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.
POSITION INFO :
- 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 of 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;
- Multi-functional team collaboration;
- Data-driven with attention to detail and big picture.