Stephen Harris Davidson, Developer in Glumsø, Denmark
Stephen is available for hire
Hire Stephen

Stephen Harris Davidson

Verified Expert  in Engineering

DevOps and Quality Assurance (QA) Developer

Glumsø, Denmark

Toptal member since June 17, 2020

Bio

Stephen is a software engineer with nearly a decade of experience who specializes in all things test automation and infrastructure. He has varied experience from startups to banks and everything in between. His past work includes web applications, content sites, audio/visual testing, and on the soft side: coaching, mentoring, and leading quality initiatives. Stephen has a passion for increasing quality throughout the entire software delivery pipeline from development to delivery.

Portfolio

Maersk
DevOps, Azure, Machine Learning Operations (MLOps), Kubernetes, Terraform...
Shippo,
Quality Assurance (QA), Python, QA Automation, DevOps, Go, Microservices, APIs...
Human Factors, LLC
Amazon Web Services (AWS), MySQL, JavaScript, Docker, Node.js, NestJS, DevOps...

Experience

  • DevOps - 11 years
  • Automated UI Testing - 8 years
  • Test Automation - 8 years
  • Quality Assurance (QA) - 8 years
  • Behavior-driven Development (BDD) - 8 years
  • Node.js - 5 years
  • API Testing - 4 years
  • Performance Testing - 2 years

Availability

Full-time

Preferred Environment

Visual Studio Code (VS Code), Linux, Windows, MacOS, Terminal

The most amazing...

...thing I have developed was an audio/visual testing harness for grading meeting quality.

Work Experience

Senior Cloud Engineer

2021 - 2023
Maersk
  • Led the platform migration from Azure DevOps to GitHub Actions.
  • Led the migration of the existing infrastructure as code (IaC) using Terraform.
  • Operationalized team infrastructure by implementing monitoring, reliability measures, and redundancy to Azure and Kubernetes infrastructure.
  • Containerized all team applications using Docker and introduced local environments.
  • Created Helm charts, customized templates, and other tools for cleaner management of the Kubernetes infrastructure.
  • Reduced the amount of bot traffic the public-facing APIs experienced by 30% using Akamai.
Technologies: DevOps, Azure, Machine Learning Operations (MLOps), Kubernetes, Terraform, GitOps, Docker, ETL, Datadog, Azure DevOps, Prisma, Infrastructure as Code (IaC), REST, REST APIs, Autoscaling, CI/CD Pipelines, Cloud Security, Machine Learning, Linux, Bash, Containers, Redis, Load Balancers, Helm, Ansible, Azure Kubernetes Service (AKS)

Team Lead, Engineering Excellence

2021 - 2022
Shippo,
  • Led a team of four engineers to achieve an engineering excellence roadmap by providing technical specifications and scope and working with individual engineers to unblock their work.
  • Architected a test automation framework using Playwright and a CI/CD pipeline using CircleCI.
  • Provided cross-team coaching on best testing practices in both manual and automated testing.
  • Reduced deployment cycle time by leveraging improvements in CI/CD and quality gates.
Technologies: Quality Assurance (QA), Python, QA Automation, DevOps, Go, Microservices, APIs, Infrastructure as Code (IaC), REST, REST APIs, Docker, CI/CD Pipelines, Content Management Systems (CMS), Linux, Bash, Containers

Back-end QA and Developer

2020 - 2022
Human Factors, LLC
  • Bootstrapped and architected end-to-end and unit testing integration for the entire back-end API built using NestJS.
  • Containerized the API and updated the CI/CD pipeline using AWS pipelines.
  • Led QA initiatives and coached developers on best practices.
  • Developed several pieces of the API, including Redis caching and user authentication and verification flows.
Technologies: Amazon Web Services (AWS), MySQL, JavaScript, Docker, Node.js, NestJS, DevOps, REST, REST APIs, CI/CD Pipelines, Amazon EKS, Content Management Systems (CMS), Linux, Bash, Containers, Redis, Amazon Elastic Container Service (ECS), AWS CodeBuild, Amazon RDS

QA Lead

2021 - 2021
Chalkline
  • Bootstrapped UI testing automation using Cypress.io.
  • Created a visual regression suite using Playwright that tested 250 pages in under one minute.
  • Added unit and component tests to the main React repository.
  • Managed all manual testing processes, including defect management, test planning, and test execution.
Technologies: Node.js, Cypress, Puppeteer, React, Unit Testing, Quality Assurance (QA), Test Automation, CI/CD Pipelines, Linux, Bash, Containers

QA Lead

2020 - 2020
Novo Nordisk
  • Architected a UI test automation suite using Cypress.io.
  • Architected a CI/CD pipeline using a hybrid Azure/AWS solution, including serverless Lambdas to execute tests.
  • Set the test direction for the team by implementing a test strategy and tooling.
Technologies: Azure, Node.js, Cypress, DevOps, AWS Lambda, Serverless Architecture, Docker, CI/CD Pipelines, Linux, Bash, Containers

Performance Testing Specialist

2020 - 2020
Lumate
  • Implemented performance tests to simulate traffic of 7000 requests per second against AWS infrastructure and validated results.
  • Created a comparison of different routing technologies, specifically Node.js vs. Rust, using performance tooling.
  • Successfully deployed and tested routing containers to Kubernetes Cluster to handle 7000 requests per second. This included autoscaling and performance tuning.
Technologies: Amazon Web Services (AWS), Kubernetes, Performance Testing, K6, Apache JMeter, DevOps, CI/CD Pipelines, Linux, Bash, Containers

Senior Business Tester

2020 - 2020
PensionDenmark
  • Constructed the entire test lifecycle for three projects, including planning, execution, and reporting.
  • Implemented integration tests using Postman to demonstrate vendor system capability to integrate with the client system.
  • Oversaw allocation of testing resources throughout the project lifecycle and coordinated all testing tasks using Jira and HP Quality Center.
Technologies: TestFlight, Visual Studio App Center, Postman, HP Quality Center (QC), DevOps, CI/CD Pipelines, Linux, Bash, Containers

Engineering Lead, Quality

2019 - 2020
TIA Technology
  • Led a team of six quality engineers by providing technical direction, career growth opportunities, and training.
  • Commercialized existing Java test automation framework to sell billable hours to customers.
  • Introduced quality gates using GitLab CI for the Angular/Protractor test automation suite.
Technologies: Jenkins, Apache JMeter, Angular, Oracle, Node.js, Apache Maven, Java, DevOps, Docker, CI/CD Pipelines, GitLab CI/CD, GitLab, Linux, Bash, Containers

Software Development Engineer in Test

2017 - 2018
Unity Technologies
  • Implemented system tests for a business-critical Rails application.
  • Engineered automated testing tools for high-traffic and volume Drupal applications.
  • Coached developers on best testing strategies and code quality methods.
  • Produced and maintained end-to-end testing for custom Salesforce applications.
  • Bootstrapped and maintained end-to-end testing for the Drupal application.
Technologies: PHP, JavaScript, Ruby, Node.js, Docker, CI/CD Pipelines, GitLab CI/CD, GitLab, Linux, Bash, Containers

Test Automation Lead

2016 - 2017
Danske Bank
  • Architected test automation for the July and Sunday React web applications.
  • Coached developers, product owners, and other test automation engineers on test automation best practices in all levels of testing: manual, unit, component, integration, and end to end.
  • Set quality metrics and goals for teams in terms of test coverage and test tool implementation.
  • Implemented test automation daily using behavior-driven development tools like Mocha and Cucumber and Node.js.
Technologies: React, Node.js, DevOps, CI/CD Pipelines, Linux, Bash, Containers

Senior Software Engineer in Test

2016 - 2016
Airtame
  • Wrote video and audio test automation for Airtame streaming solution Electron application and firmware using JavaScript with the Nightwatch.js package.
  • Coached developers on Agile testing and testing best practices, both manual and automated.
  • Implemented QA Jenkins jobs to run test automation on various platforms, such as Mac, Windows, and Linux.
  • Led quality assurance initiatives such as bug-hunting parties, testing demos, and Agile testing presentations.
  • Took full ownership of the operational quality assurance process, including test strategy, test case management, and defect management.
Technologies: Amazon Web Services (AWS), Kubernetes, Terraform, Electron, Node.js, DevOps, CI/CD Pipelines, Containers

