Tom Murray, Developer in Cancún, Mexico
Tom is available for hire
Hire Tom

Tom Murray

Verified Expert  in Engineering

Payment APIs Developer

Cancún, Mexico
Toptal Member Since
September 26, 2017

Along with a master's degree with distinction in computer science from Imperial College London, Tom has over five years of experience working for different startups as a full-stack developer building apps and three years as an AI scientist building generative models for proteins.


Python, GPT, SQL, Azure Databricks, Data Science, Machine Learning, Torch...
Play One Up
Node.js, MongoDB, MongoLab, Mongoose, Express.js, PostgreSQL, RabbitMQ...
Corda, Ethereum, MySQL, JavaScript, Full-stack, Docker, React, Back-end...




Preferred Environment

Command-line Interface (CLI), Sublime Text, MacOS, Ubuntu

The most amazing...

...thing I've built is a protein design system with generative models and RL that can generate proteins with user specified constraints.

Work Experience

Senior AI Scientist

2020 - 2023
  • Developed a generative language model that could generate novel proteins with properties that were consistent with real proteins.
  • Built a pipeline to fine-tune our protein generation model to generate proteins with specific properties. Examples include generating proteins with specific secondary structures. This was done using deep reinforcement learning.
  • Created models used to predict binding affinity and relative binding affinity between antibodies. Achieved good results when later tested in a lab in vitro.
Technologies: Python, GPT, SQL, Azure Databricks, Data Science, Machine Learning, Torch, Deep Reinforcement Learning, Text Generation, Full-stack, Azure, Docker, PostgreSQL, REST APIs, Databases, API Integration, Architecture, Google Cloud Platform (GCP), Kubernetes, FastAPI, Artificial Intelligence (AI), WebRTC, Multithreading, Large Language Models (LLMs), Python Asyncio, CI/CD Pipelines

Back-end Developer

2017 - 2021
Play One Up
  • Developed the back end to allow players to find each other and play games.
  • Used GitLab CI/CD to have continuous integration and deployment.
  • Connected separate services using events sent over RabbitMQ.
Technologies: Node.js, MongoDB, MongoLab, Mongoose, Express.js, PostgreSQL, RabbitMQ, GitLab CI/CD, Kubernetes, HTML, CSS, WebRTC, Twilio, CI/CD Pipelines, Scalable Web Services


2018 - 2019
  • Built a fully functional DApp on Ethereum that managed the fund lifecycle.
  • Utilized the React framework to build the front end.
  • Built the initial DApp using the Truffle framework.
  • Switched to using Corda—after talks with several fund managers—and distributed ledger technology.
  • Created a tool where different parties on the network could have access to specific trade data.
Technologies: Corda, Ethereum, MySQL, JavaScript, Full-stack, Docker, React, Back-end, Amazon Web Services (AWS), REST APIs, Databases, API Integration, Architecture, FastAPI, Blockchain, Cryptocurrency, HTML, CSS, WebRTC, TypeScript, Smart Contracts

Lead Developer

2016 - 2017
  • Built everything from the ground up as the first tech person hired.
  • Constructed an ordering system that took into account where couriers were so as not to overbook people.
  • Created a genetic algorithm to efficiently route the couriers around the city.
  • Recruited a team of developers after months of being a solo developer.
  • Developed a courier-facing app so that the couriers could see the list of jobs easily.
  • Built the software using test-driven development and continuous integration.
Technologies: Python, MongoDB, Angular, Node.js, MySQL, JavaScript, Full-stack, Docker, Flask, Back-end, Amazon Web Services (AWS), REST APIs, Databases, API Integration, Email Automation, Architecture, Machine Learning, PostgreSQL, SQL, HTML, CSS, WebRTC, Multithreading, Twilio, CI/CD Pipelines, Scalable Web Services


