Ryan Cocks
Verified Expert in Engineering
DevOps Engineer and Software Developer
London, United Kingdom
Toptal member since July 15, 2019
Ryan is an experienced software engineer of reliable and scaleable production Cloud systems. He specializes in DevOps, microservices, architecting applications, and application-level observability. He has a solid background in Cloud infrastructure and back-end work. He has good soft skills and has worked in teams of all sizes. Ryan has an excellent ability to understand the business needs behind requirements.
Portfolio
Experience
- Amazon Web Services (AWS) - 6 years
- DevOps - 5 years
- Docker - 4 years
- Kubernetes - 4 years
- Terraform - 4 years
- Datadog - 3 years
- Node.js - 3 years
- Microservices - 3 years
Availability
Preferred Environment
Amazon Web Services (AWS), MacOS, Google Cloud, Docker, Git, Kubernetes, Node.js, ECS
The most amazing...
...project I've worked on was the Rosetta project for Apple. This was a dynamic binary translator used to execute PPC binaries on X86.
Work Experience
Site Reliability Engineer (Datadog Specialist)
BCG - Gamma
- Worked with multiple product teams within the organization, designing their observability (monitoring) solutions.
- Guided teams on architectural considerations for observability. Defined observability best practices and coached the various teams.
- Worked to get as close to real-time awareness of customer visible issues as possible.
- Segmented alerting into different paths for different levels of severity.
- Developed Terraform to set up dashboards and alerting for Kubernetes clusters and canonical architecture (fe/be+db) applications (Datadog).
Site Reliability Engineer (ECS)
Toptal Project
- Re-architected parts of the system that were vulnerable to high load, resulting in a perfect performance with no degradation during peak traffic Black Friday periods.
- Launched the new version of their website on the new infrastructure. Completed with only 10 minutes of planned downtime. The total downtime over two years on the project was less than three hours.
- Implemented alerting and monitoring for the new clusters.
- Customized Fastly CDN to provide outage mitigation. Wrapped the endpoint for an unreliable 3rd-party API with a CDN-managed endpoint that redirected to a backup if latency was high on the main API.
- Coached the team to improve their architectural designs according to the twelve-factor app principles and SRE best practices.
- Created Terraform-managed AWS Fargate clusters for deployed services.
Site Reliability Engineer (EKS)
Global Fashion Group
- Created new Terraform-managed AWS EKS Kubernetes clusters (multi-region).
- Executed live cluster migrations to new Kubernetes clusters with zero downtime.
- Broke up a PHP back end into microservices, which improved reliability and scalability.
- Moved from self-hosted services to AWS-managed ones, improving reliability using Redis and SQL databases.
- Replaced Jenkins with AWS CodePipeline, which reduced maintenance costs.
- Replaced legacy storage with S3, resulting in improved reliability.
- Reworked database usage, eliminating bottlenecks during the high load.
DevOps Engineer and Release Manager
HERE Technologies
- Designed and developed Jenkins deployment pipelines into AWS. Contributed to the programmatic generation of Jenkins pipelines using Job DSL.
- Set up the production Docker on Amazon EC2 instances.
- Ran the AWS autoscaling, microservices, Kafka, Flink, and windowed stream processing.
- Developed IoT-specific testing that fed continuous test data into production. This allowed us to build real-time dashboards to identify which part of a complex microservices system was failing.
Test Lead
HERE Technologies
- Oversaw the analytics and A/B testing using Apptimize and Amplitude.
- Developed test strategies for mobile devices.
Test Lead
Auckland Transport
- Defined and executed test strategies for a citywide critical infrastructure.
- Created tooling to optimize work methods.
Test Lead
Serato, Inc.
- Oversaw and mentored junior developers.
- Introduced tools and processes for bug tracking, test management, peer review, crash report collection and analysis, beta test cycles, and improving the communication between customer support and product management teams.
- Tested iOS apps.
- Aided Scrum teams to adopt best practices in their testing and quality control.
Test Team Manager
IBM
- Oversaw the management and technical rigor for a team of 11 testers. This included five products in flight from IBM's virtualization, security, operating system performance, and failover stacks.
- Changed the way the development and QA teams interacted by focusing on rapid iterative feedback. This reduced the release cycles from 2-3 months down to 2-3 weeks.
- Successfully oversaw two new major product launches.
Project Manager
IBM
- Managed the development and release cycle for a small software team.
C++ Developer
Transitive
- Developed automated testing infrastructure, including toolchains (cross-linking and bootstrapping build systems), assembly, linkers, CPU, and memory management architecture (SPARC, x86, X86_64, ARM, Itanium), and Linux kernel patching and building.
- Developed dynamic binary translators that would load binaries for one processor and execute them on another using UNIX kernel interface (syscalls).
- Acted as the lead engineer on a specialist performance analysis team. Studied the principles of performance analysis and improvement and applied them to solve performance issues when clients experienced lower-than-expected on-site performance.
Experience
Observability Expert
I was involved in setting up Kubernetes monitoring, becoming an expert in this area. I also developed custom dashboards for rapid situational awareness for Kubernetes clusters. Bringing together monitoring (and alerting) on OOMs, crash-loop backoff, container restarts, resource usage vs. limits, node resources, pod desired state, and unavailable deployment replicas.
Automated Stocks and Crypto Trading Systems
I performed backtesting in Python real-time systems as Node.js microservices deployed on Kubernetes.
Education
Scrum Master in Scrum
Clarus (Agile Coaching) - New Zealand
ISTQB Foundation Certificate in Software Testing
ISTQB - New Zealand
Bachelor of Science Degree in Computer Science
The University of Manchester - United Kingdom
Certifications
Scrum Master
Clarus (scrum.org)
ISTQB
ISTQB
Skills
Libraries/APIs
Terragrunt, Node.js, Jenkins Job DSL, Amazon EC2 API, PubSubJS
Tools
Jenkins, Amazon Elastic Container Service (ECS), Terraform, Git, Fastly, GitHub, Sentry, Google Kubernetes Engine (GKE), Amazon EKS, RabbitMQ, Helm, Amazon Simple Queue Service (SQS), Amazon CloudWatch, AWS Fargate, Amazon CloudFront CDN, NGINX, Amazon Virtual Private Cloud (VPC), Splunk, Grafana, AWS CodeBuild, Amazon Simple Notification Service (SNS), Bitbucket, Ansible, AWS CloudFormation, AWS CLI, AWS IAM
Languages
Perl, Bash, C++98, JavaScript, Ruby, TypeScript, C++, Scala, Python, SQL
Paradigms
Microservices, DevOps, Agile, Continuous Integration (CI), Continuous Delivery (CD), DevSecOps, Testing
Platforms
Docker, Apache Kafka, Kubernetes, Linux, Amazon Web Services (AWS), Unix, AWS ALB, Amazon EC2, AWS Lambda, DigitalOcean, MacOS, Android, iOS, HockeyApp, Apache Flink, Google Cloud Platform (GCP)
Storage
Datadog, Amazon S3 (AWS S3), Redis, Memcached, Amazon Aurora, Google Cloud, MongoDB, PostgreSQL, JSON, Database Performance, MySQL
Frameworks
Ruby on Rails (RoR), Flux
Industry Expertise
Trading Systems
Other
Monitoring, Site Reliability Engineering (SRE), Infrastructure Monitoring, CI/CD Pipelines, Infrastructure as Code (IaC), Containers, AWS DevOps, Cloud Engineering, GitOps, Dashboard Development, Technical Documentation, APIs, Load Balancers, DNS, Performance Analysis, Cloud, AWS Cloud Architecture, Virtual Machines, Lambda Functions, Application Monitoring, Cloud Infrastructure, Configuration Management, GitHub Actions, Amazon RDS, ECS, Back-end Performance, Software Engineering, VPS/VDS, Network Administration, Team Leadership, Cloud Architecture, Transport Layer Security (TLS), Engineering, Apptimize, Amplitude, Google Cloud Functions, AWS CodePipeline, Scrum Master, Financial APIs, Stock Trading, Forex Trading, TradingView, Linux Server Administration, SIEM, Data Visualization, Web Application Firewall (WAF)
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring