DevOps Engineer

Job Summary

Dr Foster is looking for a skilled DevOps Engineer to help build an infrastructure to support Dr Foster web applications existing and new, leveraging the latest private cloud technology on bare metal infrastructure. In this role you will work collaboratively with our data and software development teams to create a robust framework enabling us to deploy and operate our new micro service architecture and empower Continuous Delivery and Continuous Deployment processes.

As a key part of the DevOps team, the build and deployment pipelines supporting our existing processes are mature but are always evolving. The DevOps Engineer will have a passion for automation and will have a desire to continually improve and maintain these processes.

Dr Foster is primarily a Microsoft house, with 99% of the infrastructure running on Windows Servers, meaning an interest in the evolution of “WinOps” is a fundamental criterion of the potential candidate. Scripting skills in Windows PowerShell are absolutely essential and containerisation using Docker would be advantageous.

Dr Foster’s flagship products are created using the latest technologies including VS2017, Web APIs in .Net Core, presentation layers using Angular, MVC, and database technologies including MS-SQL and MongoDB.

All products are built and managed with a CI pipeline using Jenkins and Octopus Deploy. These products are extensively tested within development before getting to our quality teams.

The candidate will be joining a well-established agile development team working in a Scrum fashion. This candidate will need to be a good communicator and would be expected to have vocal opinions on potential solutions to fulfil business needs.

The DevOps Engineer will report into the Lead DevOps Engineer.

Key Duties and Main Responsibilities 

Overall, the role holder will

  • Design, script, adapt, integrate and support complex infrastructure components to ensure a streamlined, repeatable and easily scalable deployments to cloud or on-site
  • Assisting the lead DevOps Engineer in designing the best practices for a highly available and robust micro service platform
  • Improving the level of repeatable deployment in the business
  • Maintaining and Improving the Continuous Integration Pipelines
  • Automating the orchestration of VM’s in the Cloud and private Cloud
  • Release management
  • Competent knowledge of web software development using one or more of ASP. Net, .NET Core, C#, Web API, AngularJS, JQuery
  • Competent knowledge of database technologies including SQL Server, MongoDB, Hadoop and or other Big Data technologies
  • System monitoring and ensuring 100% server uptime

Candidate Attributes and Key Knowledge, Experience, Skills and Qualifications 

Essential

  • Strong Automation skills
  • Strong Continuous Integration/Delivery
  • Strong Scripting
  • VM Orchestration
  • SOA
  • Strong personal drive and ability to work in small teams
  • Superior attention to detail
  • A commitment to quality and a thorough approach to their work

Technical

  • Proven experience in Continuous Integration & Continuous Delivery (including tools such as Jenkins or Octopus Deploy)
  • Containerisation i.e. Docker
  • Strong Orchestration tools experience, Chef, Terraform, Kubernetes
  • Windows PowerShell
  • C#, ASP.NET MVC5, .Net Core, AngularJS
  • Web APIs
  • MS SQL Server, MongoDB, Hadoop, Cassandra, Kafka
  • Microsoft Azure Cloud Services
  • Git source control

Desirable

 Azure experience

  • Agile software development (e.g. SCRUM)
  • Experience of working in a rapid application development environment
  • Service discovery and monitoring
  • Windows Server 2012/2016
  • Web security and technology

Key Internal and External Relationships

  • Development team / DBAs
  • Product Team