2015 - 2016
  • Founded a company straight out of university with fellow CS students.
  • Built everything from the ground up using JavaScript technologies.
  • Developed a scraping tool using Python that could scrape relevant information from any website.
  • Gained paying customers using our platform.
  • Created single-page applications.
Technologies: Python, MongoDB, Angular, Node.js, PHP, JavaScript, Full-stack, REST APIs, Databases, API Integration, Email Automation, HTML, CSS, Multithreading

Job Status | Progress Bar Component

The code for the Angular file for a status bar component. Typical input for the component is the current job that the app has open. Depending on the status of the job, this will update the status of the component, which in turn changes how far along the status bar is.

Trip Editor
A simple trip editing app where you can create, edit, and delete different trips. It was my first app built using React/Redux.

Blockchain Battleship Game
I decided to build a game using the Ethereum blockchain protocol. The game I built was a battleship type of game, mainly due to its turn-based nature.

As the Ethereum blockchain mines the blocks every 14 seconds, a move could only be made once every 14 seconds. I built the front end of the app using Angular. The Truffle framework was used on the front end to interact with the blockchain.

Ballwars | App Built Using the Corona Game Engine
I built a game using the Corona game engine. The game was written in Lua. It is a fast-paced game where you have to swipe to change the direction of the main character. I programmed the physics of the game myself.

Decoding the Neural Activity of a Rat
For my master's thesis at Imperial College London, I had to build a neural rat that was able to learn the features of a rat's neural activity that mapped to its position in a square box.

It was a combination of an auto-encoder to learn the features and a recurrent net to map these features to the position. The result only had a 10% error when predicting the position.

Arbitrage Bot on an ICO

I built a bot that performed an arbitrage on the EOS ICO. It was implemented using AWS Lambda.

Before each daily window closed, we checked the current money invested during that window. Using linear regression, we determined if we should invest in the ICO during that window. This involved creating, signing and sending a transaction to the EOS ICO smart contract. We then had another Lambda function that sent the EOS to bitfinex, where it was then sold for a profit. During the six months that the bot was in operation, my Ethereum balance increased 250%.

I worked as the tech lead at a startup called Repairly, which was a company that did on-demand tech repair.

I built most of the software, which included a customer-facing interface, an admin dashboard for the inhouse team, a dashboard for the repair centers and an app for the drivers. The components were hosted on Heroku and AWS.

QA Document Chatbot
This project consists of a retrieval-augmented generation (RAG)- based chatbot. A user can upload a document and chat with the bot about its details. It was built using LangChain and LanceDB as the vector store.
2014 - 2015

Master of Science Degree in Computer Science

Imperial College London - London, UK

2010 - 2014

Master of Science Degree in Applied Mathematics and Physics

Queen's University Belfast - Belfast, Northern Ireland


React, Node.js, REST APIs, WebRTC, Python Asyncio, Web3.js


RabbitMQ, Sublime Text, Mathematica, MongoLab, Mongoose, GitLab CI/CD


AngularJS, Express.js, Flask, Angular, Django


MacOS, Docker, Twilio, Linux, AWS Lambda, Kubernetes, Azure, Amazon Web Services (AWS), Google Cloud Platform (GCP), Blockchain, Ethereum, Corda, Ubuntu


Python, JavaScript, HTML, CSS, SQL, C++, PHP, Assembly, TypeScript


MongoDB, Databases, Amazon S3 (AWS S3), PostgreSQL, Redis, MySQL


Agile Software Development, Data Science


Machine Learning, Software Development, Full-stack, Back-end, API Integration, Email Automation, Architecture, FastAPI, Artificial Intelligence (AI), Multithreading, Large Language Models (LLMs), CI/CD Pipelines, Command-line Interface (CLI), Image Processing, Payment APIs, Cryptocurrency, Scalable Web Services, Smart Contracts, Algorithms, Data Structures, Genetic Algorithms, GPT, Azure Databricks, Torch, Deep Reinforcement Learning, Text Generation, LangChain

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.


Share your needs

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

Choose your talent

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

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