Chris Bainbridge, Developer in Edinburgh, United Kingdom
Chris is available for hire
Hire Chris

Chris Bainbridge

Verified Expert  in Engineering

Research Developer

Edinburgh, United Kingdom

Toptal member since June 21, 2017

Bio

Chris is a senior Linux engineer with a PhD in machine learning. He specializes in software and system development, automation, and DevOps with extensive open source experience—contributing to the Linux kernel, Gentoo, Ubuntu, and Debian. His achievements include being the architecture lead of a Linux distribution, completing a P2V data center migration, and working with startups to develop an Android predictive keyboard and smartwatch.

Portfolio

Open Source Contributions
Gentoo, Debian, Ubuntu, C, Kernel, Python, Linux
Travel Events Site Startup
jQuery, Bootstrap, Ansible, Django, PostgreSQL, Python, Linux
eCommerce Company
Google App Engine, Bottle, eBay API, Python

Experience

Availability

Part-time

Preferred Environment

Git, Ubuntu, Debian, C, Python, Vim Text Editor, Linux

The most amazing...

...code I've ever written is a distributed robotics simulator which used genetic algorithms to evolve robots and neural networks.

Work Experience

Developer

2000 - PRESENT
Open Source Contributions
  • Tested, diagnosed, and fixed several difficult bugs in the Linux kernel.
  • Created a "forcepae" patch to run modern distribution kernels on legacy laptops for the Linux kernel.
  • Wrote IR-USB driver (Linux).
  • Am rated in the top 3% on the site Ask Ubuntu with over 230 answers contributed.
  • Wrote the highest performing "Fasta" benchmark in Golang for The Computer Language Benchmarks Game.
  • Diagnosed and provided fixes for many issues (Ubuntu, Gentoo, Debian etc).
  • Analyzed and fixed the infamous bug "Ubuntu Installer Bug Wipes Your Disk" (Ubuntu).
  • Developed, integrated and managed the release of the whole platform.
  • Created a virtual creature and neural network evolutionary system.
Technologies: Gentoo, Debian, Ubuntu, C, Kernel, Python, Linux

Founder | Senior Engineer

2015 - 2015
Travel Events Site Startup
  • Developed a startup concept that combined event listings with travel information.
  • Created a website (Python, Django, jQuery, Bootstrap, Ansible).
Technologies: jQuery, Bootstrap, Ansible, Django, PostgreSQL, Python, Linux

Senior Engineer

2014 - 2015
eCommerce Company
  • Created and managed an automated sales platform for selling digital goods on eBay.
Technologies: Google App Engine, Bottle, eBay API, Python

Senior Engineer

2012 - 2014
Flexpansion
  • Carried out the development, build, and deployment of the Android app.
  • Developed the server-side code for analytics and problem resolution.
  • Improved the prediction accuracy by implementing personal training from the user's Gmail.
  • Decreased the app size by creating a dynamic language download system.
  • Integrated Google Speech recognition.
  • Implemented app analytics and the website (data, stats, graphs).
  • Increased the new user installation success rate by redesigning it based on gathered metrics.
  • Built and tested the new app and language pack releases.
  • Deployed releases on Google Play.
  • Fixed bugs and ensured device compatibility.
  • Created a new visual interface based on an artist's concept.
Technologies: Bottle, Google App Engine, Python, Linux, Java, Android

Senior Developer

2012 - 2013
Robomotic
  • Developed a prototype smartwatch for the medical device field.
  • Created a system to segment and compress time series data.
  • Built and configured a bespoke Android AOSP.
  • Ported real-time algorithms to the Energy Micro Gecko platform.
  • Worked with various types of hardware: PandaBoard, APC Android Boards, and Raspberry Pi.
Technologies: Algorithms, Embedded Systems Engineering, AOSP, Android, Linux

Founder

2011 - 2012
Delivery Startup
  • Created an online system for person-to-person courier deliveries that solved the "customer not at home" problem.
  • Created a concept and a developed mobile-first web site (Django and App Engine).
  • Handled the Google Maps and PayPal IPN integration.
Technologies: PayPal Development, Google Maps Development, Google App Engine, Django

Software Developer

2009 - 2011
Bloxx
  • Created and migrated the development to a continuous integration build-and-test system.
  • Eliminated over 50% of the server estate by migrating a physical data center to VMware ESXi.
  • Acted as a system administrator and backed up the VM servers running 80+ virtual machines.
  • Created and launched a new product appliance, called Media Filter, as part of a small team.
  • Developed and maintained Linux packages and automated system installers.
  • Built a benchmark system to measure network throughput of the filter appliance.
  • Optimized throughput by implementing multi-threading and asynchronous I/O.
Technologies: Jenkins, Python, VMware, KVM, Dojo, Zend Framework, PHP, Subversion (SVN), C++, Git, Bash, PostgreSQL, C, Python, CentOS, Linux, Debian, Ubuntu, Linux

Architecture Lead

2004 - 2008
Gentoo Linux
  • Packaged and maintained 10+ applications including the Xen and Linux kernel.
  • Created LIRC—a based infrared remote control (IR-USB) driver for the 2.6 kernel.
  • Diagnosed and fixed kernel and driver issues.
  • Built and released ISO installer images.
Technologies: Kernel, Xen, Linux, Gentoo

Solutions Architect

2005 - 2006
Edesix
  • Installed, configured, and performance-tested bespoke Linux servers for clients.
  • Created an embedded modem factory test system using Linux Asterisk PBX.
  • Wrote an Asterisk driver for a soft modem with frequency resampling.
  • Wrote an embedded device driver for a Vodafone Radio-Pad modem.
  • Developed QA test processes and code for point-of-sale terminals.
  • Ported a point-of-sale embedded platform code to new ASIC hardware.
  • Discovered and characterized the ASIC bug.
  • Created a server-side management web application using the Echo2 Java framework.
  • Developed network problem diagnosis hardware using Linux and libpcap.
  • Developed Windows graphical embedded firmware updater in Python and wxWindows.
  • Created a secure Linux manufacture test system with GPG signatures for Chinese factories.
Technologies: PostgreSQL, GCC, Eclipse, Subversion (SVN), Python, Java, C, Linux

Linux Kernel

https://goo.gl/oX1FXy
I diagnosed and fixed several difficult bugs (intermittent hangs and corruption due to race conditions, and more). I created the "forcepae" patch to run modern distribution kernels on legacy laptops. I wrote an IR-USB driver.

Ask Ubuntu

https://goo.gl/oRMU4y
On this site, I have contributed over 230 answers and am rated in the top 3% of contributors.

Distributed Evolutionary Robotics Simulator

https://goo.gl/lxSuyY
I created a distributed genetic algorithm robotics evolutionary system, incorporating a 3D robotics simulator (OpenGL graphics) and a neural network simulator.

Video of Evolved Robots

https://youtu.be/YpK5AoDQ-V4
A YouTube video of some of my evolved robots.

Evolve.py

https://goo.gl/lxSuyY
This code sample integrates my distributed evolutionary robotics software. It implements a genetic algorithm that interfaces with a ZEO database to download evolutionary tasks, run a robotics simulator, and update the database with task results. The code is not standalone; it requires the complete evolver project from my GitHub to run.
2001 - 2009

PhD in Computer Science and Artificial Intelligence

University of Edinburgh - Edinburgh, UK

1997 - 2001

Bachelor of Science in Computer Science and Artificial Intelligence

University of Edinburgh - Edinburgh, UK

Libraries/APIs

jQuery, Google Maps Development, Bottle, eBay API

Tools

Python, Git, KVM/Qemu, Jenkins, Ansible, Vim Text Editor, Subversion (SVN), GCC, AWS, Amazon Virtual Private Cloud (VPC)

Paradigms

Automation, DevOps

Platforms

Linux, Debian, Linux, Linux, Ubuntu, Docker, Amazon EC2, Linux, Android, CentOS, Linux, Kernel, KVM, Xen, Eclipse, AWS, Google App Engine

Languages

C, C++, Java, Python, PHP, Go, Bash

Storage

ZODB, MySQL, PostgreSQL

Frameworks

Bootstrap, Zend Framework, Dojo, Django

Other

Debugging, Research, Linux, SSH, Linux, Neural Network, Gentoo, Linux, Robotics, Embedded Systems Engineering, Algorithms, PayPal Development, VMware, AOSP, Google Play Store

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