The DevOps Engineer provides a key role in the development and delivery of high quality systems that operate in both high volume transaction environments and through our web front-ends. The role is part of the development and operations team that designs, creates, maintains and manages the systems delivering our SaaS and online services to Konsentus clients.
Our development and operations team is creating and managing the systems behind our state-of-the-art technology platform. As a DevOps engineer you will be playing a full part in this team, helping to build out the Konsentus service platform by helping to build out a high quality, robust and reliable, systems environment. You will be working in both high volume transaction environments (back-end APIs) and with our forward-facing client user interfaces (front-end web services). You’ll also have the opportunity to vary your role putting on your Developer or Release Manager hat as and when required. You will be:
- Building on and maintaining our IaC, to meet the needs of our rapidly growing business, in a stable, secure and robust manner
- Working on our high volume, scalable, transaction platform, as well as building client facing management information systems, to create high quality, reliable services and contributing to the technical vision for the business
- Ensuring the necessary environments are in place for our services to support all layers - Dev, QA, Stage, Sandbox, Production, etc.
- Building, improving and maintaining our tools for continuous build, automated testing and release management (TDD / BDD)
- Working in a collaborative team, where your ideas and opinions are valued and respected, to create solutions, solve problems and to help your colleagues
- Expected to inspire and engage more junior engineers to build their capability and understanding of DevOps and Engineering best practises
- Working to maintain and improve the stability and performance of the infrastructure
- Keeping up to date on the latest industry trends and openly shares ideas
- Working with and helping other team members to share experiences to develop your collective skills and capabilities
You will be joining a growing, professional and highly motivated team. We expect you to feel valued, to learn lots and explore new areas. We also expect you help use that learning to bring your fellow team members with you. Working together, we expect it to benefit you, the team, the business, the systems and our clients.
In order to be successful in this role, we are looking for people with experience in DevOps methods and techniques, using a range of technologies, with a passion for learning more and for helping others to exploit them.
Well practiced in agile development environment, you could currently be a skilled developer looking to develop skills and to take on a larger challenge, or an existing DevOps engineer that relishes the challenge of delivering systems code in to a high-volume, high-availability SaaS environment. Either way, we are looking for practical people with the right experience and attitude that have a passion for developing systems in to demanding environments such as ours.
It is likely that you have worked with a variety of technologies, probably including:
- Experience of implementing Infrastructure as Code, with tools such as CloudFormation, Ansible, Terraform or Puppet
- Multi-zone, multi-region, resilient and scalable applications
- Previous experience in a DevOps and developer roles in an agile context
- Expertise in Continuous Integration, Continuous Delivery and Continuous Deployment
- Understanding of system administration tasks in cloud environments (e.g. AWS)
- Containerisation and microservices (e.g. Docker, rkt)
- IaaS and PaaS (e.g. AWS, Openstack, Kubernetes)
- SaaS and RESTful API solutions
- Application stacks (e.g. Node.JS)
- RDBMS (e.g. PostgreSQL, MySQL, Oracle, MS SQL)
- NoSQL (e.g. MongoDB, Cassandra, Riak)
- Experience configuring and working with monitoring and APM tools (e.g. Newrelic, Zabbix, DataDog, etc.)
- Knowledge of networking (TCP/IP, DNS)
- Experience creating and working with development pipelines using tools such as Git, Jenkins, CircleCI, NPM
- Proven experience working in Agile development environments and implementing DevOps best practices and methodologies
- Experience in coaching and mentoring your colleagues and peers