Oliver Holloway, Developer in London, United Kingdom

Oliver Holloway

Python Developer

Location
London, United Kingdom
Toptal Member Since
May 10, 2016

Oliver is a versatile data scientist and software engineer combining over a decade of experience and a postgraduate mathematics degree from Oxford. Career assignments have ranged from building machine learning solutions for startups to leading project teams and handling vast amounts of data at Goldman Sachs. With this background, he is adept at picking up new skills quickly to deliver robust solutions to the most demanding of businesses.

Oliver is available for hire
Hire Oliver

Portfolio

European-based Investment Company (via Toptal)
Deep Learning, Kubernetes, Docker, ETL, Flask, SQL, Google Cloud Platform (GCP)...
A US-based Behavioral Care Startup
Artificial Intelligence (AI), Machine Learning, Speech Recognition...
UK-based eCommerce Company
Python, TensorFlow, Asyncio, MLflow, Image Processing, Scikit-learn...

Experience

Python - 7 yearsPandas - 4 yearsMongoDB - 4 yearsAngular - 4 yearsMachine Learning - 4 yearsGenerative Pre-trained Transformers (GPT) - 3 yearsNatural Language Processing (NLP) - 3 yearsGPT - 3 years

Location

London, United Kingdom

Availability

Full-time

Preferred Environment

Git, PyCharm, Jupyter, Windows, Linux

The most amazing...

...application I've worked on allowed traders to visualize historical financial data, perform technical analysis and determine the relative value of securities.

Work Experience

2019 - PRESENT

Freelance Tech Lead | Machine Learning Engineer

European-based Investment Company (via Toptal)
  • Led a team of Toptal engineers in a project to create an MVP of a platform for configuring and testing models for building stock portfolios.
  • Researched architectures for portfolio-build models, including those using neural network approximation.
  • Created a highly configurable system for training and backtesting models based on point-in-time financial data. Furthermore, automated the configurability itself by setting up hyperparameter optimization using Ray Tune.
  • Oversaw the build of the ingestion/ETL framework capable of discovering potential stocks from third-party data suppliers (based on region/industry/market cap) and extracting historical market and fundamental data from them into a central DB.
  • Ensured rich reporting of model performance via user-defined metrics and information around portfolio constituents. This was directly consumable via an API, including a Dash/Plotly dashboard with interactive graphics.
  • Reviewed and maintained code for the Angular web app through which an administrator can test models and view tabular reports.
  • Designed the database model used by the ORM (SQLAlchemy), which also underpinned the RESTful API that was robustly marshalled using Marshmallow.
  • Set up the Google Cloud Platform-based infrastructure, including a Docker-based CI/CD pipeline for both the UI and back-end service, a Kubernetes engine for parallelizing long-running worker processes, worker queues (Pub/Sub), and scheduled tasks.
Technologies: Deep Learning, Kubernetes, Docker, ETL, Flask, SQL, Google Cloud Platform (GCP), Python, Neural Networks, Data Science, Machine Learning, Flask-RESTful, PostgreSQL, SQLAlchemy, Marshmallow, Angular, Keras, TensorFlow, Pandas, Alembic, Dash, Plotly, Artificial Intelligence (AI), APIs, Architecture, Full-stack, Technical Leadership, Software Architecture, Databases, Finance, Solution Architecture, AI Programming, Data Visualization, Data Modeling, Forecasting, Machine Learning Operations (MLOps), Google Cloud
2023 - 2023

AI/ML Engineer

A US-based Behavioral Care Startup
  • Consulted on directions that a potential MVP could take for a diagnostic system in the mental health space.
  • Researched and assessed transferable speech and text models using Hugging Face that could be fine-tuned and used in diagnosis.
  • Demonstrated PoCs using IBM Watson and OpenAI's ChatGPT API as a basis of a chatbot-based solution.
Technologies: Artificial Intelligence (AI), Machine Learning, Speech Recognition, Voice Analysis, Early-stage Startups, OpenAI GPT-3 API, Natural Language Processing (NLP), Chatbots, IBM Watson, AI Programming, Generative Pre-trained Transformers (GPT), Hugging Face, Language Models
2021 - 2021

Computer Vision Engineer

UK-based eCommerce Company
  • Devised and implemented a system for receiving an image via API and finding the closest matching products in a catalog.
  • Isolated the encoder of the MobileNet neural network architecture to translate images to compressed vectors which could then be queried using an efficient similarity search index.
  • Used MLflow to manage model storage, experiment tracking, and serve the model through an API.
  • Derived an autoencoder so that the encoder model could be fine-tuned with any available training data.
  • Leveraged TensorFlow datasets to move image data through the pipeline without overwhelming memory.
  • Created a Python package for consuming RabbitMQ messages to create and wait on multiple subprocesses, all performed in an asynchronous manner using asyncio.
Technologies: Python, TensorFlow, Asyncio, MLflow, Image Processing, Scikit-learn, Artificial Intelligence (AI), APIs, Computer Vision, Software Architecture, Architecture, AI Programming, Machine Learning Operations (MLOps), Machine Learning, Deep Neural Networks
2019 - 2019

Freelance Speech Recognition Engineer

US-based Tech Startup (via Toptal)
  • Created speech recognition models using custom neural networks with Keras, along with Baidu's DeepSpeech architecture via TensorFlow.
  • Handled preprocessing of audio file input types (PCM/WAV), including conversions to and manipulations of MFCCs/spectrograms.
  • Wrapped up processes for data uploading, model training, persistence, and inference in RESTful APIs, with capabilities for complex versioning and live updates of training.
  • Deployed and configured APIs to leverage GPUs for faster training/inference and a Celery distributed-task queue for training in parallel.
Technologies: Deep Learning, Audio Processing, Data Science, Neural Networks, Machine Learning, MongoDB, Flask, Celery, Keras, Python, Artificial Intelligence (AI), APIs, Convolutional Neural Networks, AI Programming, NVIDIA CUDA, Deep Neural Networks
2019 - 2019

Freelance Data Scientist

Kalepa Corporation (via Toptal)
  • Trained and evaluated various models for classifying text data using GloVe word representations, bag-of-words model, and XGBoost, among other ML/NLP techniques.
  • Created and managed Amazon Mechanical Turk tasks for deriving labels for training classification, including detecting consistently inaccurate workers.
  • Productionized the inference process into the pip installable Python package.
Technologies: Natural Language Processing (NLP), GPT, Generative Pre-trained Transformers (GPT), Machine Learning, Data Science, SpaCy, MongoDB, Scikit-learn, XGBoost, Gensim, Pandas, Python, Artificial Intelligence (AI), APIs, Social Media, GloVe, Data Modeling
2019 - 2019

Interim Chief Information Officer

Lawli Ltd
  • Led the technical direction for a UK government-funded legal AI app to help deliver the initial version of the product.
  • Implemented initial NLP solutions in Python for providing document services at the heart of the app.
  • Created the first version of an Angular 7 web app using Node.js and MongoDB.
  • Conducted interviews to find people for the company's first development team to continue my work.
Technologies: Natural Language Processing (NLP), GPT, Generative Pre-trained Transformers (GPT), WordPress, RabbitMQ, Gensim, Python, Node.js, Angular, Artificial Intelligence (AI), Full-stack, Software Architecture, Architecture, Machine Learning
2018 - 2018

Freelance NLP Expert

Zugata (via Toptal)
  • Improved and developed a system for key-phrase extraction from texts using a trained ML classifier and various extraction techniques (including those involving the statistical analysis of word collocations).
  • Innovated a library that applies a dependency parser (including spaCy or the Stanford Parser) to texts and then extracts phrases according to grammatical rules automatically inferred from training texts (using graph theory and NetworkX).
  • Implemented frameworks that helped with research, including the use of caches for extracted phrases and objects for persisting models with metadata to give consumer knowledge of how that model was formed.
  • Created a Flask API for the output of results and the user's ability to specify the different methodologies.
  • Enhanced an in-house evaluator of extractor performance accompanied by the integration of traditional evaluators (Bleu/Rouge); also, set up cross-validation tests for classifier performance.
  • Verified and advised on statistical/confidence tests for studies by a company that went toward a paper that won an award at KDD 2018.
Technologies: SQL, Graph Theory, GPT, Generative Pre-trained Transformers (GPT), Natural Language Processing (NLP), Data Science, Machine Learning, NumPy, Pandas, MySQL, Flask, Scikit-learn, SpaCy, Natural Language Toolkit (NLTK), Python, Artificial Intelligence (AI), APIs, Data Modeling
2017 - 2018

Freelance Data Scientist | Freelance Machine Learning Specialist

US-based Investment Management Firm (via Toptal)
  • Researched and tested prediction models with a Python stack using machine learning regressors and natural language processing techniques.
  • Derived features from various sources, including forming vector representations of words/documents using a bag-of-words model (with NLTK) and neural networks (with TensorFlow).
  • Developed a configurable model backtesting (and backfilling) system using various Pandas functionality extensively.
  • Improved the reliability of a Selenium-based framework for scraping websites to source data for model training, including improved logging and reports of nightly performance.
  • Created a framework for mining and structuring data from particular sections of PDF files.
  • Enhanced and bug-fixed a React/Redux web app used for showing predictions.
