DevOps

Codethink has worked with many clients in migrating projects to DevOps tooling and increasing their delivery speed, throughput and reliability through DevOps practices.

We’ve contributed to leading community projects including GitLab, Ansible, Bazel and OpenStack, and we apply DevOps practices at Codethink in hosting and maintaining a range of private and public-facing core services 24/7.

Example DevOps Projects

Elastic Multi-Arch Bazel Cloud

Migration for a 500-person software department from custom in-house build infrastructure to elastic architecture using AWS (Cloudformation)/Kubernetes/Bazel supporting build and test for multiple silicon architectures (including x86_64, aarch64), targeting multiple operating systems. The ‘infrastructure as code’ pattern was used for all deployments.

Migration from Legacy to CI/CD

Migration of a large international automotive in-vehicle software development programme from legacy IBM tooling with low productivity and a 6-week release cadence, to a fully automated DevOps pipeline approach, based on GitLab with elastic infrastructure and containerised toolchain runners. Codethink’s implementation resulted in dramatic improvements in productivity and software reliability, and reduced headcount significantly.

CI/CD for Freedesktop-SDK

Planning and implementation of 24/7 public-facing CI/CD for freedesktop-sdk, which provides underlying dependency management and build for the GNOME open source desktop deployed with all the major Linux implementations, including Ubuntu Linux.

Department Overhaul

Transformation of 500-person project delivery department from legacy tooling and methods to optimised CI/CD based on GitLab (on-prem and AWS). This dramatically improved quality and reliabiity, cut build times, reduced uncertainty and business risk.

Automotive Build and Test

Implementation of build and test infrastructure for large automotive company using AWS (Terraform/jsonnet)/Kubernetes/Bazel, achieving dramatic improvements in build and test times and costs via caching and autoscaling workers.

Multi-Cloud Chain Of Custody

Design and development of a cloud-independent DevOps workflow platform for Azure, GCP and AWS to maintain evidence of chain of custody when migrating constructed application suites as containers or system images from development through operations to deployment in production.

Realtime Dashboards and Logging

Implementation of a comprehensive logging and monitoring framework and dashboards using Prometheus, Splunk, Fluent-bit and Grafana. This provided realtime dashboard readouts for cache and performance, infrastructure queues and application logging.

Cattle vs Pets

Transformation of a range of legacy infrastructure and IT services applying the “cattle vs pets” model to achieve resilience, with all production configuration and updates administered via Ansible from git commits, and Icinga for round-the-clock monitoring.

FOSS Source Mirroring

Design and implementation of a public-facing source code mirroring service based on Kubernetes, using Helm charts to simplify reuse of the deployment scripts given appropriate configuration variables.

Remote Execution API (REAPI) Testing

Creation of public-facing CI/CD pipelines for testing the stability of the Remote Execution API against multiple clients, initially with automated deployments on EKS using Terraform, and subsequently migrated to a Docker Compose approach.

Get in touch to find out how Codethink can help you

sales@codethink.co.uk +44 161 660 9930