Tom Murray, Developer in Panama City, Panama, Panama
Tom is available for hire
Hire Tom

Tom Murray

Verified Expert  in Engineering

Bio

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.

Portfolio

Carrier - Residential - Mobile Apps Product Management
Node.js, JavaScript, AWS CLI, NestJS, BullMQ, Kafka Streams, Amazon Kinesis...
Martian Learning Inc.
FastAPI, Python, Back-end, Kubernetes, Docker, ChatGPT API, OpenAI GPT-4 API...
Ordaos
Python, Generative Pre-trained Transformers (GPT), SQL, Azure Databricks...

Experience

  • Python - 7 years
  • Docker - 6 years
  • Node.js - 5 years
  • Payment APIs - 4 years
  • Machine Learning - 4 years
  • Kubernetes - 4 years
  • MongoDB - 3 years
  • AWS Lambda - 2 years

Availability

Part-time

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 Reinforcement Learning (RL) that can generate proteins with user specified constraints.

Work Experience

Back-end Developer

2025 - PRESENT
Carrier - Residential - Mobile Apps Product Management
  • Developed an SDK used for interacting with MongoDB.
  • Developed real-time data pipelines using Kafka and NestJS.
  • Oversaw the back-end development of a new initiative within the company.
Technologies: Node.js, JavaScript, AWS CLI, NestJS, BullMQ, Kafka Streams, Amazon Kinesis, AWS Lambda, gRPC, MongoDB, Prisma, Docker, Full-stack Development, TypeScript

Back-end API Engineer

2024 - 2024
Martian Learning Inc.
  • Built a testing framework to test the codebase.
  • Helped integrate RabbitMQ workers to allow for efficient data processing.
  • Improved the data structure pipeline through the back end.
Technologies: FastAPI, Python, Back-end, Kubernetes, Docker, ChatGPT API, OpenAI GPT-4 API, OpenTelemetry, APIs, REST, GitHub, Generative Artificial Intelligence (GenAI), DevOps

Senior AI Scientist