Technologies: Deep Learning, Bokeh, Sentiment Analysis, Amazon Web Services (AWS), Neural Networks, Machine Learning, Data Science, Natural Language Toolkit (NLTK), React, Jupyter Notebook, MongoDB, Pandas, TensorFlow, Scikit-learn, Python, Artificial Intelligence (AI), Generative Pre-trained Transformers (GPT), GPT, Natural Language Processing (NLP), Finance, Hedge Funds, Scraping, PDF Scraping, Web Scraping, Selenium, Data Modeling, Forecasting
2016 - 2017

Freelance Machine Learning Engineer

Wedifique (via Toptal)
  • Implemented a collaborative filtering learning algorithm using Python libraries for use in a product recommendation system.
  • Enabled a learning algorithm to be influenced by administrator suggestions when deciding feature weighings.
  • Updated aspects of the main web app, where necessary, on both the Node.js back-end and AngularJS front-end.
  • Queried (using MongoDB) and derived data for use in user/trend analysis and to populate reports/graphs.
  • Set up web/worker multiple server infrastructures using AMQP with Heroku.
Technologies: Heroku, RabbitMQ, AMQP, Machine Learning, AngularJS, Node.js, MongoDB, NumPy, Pandas, Scikit-learn, Python, Artificial Intelligence (AI), Full-stack, Web Development
2016 - 2016

Freelance Full-stack Developer

Swtch (via Toptal)
  • Created a geolocation web app's proof of concept using primarily AngularJS.
  • Extensively used a Google Maps JavaScript API in an asynchronous manner, to create a map canvas, plot markers, as well as geocode them from addresses.
  • Developed a complex user registration and booking system that was persisted to a PostgreSQL database using a pg-promise library in Node.js.
  • Styled an app using Bootstrap so that it is responsive and can be used on a variety of devices.
  • Implemented a RESTful API using Express.js and Node.js.
Technologies: Sass, CSS, HTML5, HTML, Gulp, PostgreSQL, Express.js, Bootstrap, Node.js, AngularJS, Full-stack, Databases, Web Development, Google Maps
2013 - 2016

Associate Developer

Goldman Sachs
  • Collaborated with a global market risk business to design and maintain a platform that produced a bank’s risk metrics.
  • Used the firm's Python-like proprietary language to build and test a framework to collate big data sets and to automate the creation of stress test reports for regulators.
  • Led the development team that produced an AngularJS web app and RESTful API to allow users to adjust risk measures and audit these changes.
  • Conducted interviews of lateral hires and of interns/analysts for tech division.
  • Assisted in integrating a platform into a new distributed computing framework, including occasional examination of the platform's core C++ code.
  • Co-created a Java-based version system for report configurations which could be controlled via an AngularJS web app.
  • Investigated machine learning methods for possible use in the department.
Technologies: SQL, Sybase, D3.js, Gulp, jQuery, DataTables, Sass, Java, Python, C++, Node.js, JavaScript, AngularJS, APIs, Full-stack, Databases, Finance, Web Development
2010 - 2013

Analytics Developer

RBS Markets & International Banking
  • Developed and maintained a .NET web-based application for analyzing and visualizing time series data for a range of financial products.
  • Performed extensive regression testing and other analysis as part of the regular upgrades in pricing libraries the tool depended on.
  • Implemented Agile methodologies in delivering several C# coding assignments to add new analytics.
  • Trained the support and development teams around the globe including a trip to Singapore to facilitate this.
  • Created a VBA tool for logging emails sent to the support inbox, which then detected whether they had been responded to. This was then summarized in a management report.
Technologies: .NET, SQL, Visual Basic for Applications (VBA), Oracle, ASP.NET, Microsoft SQL Server, C#, Databases, Finance, Data Visualization
2010 - 2010

Inside Licensing Specialist

Microsoft
  • Automated the building of a spreadsheet which was compiled from various sources and also kept track of deal progress for a Munich-based licensing team.
  • Created a tool using VBA to identify discrepancies between two customer pricing sheets (taking into account that entries may be present in both, but in different row locations).
  • Presented these tools at team calls and wrote up documentation for them in English and German.
  • Added new statistics for the account planning sheet including the data mining of past discounts given to customers.
  • Assisted the licensing sales specialists with price and product migration queries.
Technologies: Microsoft Excel, Visual Basic for Applications (VBA)

Experience

Oxford10

https://www.oxford10.com
I worked as the president of the official young alum community of Oxford University in the London region. My duties included formulating and implementing social media strategy and website maintenance and heading a committee.

