Software Engineer: Configuration Management at Vodacom
Job Overview
Software Engineer: Configuration Management at Vodacom
Job Description
Role purpose:
The Software Engineer is responsible for creating prototypes, designing and building modules and solutions in an iterative agile cycle, develop, maintain, and optimize the business outcome. This role is responsible for estimating user and technical stories, designing, and developing code, writing and executing unit and integration tests, and supporting testing of deliverables against user and technical story acceptance tests. The incumbent is responsible for performing peer reviews, collaborating with architects and other developers to produce “just enough” design, and ensuring that enough technical documentation and training is provided for reference and operational support. This role is responsible for providing software-related operations support, including managing level two incident and problem management.
Key accountabilities and decision ownership
- Estimate user and technical stories to help inform and prioritize backlog
- Design modules according to user stories, UX designs, and technical stories
- Develop solutions according to module designs and deploy using delivery pipeline
- Develop and execute unit and integration tests; support testing against user and technical story acceptance tests
- Suggest improvements to user stories and UX
- Manage technical debt as part of daily activities
- Conduct peer reviews and maintain coding standards
- Manage incidents and problems as level two and level three support
Core competencies, knowledge and experience
- Agile and lean programming and development of software systems in Web-scale environments
- Backlog item estimation
- Unit, integration, smoke and static code analysis testing
- Architectural element testing e.g. APIs
- Automated testing and tools e.g. Selenium
- Code reviewing
- Software incident and problem management
- Expertise in multiple programming and markup languages, such as HTML, CSS, JavaScript, Java , Ruby, SQL, XML, JSON, YAML and Python, and paradigms such as object-oriented-, even-driven-, procedural-, functional-, and declarative programming
- Working knowledge of the following databases i.e. MariaDB, MySQL, MongoDB.
- Working knowledge of Operating systems such as LINUX etc.
- Continuous integration and continuous delivery methodologies and tools
- DevOps culture, processes, and tools
- Cloud-native architectures, including public cloud PaaS / IaaS, micro-services architectures, API
- Flexibility to deal with changing projects
- Strong problem solving skills
- Strong communications skills
- Strong time-management skills
- Understanding of both the current Telecommunications and digital services market and emerging business and technology trends
Must have technical / professional qualifications:
- Bachelor’s Degree in Computer Science, Information Systems or other related field
- At least 3 years relevant experience of which a minimum of two years is in programming and/or systems analysis applying agile frameworks
- Experience working with agile methodologies, such as Scrum, Kanban
- Experience working with multiple programming and markup languages, such as HTML, CSS, JavaScript, Java, Ruby, SQL, XML, JSON, YAML and Python, and paradigms such as object-oriented-, even-driven-, procedural-, functional-, and declarative programming
- Strong knowledge of software architecture principles
- Experience working in cloud-native environments
- Certified Scrum Developer (CSD) preferred
- Competency in UX principles and practices preferred
- Total Jobs 145 Jobs
- Category Communications
- Location Tanzania