Toby Fleming

Software Engineer LinkedIn / GitHub
Education
2009 – 2013

Masters of Physics (MPhys) at University of Leeds

Bachelor of Physics (BSc Hons.) at University of Leeds

Work History
2020 – present

Member of Technical Staff at Qumulo

At Qumulo, I worked on the read/write layer of a network file and resource sharing protocol implementation for our high-performance, distributed file system. It is capable of handling gigabytes of throughput a second with minimal overhead, and has hundreds of tests and automated performance regression tests. (Rust, C, Distributed Systems, High Performance, Linux)

I designed an access control (ACL) feature for this, and am currently engaged in security work. In my first month in this the role, I designed a new feature around REST API access for on-premise and cloud environments, with access control, and audits/repudiation in mind. I also review and hardened existing features. (Information Security, AppSec, AWS, Azure)

As Qumulo is a rapidly growing company, I lead the development of interview screening questions that reflect the day-to-day work at Qumulo. They can be evaluated in 15 minutes or less by an engineer, as opposed to the hour-long commitment for in-person screening. They can also be evaluated blindly, and have a predefined set of evaluation criteria to reduce bias. From data of our 2020 college hiring season, it proved to be more predictive whether a candidate would pass further interview rounds and be made an offer than other questions. (Hiring, Growing Teams)

2018 – 2020

Software Development Engineer II at Amazon Web Services (AWS)

On the AWS CloudFormation team, I delivered the drift detection feature as the tech lead, with support for over 50 resources. This included a private beta and global, multi-region roll-out with in-depth metrics and monitoring. (Java, Distributed Systems, Scalability, Monitoring)

I was involved with the CloudFormation registry for custom extensions from the start. I lead the development of the open-source framework to develop these extensions in multiple languages. As of mid-August 2019, I authored over 150 code reviews and reviewed over 500. I also designed, set up and maintained the continuous integration and continuous delivery pipelines for the framework itself, as well as for the extensions. Over 40 extensions were running a reliable CI/CD system. (Python, Git, GitHub, Open Source, Continuous Integration, Continuous Delivery, DevOps)

I also helped design the CloudFormation registry back-end, and ensured the service could serve on the order of magnitude of 10,000 requests per second i.e. over 10k/s in multiple regions (AWS currently has 22 regions). (Java, NoSQL, DynamoDB, High Availability, Distributed Systems, Scalability, Load Testing)

I set up and maintain the Continuous Integration pipelines for around 10 internal projects. The CI includes auto-formatting enforcement, static analysers for code quality and security issues, comprehensive test suits with 100% code coverage, and integration/black-box testing. (Python, DevOps, Continuous Integration)

Outside of the CloudFormation team, I wrote and maintain internal Python build tooling used by over 450 consumers. I've also developed and deployed mitigations/fixes for security issues. (Information Security, Common Vulnerabilities and Exposures, CVE)

2017

Software Engineer at Kogan.com

My stay in Australia was on a temporary visa. At Kogan, I developed serverless workflows for next-day delivery in the Melbourne metropolitan area, and improvements to product recommendation algorithms. (Elasticsearch, AWS, AWS Lambda, Serverless, Data Mining)

I delivered improvements to the store front-end and back-end systems. I integrated Visa Checkout functionality on the Australian and New Zealand sites. (Python, Django, HTML, Full Stack, Javascript, React, Postgres, PostgreSQL, eCommerce, Payment Processing)

I also improved the speed and reliability of containerised continuous integration workflows. Before, one in five runs had to be restarted. I hardened and parallelised the tests, so that runs only took as long as the longest test suite and the flakiness dropped to one run in 25. I also put Jenkins Blue Ocean in place, a - at the time - new UI that gives better feedback on which test suite failed. (Docker, Jenkins, Continuous Integration)

2013 – 2016

Scrum Master & Software Engineer at IBM United Kingdom Ltd

I was the scrum master for the global IBM FlashSystem V9000 development team. (agile, scrum, Jira, Confluence, Kanban)

As the software architect for IBM Spectrum Scale deployment team, I supported the development of an install toolkit that provided a setup wizard and a fully auditable, automated cluster installation. I also helped design and set-up our continuous integration pipeline. (Python, Chef, Vagrant, Jenkins, Gerrit, Linux/Unix, GPFS, Openstack)

I led the development of IP quorum on IBM Storwize products. If the connection between two sites is lost, this feature allows the cluster to continue running. Instead of a third site appliance, a simple application can be deployed without costly fibre-channel connectivity between all sites. (C, Java, Linux/Unix)

For the initial release of IBM FlashSystem V9000 I owned and shipped the first-time data capture and disaster recovery features. (Perl, C)

As part of the Manchester Lab DevOps team, I ran our DNS & DHCP infrastructure until mid-2015. (Linux/Unix, DevOps, sysadmin, Ansible)

2011 – 2013

Software Engineer at Work AnyWare Ltd

To augment our leading cloud intellectual property document storage service I created a Microsoft Office plugin, which automatically versions and uploads documents when the user saves. Users can also open any version directly without switching to the web interface. I also wrote the server side API. (C#, PHP)

2012

Summer Undergraduate Research Fellow (SURF) at California Institute of Technology

As part of the LIGO Scientific Collaboration, I designed and wrote a web application for collaborative electromagnetic follow-up of gravitational wave candidates. The (Python, NumPy, C, HTML5, Javascript, Data Visualization, Interactive Projection)

2008 – 2009

Junior Software Engineer at Ostertag Solutions AG

I ported our attendant console product from legacy Visual Basic to C#. I designed and coded the UI for a 24" touch-screen VoIP/SIP telephone that was presented at the 2009 CeBIT conference. I also deployed servers and hardware on-site for customers. (Visual Basic, C#, .NET, Linux/Unix)