Steve King, Developer in Kelowna, BC, Canada
Steve is available for hire
Hire Steve

Steve King

Verified Expert  in Engineering

Docker Developer

Location
Kelowna, BC, Canada
Toptal Member Since
August 22, 2022

Steve is an expert in Python with a solid background in data structures and algorithms. He has experience developing streaming systems, data pipelines, cloud-native microservices, automated testing suites, and CI/CD pipelines. Steve is seeking interesting challenges in web development, distributed systems, and data engineering.

Portfolio

Anjuna Security
Architecture, Amazon Web Services (AWS), Python, Go, Amazon EC2...
Softmax Data Inc.
Python, Kubernetes, Apache Kafka, Microservices, Docker, PostgreSQL, Prometheus...
Article
Java, MySQL, Play, JavaScript, Web Development, Amazon Web Services (AWS)...

Experience

Availability

Part-time

Preferred Environment

PyCharm, Linux

The most amazing...

...software that I've developed was a test suite for the Haskell protocol buffers library on GitHub that runs on Travis CI.

Work Experience

Software Engineer

2022 - 2023
Anjuna Security
  • Designed and implemented extensions to a Python and Linux-based system testing framework that deploys and interacts with AWS Nitro Enclaves using Kubernetes, unlocking capabilities for validating a confidential computing solution.
  • Extended Jenkins CI/CD pipelines to automate repetitive development tasks by leveraging Jenkins plugins and writing Groovy scripts to describe pipelines as code, leading to an improved development process.
  • Leveraged the latest features in the Python standard library to design and implement a Pytest system testing framework, resulting in a design that could be adapted across the organization for testing a range of confidential computing solutions.
  • Produced technical recommendations on using Kubernetes and implementing distributed systems through architectural design documents, test plans, code reviews, proof of concepts, and weekly technical demos.
  • Improved logging of a Go-based runtime codebase that powered an AWS Nitro Enclave confidential computing solution, leading to increased observability of features that interacted with AWS cloud services.
Technologies: Architecture, Amazon Web Services (AWS), Python, Go, Amazon EC2, Amazon S3 (AWS S3), Kubernetes, Amazon EKS, AWS Key Management Service (KMS), Bash, Linux, Intel SGX, Pytest, Jenkins, CI/CD Pipelines, Google Cloud, Azure, Docker, Containerization, Python 3, Test Case Development, Microsoft Azure, QA Automation, Terraform, Agile, Software Architecture, Test-driven Development (TDD), Bash Script, Testing, Git, MongoDB, PyCharm, Boto 3, Boto, JSON

Software Developer

2020 - 2021
Softmax Data Inc.
  • Developed a stream-processing cloud-native microservice using Python, Docker, and Kubernetes. Led to low latency when delivering actionable data to customer-facing applications.
  • Created data processing microservices that integrated with AWS and Kafka. Utilized both multicore and distributed computation, resulting in low latency.
  • Wrote design documentation and extensive unit tests for Python microservices while working as an individual contributor on a four-engineer team. Resulted in reliable and well-defined solutions for the stakeholders.
  • Instrumented microservices using Prometheus. Improved observability of the distributed system.
Technologies: Python, Kubernetes, Apache Kafka, Microservices, Docker, PostgreSQL, Prometheus, Amazon Web Services (AWS), Back-end, Back-end Development, APIs, Data, REST APIs, REST, API Development, Python API, FastAPI, Containerization, Python 3, Python 2, ETL, Data Pipelines, Agile, Amazon S3 (AWS S3), Data Manipulation, Software Architecture, SQL, Linux, Test-driven Development (TDD), Amazon EKS, Message Queues, Testing, Git, Data Engineering, CI/CD Pipelines, PyCharm, Amazon EBS, Boto 3, Boto, JSON

Software Engineer

2019 - 2020
Article
  • Increased test coverage of a Java and MySQL application server used by eCommerce applications. Brought increased confidence when refactoring and extending the application.
  • Interviewed stakeholders and developed design documentation. Finalized well-defined project requirements and deliverables.
  • Planned and executed the addition of a new feature on a two-developer team. Helped to unlock a business process to improve the customer experience.
Technologies: Java, MySQL, Play, JavaScript, Web Development, Amazon Web Services (AWS), Back-end, Back-end Development, APIs, REST APIs, REST, Node.js, Software Architecture, SQL, Object-relational Mapping (ORM), Linux, Test-driven Development (TDD), Testing, Git, CI/CD Pipelines, HTML, Full-stack Development, JSON

Software Engineer

2017 - 2019
Calabrio
  • Improved the observability of a cloud-based analytics back-end reporting engine by increasing the volume and quality of application logs and metrics. Helped to troubleshoot production deployments.
  • Researched and developed back-end solutions in Haskell, Java, Protocol Buffers, PostgreSQL, RabbitMQ, and Redis. Included as part of features in the Calabrio ONE version 11 release, leading to an improved user experience.
  • Extended automated CI/CD pipelines, including an integration testing framework, and a build pipeline, using Jenkins and Docker. Worked on a three-engineer team, leading to reliable and reproducible software builds and deployments.
Technologies: Haskell, Java, PostgreSQL, RabbitMQ, Docker, Redis, Jenkins Pipeline, Bash Script, Amazon Web Services (AWS), Back-end, Back-end Development, APIs, Data, REST APIs, REST, API Development, Node.js, CI/CD Pipelines, Containerization, Python 2, Data Warehousing, AMQP, QA Automation, Agile, Data Manipulation, Elasticsearch, Jenkins, Software Architecture, SQL, Linux, Test-driven Development (TDD), Amazon Elastic Container Service (Amazon ECS), Message Queues, Testing, Git, Data Engineering, Data Analytics, Python, JavaScript, HTML, Bash, Amazon EBS, Boto 3, Boto, React, Full-stack Development, JSON, Parsers

Software Engineer

2016 - 2017
Adenda Media Inc.
  • Designed and executed the migration from a Linux virtual machine-based distributed system infrastructure to Docker containers running in Kubernetes on the Google Cloud Platform (GCP).
  • Solved scalability and availability problems by implementing horizontal autoscaling and replicating application services. Led to improved reliability, fault tolerance, and resource usage.
  • Developed microservices using Scala to scale a Redis cluster in-memory cache used by application servers. Resulted in an efficient usage of resources.
Technologies: Scala, Kubernetes, Google Cloud Platform (GCP), Redis, Druid.io, Docker, Linux, Apache Kafka, Web Development, Back-end, Back-end Development, APIs, DevOps, Data, REST APIs, REST, Google Cloud, Containerization, Microsoft Azure, ETL, Data Manipulation, Software Architecture, Amazon EC2, Git, Data Engineering, Data Analytics, Node.js, MongoDB, Azure, JavaScript, HTML, Full-stack Development, JSON

Haskell Protocol Buffers Library Test Suite

https://github.com/k-bx/protocol-buffers
Developed a test suite for an open source protocol buffers library for Haskell. The test suite uses property-based testing using QuickCheck to test some of the major features of the library. I verified that the serialization of typed data works as expected.

Languages

Haskell, Python, HTML, Bash, Python 3, SQL, Bash Script, JavaScript, Python 2, CSS, HTML5, Scala, Java, Erlang, Go

Libraries/APIs

REST APIs, API Development, Python API, Node.js, React, Jenkins Pipeline, Intel SGX, AMQP

Tools

PyCharm, Pytest, Git, Amazon EKS, Jenkins, Amazon EBS, Boto 3, Boto, RabbitMQ, AWS Key Management Service (KMS), Terraform, Spark SQL, Amazon Elastic Container Service (Amazon ECS), Amazon Simple Queue Service (SQS), Figma

Paradigms

Web Application Architecture, Microservices, Agile, Test-driven Development (TDD), Testing, REST, DevOps, ETL, Dynamic Programming, Software Testing, Functional Programming, Object-relational Mapping (ORM)

Platforms

Linux, Amazon Web Services (AWS), Kubernetes, Docker, Apache Kafka, Amazon EC2, Google Cloud Platform (GCP), Azure

Storage

PostgreSQL, Amazon S3 (AWS S3), JSON, Databases, Redis, Data Pipelines, Druid.io, MySQL, CouchDB, Google Cloud, Elasticsearch, MongoDB

Other

Algorithms, Back-end, Back-end Development, APIs, Data, CI/CD Pipelines, Containerization, QA Automation, Data Manipulation, Data Engineering, Computer Science, Web Development, FastAPI, Test Case Development, Software Architecture, Message Queues, Data Analytics, Full-stack Development, Parsers, Computer Networking, Prometheus, X.509 Certificates, Transport Layer Security (TLS), SSL, Debugging, Programming, Binary Search Trees, Data Structures, Hash Tables, Stacks, Type Classes, Graphs, Graph Theory, Graph Algorithms, Architecture, Data Warehousing, Microsoft Azure, User Experience (UX), User Interface (UI), Artificial Intelligence (AI), Engineering

Frameworks

JSON Web Tokens (JWT), Play, Spark, Django

2013 - 2016

Bachelor's Degree in Computing Science

Simon Fraser University - Burnaby, Canada

2011 - 2013

Coursework in Computer Science

Langara College - Vancouver, Canada

SEPTEMBER 2023 - PRESENT

Meta Front-End Developer Specialization

Coursera

JULY 2023 - PRESENT

Generative AI with Large Language Models

Coursera

JUNE 2023 - PRESENT

Django Web Framework

Meta

APRIL 2023 - PRESENT

An Introduction to Spark

Educative

AUGUST 2022 - PRESENT

Securing REST APIs for Web Applications and Services

Educative

SEPTEMBER 2019 - PRESENT

Algorithms on Strings

Coursera

JULY 2019 - PRESENT

Algorithms on Graphs

Coursera

JULY 2019 - PRESENT

Data Structures

Coursera

JUNE 2019 - PRESENT

Algorithmic Toolbox

Coursera

MAY 2019 - PRESENT

Functional Program Design in Scala

Coursera

MAY 2019 - PRESENT

Functional Programming Principles in Scala

Coursera

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