Senior Software Engineer in Test

2015 - 2016
Citrix
  • Managed all of the QA aspects for the Go2meeting Free team.
  • Implemented logging metrics and visualization for our infrastructure.
  • Created and maintained an automation test framework for the Go2meeting Free in a Python/BDD stack.
Technologies: Angular, React, Ruby on Rails (RoR), Ruby, Python, Node.js, DevOps, CI/CD Pipelines

Software Developer in Test

2013 - 2014
Rackspace Technology
  • Maintained test automation in a Ruby framework for Rackspace.com.
  • Built a Python test automation framework for Rackspace.com using Selenium and Python.
  • Built custom testing tools for developers to assist in day-to-day activities.
  • Maintained DevOps for Rackspace.com that the quality assurance team uses.
Technologies: JavaScript, Python, Ruby, DevOps, Docker, CI/CD Pipelines, Cloud Security, Content Management Systems (CMS), Ansible

Tiny Tapir

https://github.com/StephenDavidson/tiny-tapir
A Selenium wrapper in Python with implicit waits. This allows testers to write synchronous code without expectations that create stable UI tests. The design is based on the popular Ruby framework Capybara.

Chai Signals

https://www.chaijs.com/plugins/chai-signals/
Chai is a popular Node.js testing assertion framework typically used with Mocha and Sinon. I created a set of custom assertions used to test signals in Node.js. Signals are a form of events that can be used in event-driven architecture.

Redmine Zendesk Updater

https://www.redmine.org/plugins/redmine_zendesk_ticket_updater
An integration plugin designed for Redmine, a project management product similar to Jira and open source. The integration is with Zendesk, a popular customer service SaaS tool. The integration passes tickets from Zendesk to Redmine and from Redmine to Zendesk.
2009 - 2011

Bachelor of Science Degree in Computer Science

College of Charleston - Charleston, SC, USA

OCTOBER 2020 - OCTOBER 2023

Certified Kubernetes Application Developer

Linux Foundation

SEPTEMBER 2020 - SEPTEMBER 2023

AWS Solutions Architect Professional

Amazon Web Services

SEPTEMBER 2020 - PRESENT

Advanced Level Test Manager (CTAL-TM)

ISTQB

FEBRUARY 2020 - PRESENT

Certified Tester Foundation Level (CTFL)

ISTQB

Libraries/APIs

Node.js, REST APIs, WebRTC, React, Puppeteer

Tools

Mocha, Git, GitLab CI/CD, GitLab, RSpec, Jenkins, Jira, Terraform, Amazon EKS, Helm, Azure Kubernetes Service (AKS), Amazon Elastic Container Service (ECS), Pytest, WebdriverIO, Subversion (SVN), HP Quality Center (QC), Postman, Visual Studio App Center, TestFlight, Apache JMeter, Terminal, Apache Maven, Prisma, Ansible, AWS CloudFormation, AWS CodeBuild, NGINX

Frameworks

Selenium, Protractor, TestCafe, Angular, Electron, Ruby on Rails (RoR), Cypress, NestJS

Paradigms

Test Automation, Behavior-driven Development (BDD), Continuous Integration (CI), Continuous Development (CD), DevOps, Agile, Kanban, REST, Microservices, Unit Testing, ETL, Azure DevOps, Serverless Architecture

Platforms

Docker, Kubernetes, Amazon Web Services (AWS), Azure, AWS Lambda, OpenStack, MacOS, Windows, Linux, Visual Studio Code (VS Code), Oracle

Languages

Ruby, Python, Java, JavaScript, PHP, Go, Bash

Storage

Datadog, Redis, MySQL

Other

API Testing, Automated UI Testing, Quality Assurance (QA), Integration Testing, Infrastructure as Code (IaC), CI/CD Pipelines, Content Management Systems (CMS), Containers, Performance Testing, QA Leadership, AWS Certified Solution Architect, Cloud Security, Security Testing, K6, Test Management, Test Planning, Test Analysis, Test Case Execution, Test Reporting, Cloud Architecture, Cloud Migration, Machine Learning Operations (MLOps), GitOps, Computer Science, QA Automation, APIs, Autoscaling, Machine Learning, Load Balancers, Amazon RDS

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring