The Manager of DevOps is responsible for overseeing the set-up, implementation, operation, security, orchestration, scaling, monitoring and trouble-shooting for mission critical systems and applications. You will lead and manage a team of technical DevOps experts who manage complex applications and systems, while investigating and analyzing the feasibility of system requirements translating them to detailed specifications leading to implementation. As the practice of DevOps itself continues to evolve, you will also be a leader in evolving our technology stack as well as standards and practices for both efficiency and practicality across the enterprise.
JOB DUTIES & RESPONSIBILITIES:
- Develop and maintain solutions which automate the configuration, provisioning, deployment, scaling and monitoring of our core systems.
- Oversee automated deployments into our production and staging environments.
- Lead and manage the implementation of DevOps processes, protocols and tooling (off the shelf and custom).
- Responsible for ensuring high availability and acceptable levels of performance of mission critical applications.
- Review and approve technical documentation in online tools (Changes, Validation docs, systems proposals/recommendation, etc).
- Liaise with other technical teams (i.e. operations, security, development, networking, IT Management, etc.) as well assist in multi-departmental Projects.
- Contributes to the success of the organization by helping others accomplish job results; learning new skills needed by the team; finding new ways to help the team.
WORK EXPERIENCE AND EDUCATION REQUIREMENTS:
- 7 or more years of working experience in infrastructure operations, server administration and software development.
- Bachelor or Master’s degree or equivalent experience.
- Experience leading/managing and mentoring a team of DevOps professionals.
- Deep understanding of and extensive experience with configuration management, CI/CD pipelines, and other DevOps tools.
- Plan, organize and document complex system design activities.
- Ensure System configuration is consistent with institutional policies/procedures.
- Knowledge of programming languages and operating systems (Windows Server and Linux/Unix), current equipment and technologies in use, system performance monitoring tools, and good knowledge and extensive experience with Linux.
- Networking fundamentals, mainly TCP/IP , and a basic understanding in routing and switching protocols.
- Understanding application layer protocols, (http, soap, dns, smtp, snmp, ssh, tls/ss, etc.).
- Understanding of application security specifications such as SAML, OAuth2, etc.
- Good knowledge and experience with web servers such as Apache, IIS, nginx.
- Knowledge of proxies and Web Application Firewalls like apache mod_proxy, Mod_Security, haproxy.
- Experience with databases such as MySQL, MongoDB, ElasticSearch, MSSQL.
- Experience deploying and managing various application stack footprints, (Java, PHP, Python).
- Experience with container technologies such as Docker Experience with log aggregation and analysis technologies such as the ELK stack.
- Knowledge of API management and proxy technologies.
- Knowledge of versioning tools such as subversion and Git.
- Knowledge of configuration management tools like Puppet , Chef and Ansible.
- Knowledge of cloud providers Microsoft Azure, Google Cloud and AWS.
- Security and/or infrastructure experience would also be a significant benefit.
- Communicate technical/complex information both verbally and in writing to peers, senior management, and other non-technical personnel.
- An ability to establish and maintain cooperation, understanding, trust and credibility within the team.
- Perform multiple tasks concurrently and respond to emergency situations effectively.
- Ability to work on multiple IT projects, as well as manage day to day operations.
- Excellent problem-solving skills.