2020 - 2023
Ordaos
  • 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, Generative Pre-trained Transformers (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, ChatGPT API, Web Servers, OpenAI GPT-4 API, Data Engineering, Monitoring, Databricks, APIs, REST, GitHub, Generative Artificial Intelligence (GenAI), DevOps

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, Web Servers, Monitoring, APIs, REST, Front-end, GitHub, Sockets, DevOps, Serverless, NoSQL, GraphQL, Full-stack Development

Co-founder

2018 - 2019
Tokenblocks
  • 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, Web Servers, APIs, REST, Front-end, GitHub, Serverless, NoSQL, Full-stack Development

Lead Developer

2016 - 2017
Repairly
  • 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, Web Servers, Django, APIs, REST, Front-end, GitHub, Sockets, Serverless, NoSQL, Full-stack Development

CTO

2015 - 2016
Yakhub
  • 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, Web Servers, APIs, REST, Front-end, GitHub

Experience

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

https://github.com/giblets2570/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

https://github.com/giblets2570/blockchain-battleship
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

https://github.com/giblets2570/ballwarsapp
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

https://github.com/giblets2570/neuroscientist
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%.

Repairly

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.

Options Trading Reinforcement Learning Platform

Designed and implemented an advanced reinforcement learning system for automated options trading strategies using Ray RLlib and PyTorch. The platform leverages deep neural network architectures like long short-term memory (LSTM), GRU, and custom StackGRU to process complex market data and learn profitable trading patterns. Key features include:

• Multiple specialized environments for single-option, contract-type, and portfolio trading strategies
• Sophisticated observation processing with price normalization, volatility modeling, and technical indicators
• Configurable reward functions based on profit metrics with customizable risk parameters
• Comprehensive position management with delta, gamma, theta, and vega thresholds
• Modular architecture allowing for easy strategy experimentation and extension
• Training pipeline with checkpointing, GPU acceleration, and performance monitoring

While not achieving market-beating returns, the project served as a valuable testbed for applying RL to financial markets and understanding the challenges of trading algorithmic options in real-world conditions.

SQL Agent with LangGraph

A sophisticated database query assistant built using LangGraph and LangChain that allows users to interact with a PostgreSQL database using natural language. The agent understands database schema, translates natural language queries into SQL, and returns formatted results. The architecture leverages a state graph workflow to orchestrate interactions between the LLM (locally running Llama 3.2 via Ollama), database tools, and user queries.

Key features include database schema introspection, multilingual support, and a well-structured agent workflow with proper error handling.

This project demonstrates advanced patterns for building AI agents with local LLMs, tool integration, and complex orchestration, showcasing the practical application of modern LLM application development techniques in a data analysis context.

AI-powered Employee Leave Management Chatbot

A sophisticated database query assistant built using LangGraph and LangChain that allows users to interact with a PostgreSQL database using natural language in multiple languages.

The agent understands database schema, translates natural language queries into SQL, and returns formatted results. The architecture leverages a state graph workflow to orchestrate interactions between the LLM (locally running Llama 3.2 via Ollama), database tools, and user queries.

Key features include database schema introspection, multilingual support, and a well-structured agent workflow with proper error handling.

This project demonstrates advanced patterns for building AI agents with local LLMs, tool integration, and complex orchestration, showcasing the practical application of modern LLM application development techniques in a data analysis context.

Udemy Course on Creating a Text Generator from Scratch

https://www.udemy.com/course/create-a-text-generator-in-pytorch-from-scratch/
Created a course in Udemy to show people how to build a text generator from scratch with PyTorch. I go through all the basics of finding a dataset, creating a tokenizer, training the generator, and then inference. The end result is a streamlit app where the user can generate a trained model by entering some text.

Automated Cryptocurrency Trading Bot with Technical Analysis

This project is a sophisticated cryptocurrency trading bot that leverages technical analysis indicators to execute automated trades on Coinbase. The system monitors real-time market data through WebSocket connections, processes candlestick patterns, and applies technical indicators like MACD, Bollinger Bands, and TSI to generate trading signals.

The architecture features a modular design with separate components for data collection (WSListener), candlestick processing (CandleHandler), signal generation, and trade execution (Trader). All market data and trading activities are stored in SQLite for analysis and auditing. The bot supports simulation and live trading modes with configurable risk management through take-profit and stop-loss parameters.

Key technical highlights include a multi-threaded operation for real-time data processing, comprehensive logging, containerization with Docker, and a clean command-line interface for configuration.

Education

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

Skills

Libraries/APIs

React, Node.js, REST APIs, WebRTC, Python Asyncio, Sockets, Web3.js, PyTorch, PyTorch Lightning

Tools

GitHub, RabbitMQ, Sublime Text, Mathematica, MongoLab, Mongoose, GitLab CI/CD, AWS CLI, Kafka Streams, Prisma

Languages

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

Frameworks

AngularJS, Express.js, Flask, Angular, Django, NestJS, gRPC, LangGraph, Streamlit

Paradigms

REST, Agile Software Development, DevOps

Platforms

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

Storage

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

Other

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, ChatGPT API, Web Servers, OpenAI GPT-4 API, OpenTelemetry, Data Engineering, Monitoring, APIs, Generative Artificial Intelligence (GenAI), Serverless, Full-stack Development, Command-line Interface (CLI), Image Processing, Payment APIs, Cryptocurrency, Scalable Web Services, Smart Contracts, Front-end, Algorithms, Data Structures, Genetic Algorithms, Generative Pre-trained Transformers (GPT), Azure Databricks, Data Science, Torch, Deep Reinforcement Learning, Text Generation, LangChain, BullMQ, Amazon Kinesis, Reinforcement Learning, Options Trading, Trading Bots, Stock Trading, WebSockets, Crypto, Processing & Threading, Algorithmic Trading, Automated Trading Software, Trading

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