About the position
Management:
- Leading and mentoring a team of DevOps engineers.
Deployments and responsibilities:
- Design & implement CI/CD solutions using most appropriate approved patterns and for single and multi-tier architectures.
- Track monitoring and alerting of downstream operations to identify issues with CI/CD.
- Identify patterns/changes post new CI/CD.
- Use monitoring to track changes in patterns of systems performance.
- Share successful patterns for building applications/services and deployments across teams and/or products.
- Be actively involved with roll-back/forward decision making.
Planning preparation and participation:
- Planning preparation - Gather business system requirements.
- Identify all dependencies, including those which may not be immediately apparent.
- Act based on understanding/findings to reduce the possibility of failure.
- Planning - participate in project planning.
- Working with project managers and developers to get software and systems up and running in a timely manner and ensuring long-term scalability for the business.
- Share operational needs and development forecasts to allow for accurate planning of projects in a timely manner.
- Explain and help teams visualise the end-to-end flow of software, through DevOps.
- Help teams get a better understanding of the steps involved to get CI/CD done which in turns brings value to the customer.
Implementation of solution:
- Ensure solution has a High Usability factor, is reliable and maintainable.
- Understanding emerging technologies and methodologies such as microservices, and when to implement them.
- Understand and implement containerisation where the concept of virtualisation not only mimics the digital configuration of the hardware but also mimics the OS and libraries that encompass the entire runtime environment.
- Acquire all the skills needed to use and deploy: Server Virtualisation and Network Virtualisation
- Provide/create/document and share diagrams of Infrastructure.
Support Testing and Verification:
- Ensure the project management team and management team are informed of potential risks due to unfixed defects or fix defects.
- Develop a continuous automated testing strategy that would ensure testing is performed earlier in the software lifecycle, increases quality, shortens the long test cycles, and reduces the possibility of defects making their way into the production code.
- Assist developers in practising high quality/velocity methodologies such as test-driven development (TDD).
- Ensure that each change is built and verified by means of tests and verifications that would quickly detect any integration errors.
- Recommend tools and techniques that will enable high velocity delivery of applications.
Perform Monitoring and Configuration:
- Ensure accelerated CI/CD with the use of continuous monitoring and configuration management tools.
- Perform upgrades and complete fixes within the production environment.
- Ensure that all modules are ready for production based on specific procedures.
- Ensure that the documenting of knowledge transfer happens.
- Perform ongoing evaluation of existing applications and platforms.
- Recommend solutions to enhance performance by gap analysis.
- Perform monitoring, configuration, maintenance and troubleshooting of the implemented solution.
Use Tools and Technologies:
- Display a thorough understanding of DevOps key concepts.
- Display knowledge of various DevOps tools and technologies.
- Identify new tools which would improve the overall effectiveness of DevOps.
- Use tools to increase the overall development velocity and code quality.
Minimum Requirements:
Qualifications and experience required:
- Matric plus an IT Degree (Computer Science/Engineering) or 3 year National IT Diploma.
- A minimum of 8 years in a Development/Deployment role.
- A minimum of 3 years in a Lead DevOps Engineer role.
- Detailed knowledge of the SDLC and management of software projects.
Technical skills required:
- Previous Software Development skills required in Microsoft stack environment (C#, .Net Core, Entity Framework, MS SQL, ASP.NET, MVC, Visual Studio, AngularJS, Angular, Bootstrap etc.)
- Test-driven development (TDD).
- Cloud (Azure).
- CI/CD
- Agile methodology.
- Kubernetes & Docker.
Desired Skills:
- Lead DevOps Engineer (Azure)
- Lead DevOps Engineer
- Azure Lead DevOps