In my time on the committee, I analyzed the data from Eventbrite and Mailchimp to build a picture of our attendees and used it to inform our event strategy. I also maintained and promoted their website and social media profiles. Attendance grew stronger as a result.

Chord Extractor

https://github.com/ohollo/chord-extractor
Open source Python library for extracting chord sequences from sound files of multiple formats with the option of leveraging multiprocessing to quickly source data from many files. Primarily intended for those analyzing musical pieces and their harmonic progressions.

Adapting AI-generated Texts

Researched and recommended methodologies for startup generating and adapting texts to make them less detectable as being generated by AI, e.g., by ChatGPT.

These included NLP techniques achievable in the short term, such as examining parts of speech, dependency parsing, and manipulating grammar.
Image of From Solving Equations to Deep Learning: A TensorFlow Python Tutorial publication
Publication

From Solving Equations to Deep Learning: A TensorFlow Python Tutorial

https://www.toptal.com/machine-learning/tensorflow-python-tutorial

Skills

Languages

HTML, Python, HTML5, TypeScript, CSS, SQL, C++, JavaScript, C#, Visual Basic for Applications (VBA), Sass, Python 3, R, CoffeeScript, JADE, Java

Frameworks

Angular, Alembic, .NET, Flask, AngularJS, Angular Material, Bootstrap, Express.js, Jasmine, Django, ASP.NET, NUnit, Selenium

Libraries/APIs

Pandas, SpaCy, Natural Language Toolkit (NLTK), Google Chart API, TensorFlow, RxJS, Scikit-learn, React, D3.js, REST APIs, Google Maps, Node.js, jQuery, NumPy, SQLAlchemy, Flask-RESTful, Matplotlib, Keras, XGBoost, OpenCV, AMQP, Asyncio, PyTorch

Paradigms

Data Science, Object-oriented Programming (OOP), DevOps, ETL, RESTful Development, Asynchronous Programming, Agile Software Development, Test-driven Development (TDD), Search Engine Optimization (SEO)

Storage

Google Cloud, MongoDB, PostgreSQL, Microsoft SQL Server, Databases, MySQL, Sybase

Other

Data Modeling Expert, Software Development, Marshmallow, APIs, Deep Learning, Artificial Intelligence (AI), Natural Language Processing (NLP), Machine Learning, Mathematics, Data Analysis, Data Engineering, Freelancing, Data Modeling, Full-stack, GPT, Generative Pre-trained Transformers (GPT), Sentiment Analysis, Queue Management, Cryptography, Angular Bootstrap, Data Visualization, Statistics, Data, PDF, Computer Vision, Architecture, Technical Leadership, Software Architecture, Finance, Hedge Funds, Forecasting, Machine Learning Operations (MLOps), Hugging Face, Deep Neural Networks, Language Models, Neural Networks, Audio Processing, Graph Theory, Bokeh, Google Material Design, Librosa, Multiprocessing, MLflow, Image Processing, Dash, Leadership, Algorithms, Algebra, Number Theory, Elliptic Curve Cryptography, Quantum Computing, Calculus, Complexity Theory, Speech Recognition, Voice Analysis, Early-stage Startups, OpenAI GPT-3 API, Chatbots, Convolutional Neural Networks, GloVe, Solution Architecture, AI Programming, Web Development, Eventbrite, Scraping, PDF Scraping, Web Scraping

Tools

Gulp, AngularFire, PyCharm, Git, Mongoose, NPM, Sublime Text, Jira, Microsoft Visual Studio, TortoiseSVN, Amazon SageMaker, Jupyter, Microsoft Excel, RabbitMQ, Celery, DataTables, Browserify, IntelliJ, CVS, MATLAB, Karma, Gensim, Plotly, IBM Watson, Mailchimp

Platforms

Google Cloud Platform (GCP), Docker, Kubernetes, Jupyter Notebook, Amazon Web Services (AWS), Heroku, Firebase, Windows, Linux, Oracle, Visual Studio Code (VS Code), Twilio, WordPress, NVIDIA CUDA

Industry Expertise

Social Media

Education

2008 - 2009

Master of Science Degree in Mathematics and the Foundations of Computer Science

University of Oxford - Oxford, England

2003 - 2007

Bachelor of Science Degree in Mathematics with a Study in Continental Europe

University of Bristol - Bristol, England

Certifications

JANUARY 2019 - PRESENT

Deep Learning

Deeplearning.ai

FEBRUARY 2016 - PRESENT

Machine Learning

Stanford University via Coursera

NOVEMBER 2013 - PRESENT

Financial Engineering in C++

City, University of London (London, UK)