Joel Jennings, Developer in Cambridge, United Kingdom
Joel is available for hire
Hire Joel

Joel Jennings

Verified Expert  in Engineering

Machine Learning Developer

Location
Cambridge, United Kingdom
Toptal Member Since
December 20, 2019

Joel has a strong mathematics background and spent three years working as a software engineer at a consultancy firm, specializing in embedded software while gaining a broad knowledge of different technologies. He has worked as a machine learning engineer on a range of tasks, from implementing algorithms in research papers to engineering deployed machine learning systems. He is driven by projects that use exciting theories to solve real-world problems.

Availability

Part-time

Preferred Environment

Emacs, Linux, Git

The most amazing...

...project I've worked on was using machine learning to decode neural signals being sent down the vagus nerve of a live subject.

Work Experience

Machine Learning and Software Engineer

2020 - PRESENT
Freelance
  • Published a multi-agent reinforcement learning paper at ICML with Huawei.
  • Deployed TensorFlow audio models to a Raspberry Pi using TensorFlow Lite. The audio was detected using a directional microphone and would allow the attached camera to focus on areas with anomalous sounds.
  • Developed a demonstrator of the UK highways traffic data that provides real-time information about the states of the roads to enable operators to more quickly detect and respond to congestions and accidents.
  • Created a Python Flask back end running on AWS to allow shoppers to offset their products' carbon through Shopify.
Technologies: Python, PyTorch

Machine Learning Research Lead

2020 - 2021
BIOS.health
  • Developed a pipeline for analyzing peripheral nervous system data.
  • Created an iOS Watch app for assessing patients' ability to perform a six-minute walk test.
  • Managed a team of 6 ML researchers, engineers, and neural scientists.
Technologies: Machine Learning, PyTorch

Machine Learning Team Lead

2017 - 2020
PROWLER.io/ Secondmind.ai
  • Created a time series modeling library in TensorFlow for developing Gaussian Process models with faster inference through stochastic differential equation techniques.
  • Took responsibility for taking Gaussian process models from research code into a finance product using Kubernetes, Docker, and Airflow.
  • Implemented neural network-based algorithms in TensorFlow that led to paper publications at machine learning conferences as part of the multi-agent reinforcement learning team.
  • Served as the technical lead for a logistics time series forecasting customer project.
  • Managed the professional development of several machine learning engineers and performed interviews and coding test reviews as part of the recruitment process.
Technologies: Statistics, Python, TensorFlow, PyTorch

Senior Embedded Software Engineer

2013 - 2016
Cambridge Consultants
  • Developed a satellite remote sensing camera for the Zoological Society of London to study animals and prevent poaching, using an Atmel AVR and Raspberry Pi. The camera was deployed in Kenya and Antarctica.
  • Created a virtual queuing wristband for theme parks involving NFC, Bluetooth, and LoRa on a Nordic nRF52 (based on a ARM Cortex M4). See Portfolio Projects for more information.
  • Created iPad app for asset tracking for the placement of US internet cables for a telecommunications company.
  • Developed a Bluetooth Low Energy EpiPen iPhone app, that guided users through how to perform an injection.
  • Developed the firmware of a demonstrator of an energy harvested Bluetooth enabled insulin injector. This device was capable of communicating dosage amount to a smartphone, using only the energy from physically injecting the insulin.
  • Wrote a tool to automatically generate C code for Bluetooth LE profiles for a semiconductor company.
  • Developed Bluetooth audio applications using CSR hardware (now part of Qualcomm).
Technologies: Embedded C, C, Consulting

Mean Field Games

https://www.prowler.io/research/decentralised-learning-in-systems-with-many-many-strategic-agents
In research published at a top AI conference, I was responsible for performing experiments and validation for using Reinforcement Learning to play games that involved thousands of agents. This involved creating and training neural networks in TensorFlow. The techniques developed in the paper could be used for placing mobile network points for major public gatherings.

Underground Asset Tracking

Underground asset tracking is a huge issue when it comes to such things as digging in the ground and trying to avoid hitting existing utilities. I worked on a universal mobile app that allows engineers to query and locate any underground cabling. The app initially targeted the iPad but was built with technologies that allowed for its subsequent port over to Android. The Titanium framework was used together with Java, Objective-C, and JavaScript to bring together all the essentials in connecting an iPad to a Bluetooth device and data visualizations for the assets via the Google Maps API.

Virtual Queueing Wristband for a Theme Park

I was part of a team that developed a wristband to create a virtual queuing waterpark in Florida. This device had Bluetooth, LoRa, and NFC radios. It had to have tiny power consumption to allow it to last all day and also had to be waterproof. It used a Nordic nRF52 SoC (based on an ARM Cortex M4).

I wrote the bootloader to allow software updates over Bluetooth, implemented the framework, and the drivers for the LED display, as well as parts of the NFC interface that were used to allow the wristband to make payments and initiate queueing. I was responsible for optimizing power consumption.

Languages

Python, C, Embedded C, Python 2, Python 3, C++, Haskell, Rust, Java, Objective-C, Idris, TypeScript, Swift

Libraries/APIs

TensorFlow, NumPy, PyTorch, Matplotlib, Pandas, LAPACK

Platforms

Raspberry Pi, ARM Linux, Linux, Bluetooth LE, Amazon Web Services (AWS), Android, MacOS, Windows

Other

Artificial Intelligence (AI), Embedded Systems, Statistics, Algorithms, Machine Learning, Neural Networks, Sensor Data, Sensor Fusion, Hardware Drivers, Embedded Hardware, Bluetooth, Probabilistic Graphical Models, Bayesian Inference & Modeling, Bayesian Statistics, Deep Neural Networks, Reinforcement Learning, Deep Reinforcement Learning, Linear Algebra, Kalman Filtering, Hardware, Near-field Communication (NFC), LoRa, Consulting, People Management, Time Series, Mathematics

Tools

Emacs, Vim Text Editor, Git, GitHub, Bitbucket, Subversion (SVN)

Paradigms

Functional Programming, Object-oriented Programming (OOP), Agile, Management

Frameworks

Flask, Boost

2010 - 2013

Ph.D. in BioPhysics

University of Cambridge - Cambridge, United Kingdom

2009 - 2010

Master's Degree in Computational Biology

University of Cambridge - Cambridge, United Kingdom

2008 - 2009

Bachelor's Degree in Management Studies

University of Cambridge - Cambridge, United Kingdom

2005 - 2008

Bachelor's Degree in Mathematics

University of Cambridge - Cambridge, United Kingdom

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