Contour is building the global standard for trade by bringing together the world's banks, corporates and ecosystem partners, onto a common, digital, and trusted network. Powered by innovation, trust and collaboration, Contour uses decentralised technology to offer seamless integration with market-leading digital document systems and other digital networks, enabling frictionless data-flow across the entire trade ecosystem.
Contour’s Engineering team utilises the latest in distributed ledger technology (DLT) to solve complex decentralised problems. As a team, we are collaborative and are constantly looking at ways to enhance our product through the latest tools and technologies. We are a passionate team that promotes innovation, transparent knowledge-sharing and the idea that challenging one another will bring out the best in each of us.
Context of the role:
Reporting to the Head of Delivery, the Senior DevOps Engineer will be responsible for the cloud hosting of our Corda blockchain based application, as well as managing our Continuous Integration Continuous Delivery (CICD) pipelines and toolsets. This role will see you involved all stages of development and delivery, by establishing standards and conventions to ensure the deployment and release processes follow engineering principles, practices and design patterns. You will have strong experience working in an agile environment where software engineers, testers, product managers and users work closely together.
Responsibilities - Cloud
Work in collaboration with senior team members to define and refine multiple architectures on Contour application node (Corda Node, React UI, Spring Boot Web API’s, RDBMS) hosting and orchestration.
Automate the deployment pipelines to enable rapid creation, upgrading, maintenance, and decommissioning of nodes - scaling to 100/1,000s of nodes.
Define and implement monitoring & alerting strategies and toolsets, remediation processes and SLAs.
Define system patching and upgrade policies, processes and automation scripts.
Collaborate with the product team on security requirement definition and implementation.
Work with external auditors on testings (e.g. penetration).
Track estate utilisation to optimise costs.
Work with senior team members to manage cloud subscriptions
Responsibilities - DevOps
Define and implement Continuous Integration Continuous Delivery (CI/CD) pipelines to support rapid software developments, with structured change control/configuration management.
Quickly and correctly diagnose issues with environments, including identifying patterns that could indicate a security threat.
Support the execution of tests and other activities on testing environments, including liaising with customers and associated project management and planning.
Deploy and operate internal/external testing environments.
Create, update and own environment configuration documentation.
Ensure parity between environments, where applicable.
Manage and monitor all installed systems and infrastructure.
Proactively ensure the highest levels of systems and infrastructure availability.
Monitor and test application performance for potential bottlenecks, identify possible solutions and work with developers to implement those fixes.
Maintain and operate security, backup, and redundancy strategies.
Write and maintain custom scripts to increase system efficiency and lower the human intervention time on any tasks.
Maintain an in-depth knowledge of current technologies and trends in networking, hosting, operations.
Liaise with vendors, customers, team members and other IT personnel for problem resolution.
8+ years working with cloud architectures
Proven working experience in installing, configuring and troubleshooting UNIX /Linux based environments, preferably for a financial services institution
Experience in the administration, performance tuning/monitoring of Java application stacks
Experience with automation software (Ansible and Terraform)
Experience with containerisation and orchestration (Docker & Kubernetes)
Solid scripting skills (shell, Python)
Experience with monitoring systems (DataDog, Graphite/Grafana)
Experience with central logging systems (ELK)
Experience of deploying, using and managing the Atlassian toolset (Jira, Service Desk etc).
Solid networking knowledge - particularly cloud network configuration and management.
Solid knowledge of database configuration and management - particularly cloud bases PaaS offerings.
Solid knowledge of web & application servers (NGINX, Tomcat, etc)
Understanding of security engineering
Deep and broad understanding of computer science and engineering principles, most likely obtained through significant professional experience
Experience controlling and managing Azure cloud subscriptions and resources would be a bonus
Experience with one or more blockchain technologies (ideally Corda) desirable but not essential