Our Dev House is a full-stack workforce that functions within an agile environment. Using our evolving processes, we conceive, specify, design, develop, test, and maintain software applications, frameworks and platforms.
As part of the DevOps team, you will be responsible for managing and maintaining infrastructure as well as building and supporting the various DevOps activities. The company is expanding into further international territories in addition to building and rolling out a new software platform. This creates an exciting environment where there is opportunity for interesting work to be carried out from a DevOps point of view.
GLI is currently working remotely, until it is safe for our employees to return to work. The successful candidate will be virtually onboarded for now.
Essential duties and responsibilities include but are not limited to the following:
- Maintenance and management of internal and external infrastructure required for software development and production (server, switches, firewalls, routing, vm’s etc)
- Continuous delivery and software tooling to aid the software development process and production deployment strategies.
- Continuous integration tooling on servers to aid in the software development process. Kubernetes experience is very welcome.
- Management of virtual environments, including: VMWare, ProxMox.
- Find opportunities to remove repetitive and/or error prone tasks via automation
- Ensuring maximum uptime via the continuous monitoring of critical services. This includes ensuring all the required monitoring is in place.
- After hours and weekend support according to a support schedule. Requires 24/7 availability for support.
- Ensure that the provisioned equipment is being utilised efficiently to maximise the efficiency and capacity of the systems and meet business needs.
- Collaborate with the software development staff to ensure their development infrastructure requirements are catered for.
- Ensure redundancy on all systems.
- Ensure all systems have documented and tested backup plans.
- Ensure IT assets are correctly maintained in inventories.
- Manage the configuration of the various platforms utilised for production and development.
- Assist the development teams to manage code from local devices through to production via multiple development environments. I.e. the manage the DevOps life cycle.
- Collaborate with the software development teams on infrastructure requirements for new features and services to be delivered to production. This includes planning, design, documentation and implementation of new production systems.
- Produce design and systems documentation where required.
- Develop and improve operational practices and procedures.
- Continuous optimization and improvement to existing processes, systems and infrastructure.
Skills and Qualifications
- Excellent knowledge with System Administration in Linux. (Ubuntu, CentOS, RedHat) and associated technologies.
- Basic knowledge managing version control platforms. (eg: Git, Perform, SVN, TFVC)
- Working knowledge of package management systems. (eg: rpm, deb , etc)
- Working knowledge of network services. (eg: NFS, ISCI, SAMBA, LDAP, DNS , etc)
- Strong knowledge of the OSI model and the layers.
- Strong knowledge of Linux commands. (eg: df, ip, cd, netstat, htop. etc)
- Working knowledge with relational and non-relational databases. (eg: PostgreSQL, MySQL, NoSQL & MongoDB)
- Strong knowledge of web server technologies. (eg: NGINX, Apache HTTPD, HAProxy)
- Working experience with one or more of the scripting languages. (eg: Bash, Python, Perl or PHP, etc)
- Experience in configuring backup and recovery applications. (eg: Bacula, Veeam, Netbackup, etc)
- Working experience with one or more monitoring applications. (eg: Zabbix, New Relic, Datadog, Nagios, Prometheus, Grafana)
- Experience with the following in-memory databases. (eg: Memcache, Redis)
- Experience with development methodologies. (eg: Agile, Scrum, Jira, Bitbucket etc)
- Working knowledge of configuration management tools. (eg: Ansible, Chef, Puppet, etc)
- Working knowledge of centralized logging. (eg: Logstash, Rsyslog, Graylog Splunk, etc)
- DevOps lifecycle setup, management, optimisation and operations.
- Experience with public key infrastructure (PKI) and experience with certificate lifecycle management. (eg: Venafi , Namecheap , Comodo & LetsEncrypt )
- Advanced experience with Networking and troubleshooting. (eg: TCP/IP, DNS, VPN, routing, switching, firewalls, LAN/WAN, traceroute, iperf, dig, curl or related)
- Advanced experience with continuous integration technologies. (eg: Kubernetes, Docker, Jenkins, GOCD, Openshift, CircleCI, etc)
- Working knowledge configuring and maintaining virtualized environments. (eg: VMware, Proxmox & Xen)
- Experience with security audits. (eg: penetration testing, security certification, ISO 27000 & PCI)
- Knowledge in ethical hacking / defensive systems. (eg: SIEM, IDS/IPS, Canaries, Fail2Ban, etc.)
- Working knowledge of server hardening. (eg: File integrity, intrusion detection, application firewalls, auditing, etc
- Strong knowledge of cloud technologies. (eg: AWS, Azure, Google Cloud, etc)
- Experience with WSO2 technologies. (eg: ESB, Identity – IAM, API Manager)
- Strong experience implementing a high availability environment or any load balancing technologies.
- Self-motivated with strong team spirit.
- Ability to work independently with little supervision as well as ability to work within a team.
- Excellent multi-tasking skills.
- Ability to communicate well to both technical and non-technical staff.
Qualifications and additional skills:
- Degree/diploma in Information Systems
- Mid-level experienced position.
- At least 3 years’ experience in similar role.
- Displays positive attitude
- Demonstrates flexibility in day-to-day work
- Able to think logical and objectively with the ability to think outside of the box
- Comfortable working under pressure
- Successfully engage in multiple initiatives simultaneously
- Excellent written and verbal communication skills