Amey Joshi, Developer in London, United Kingdom
Amey is available for hire
Hire Amey

Amey Joshi

Verified Expert  in Engineering

Linear Optimization Developer

Location
London, United Kingdom
Toptal Member Since
October 13, 2020

Amey enjoys applying mathematical methods to business problems such as pricing contracts, scheduling operations, and optimizing investment decisions. He likes to develop algorithms and build products. With over two decades of coding experience, Amey takes pride in writing code that stands out for its craftsmanship.

Portfolio

Perkbox
Spark, SPARQL, Databases, Python 3, SQL, Python
Soobr AG
Algorithms, Python, Linear Optimization, OR-Tools, Graphs, Graph Algorithms
Fidelity Investments
Seaborn, Scikit-learn, JavaScript, Data Modeling, REST APIs, Financial Modeling...

Experience

Availability

Part-time

Preferred Environment

Applied Mathematics, Quantitative Finance, Statistics, Artificial Intelligence (AI), Algorithms, Data Science, Machine Learning, Python 3

The most amazing...

...problem I've solved was identifying a group of professionals who change employers in tandem using graph-theoretic techniques.

Work Experience

Data Engineering and Business Intelligence Lead

2021 - PRESENT
Perkbox
  • Built a data lake on Databricks from scratch by creating pipelines from primary sources like MySQL, DynamoDB, Salesforce, AskNicely, Zuora, MixPanel, LinkedIn, Microsoft Bing, Google Ads, and Facebook.
  • Created a very large number of dashboards on Databricks SQL to monitor business metrics.
  • Created a statistical model to predict the customer churn in terms of the number of customers and TCV.
Technologies: Spark, SPARQL, Databases, Python 3, SQL, Python

Senior Algorithm Developer

2023 - 2023
Soobr AG
  • Corrected the mathematical form of several objective functions based on business requirements.
  • Proposed and implemented a graph-theory-based algorithm to build clusters of cleaning areas.
  • Modified the codebase to enable easy debugging of objective functions and solutions.
Technologies: Algorithms, Python, Linear Optimization, OR-Tools, Graphs, Graph Algorithms

Director

2016 - 2020
Fidelity Investments
  • Developed an algorithm to identify a proxy instrument that lacks adequate data using Fourier analysis. The algorithm used Python and SQL.
  • Implemented an algorithm to predict the business cycle phase using macroeconomic parameters like the unemployment rate, interest rates, and inflation. It followed the aggregate demand and aggregate supply (AD-AS) model.
  • Implemented the Black-Littermann model to blend the practitioners' views about the market into commercially and publicly available data. The implementation was in R with a Shiny front end.
  • Built a model to predict opportunities for inter-fund transactions and recommended the best match of mutual funds to meet their shared requirements.
  • Mentored a project that focused on advising traders on money market funds based on their past choices. The project was successfully implemented and adopted by traders.
  • Built customized benchmarks to track the performance of mutual fund portfolios. A large number of funds do not follow a publicly available index, and to compare the fund's performance with its stated objectives, we needed a new benchmark index.
  • Mentored a project that produced a prototype of the trader notes. They are qualitative analyses of stocks usually prepared by research analysts. This project used natural language processing to generate them automatically.
  • Built a model to gauge an investor's risk profile from facial characteristics and compare it with the profile inferred from the standard questionnaire and the investor's self-assessment. The two models have comparable performance.
  • Developed and maintained an order management software for Fidelity's internal trading. It was written in Scala and Java and used Kafka as a messaging service.
  • Developed a tool to copy a large number of documents from an internal website that was about to be retired. The tool scraped the websites for the documents' URLs and saved the web pages and files attached to them on a shared drive.
Technologies: Seaborn, Scikit-learn, JavaScript, Data Modeling, REST APIs, Financial Modeling, Data Visualization, Mathematics, Natural Language Processing (NLP), GPT, Generative Pre-trained Transformers (GPT), Statistics, Spring Boot, Spring, Apache Kafka, Java, Matplotlib, Pandas, SciPy, NumPy, Data Analysis, Data, Spotfire, Tableau, Jupyter Notebook, Python, Oracle SQL Data Modeler, Database Modeling, Databases, Stochastic Differential Equations, Quantitative Modeling, Quantitative Finance, Machine Learning, Data Science, SQL, Scala, Java 8, R, Python 3, REST, PostgreSQL

Assistant General Manager

2010 - 2016
Tata Consultancy Services, Ltd.
  • Developed a Salesforce optimization tool using CPLEX for a pharmaceutical analytics client. The tool advised clients on optimal spending on different promotional channels.
  • Built several pricing models to safeguard the company's operating margin targets and satisfy the master service agreement's obligations with its clients.
  • Developed a suite of tools that automatically produced a PowerPoint presentation by reading data from Excel workbooks, saving 40 working hours per week of tedious work, leaving time to enhance the presentation with more in-depth analysis.
  • Positioned a process to check a certain number of deliverables every day before they are shipped to ensure that the quality levels are not breached. It was derived using rigorous statistical techniques of the distribution of errors.
  • Conducted a statistical review of the exchange rates and inflation in India and Uruguay using time series analysis to identify risks in a master service agreement with a large client. The analysis led to dropping clauses with severe consequences.
  • Developed market segmentation models for a pharmaceutical client to identify the effectiveness of marketing channels. The output of this model was one of the inputs to the Salesforce optimization model.
  • Created an optimization-based tool to allocate requests to the agents working in a business process. It ensured a correct triaging of requests and their timely completion across work-shifts.
  • Led a team of more than 450 professionals for five years taking responsibility for service delivery, financial performance, talent management, and compliance.
Technologies: Excel Reporting, Excel VBA, Applied Mathematics, Mathematics, Data Analytics, Data Analysis, Data, CPLEX, IBM SPSS, Lean Six Sigma, Statistical Quality Control (SQC), Pricing Models, Workflow Optimization, Linear Optimization

Lead Software Engineer

2007 - 2010
Fidelity Investments
  • Implemented an algorithm that recommended the optimal cash spread across money market instruments to maximize yield subject to the company's internal constraints.
  • Migrated fixed income quantitative models from Sybase to Oracle. The models were critical to business operations and were used to compute the net asset value (NAV) of funds daily.
  • Built a suite of tools to create and manage ClearCase views, automate the build process, and keep the team informed of every change merging into the main branch.
Technologies: Bash, Data, CPLEX, Quantitative Modeling, Linux, C++

Lead System Integrator

2004 - 2007
GE Healthcare
  • Built a prototype taking voice commands from the operator to select MRI protocols.
  • Served as the systems integrator for two big product launches. The role included getting software components from the other GE groups on time, ensuring quality, and integrating them into our software repository.
  • Contributed to enhancing and maintaining the host part of GE's magnetic resonance imaging systems. The host system interacted with all aspects of the scanner, from the user interface to the PACS.
Technologies: Healthcare, DICOM, Linux, Medical Imaging, C++

Cliques in Professional Networks

It is a well-known fact that the team of portfolio managers influences the performance of a mutual fund. Investment professionals are known to hop organizations together. If a team member leaves one company to join another, the rest of the team does the same thing within a few months.

I used investment professionals' employment data to construct a time series of graphs and use them to discover cliques and professionals who always end up being in the same organization.

Rare Events Study

Certain happenings in a company significantly affect the price of its stock or bonds. Such occurrences could be a leadership change, new patent, lawsuit, fraud, or industrial dispute. Frequently, before the news is published in public media, the premonition is felt in the stock prices. We term these happenings as events. They happen infrequently, but if we can detect their presence, we can take advantage of the price movements to make investment decisions.

We used spectral analysis to identify the signature of rare events and correlated them with a news item announcing a significant event related to the company. It was impossible to accurately measure the time lag between the signal and the item's appearance. However, we confirmed that the signal was detected before the news appeared in the public domain.

Matching People in a Speed-dating Program

Built a program that uses the blossom algorithm to help users find better matches on a dating platform. This algorithm computes a maximum matching in an undirected graph to find the most number of pairs. The program continues in several rounds, and the algorithm ensures that a pair from a previous round is not repeated. The participants just need to fill in information about themselves and describe desired partners in a speed-dating program.

Performance Analysis of Recurrent Neural Networks

Recurrent neural networks (RNN) can be viewed as numerical algorithms to solve ordinary differential equations.
I conducted a mathematical analysis of the RNNs using the framework of differential equations and showed that adding an attention layer to gated recurrent units does not alter their stability. The study was supplemented with Python code, demonstrating the same conclusion.

Average Speed Analysis for a Call Center

Built a time series of the incoming traffic in a call center to predict the number of agents needed to handle it and the probability of a new customer having to wait before their call is answered. I also predicted the average speed to answer because the regulators tend to focus on it.

Scheduling Classes for a School

A school wanted a schedule that conforms to the government-mandated hours for every subject, using the available classrooms, laboratories, and other facilities. When formulated as a constraint optimization problem, it had over 80 decision variables and over 700 constraints. I solved the problem using a CPLEX constraint optimizer.

FDTD Solution of Maxwell Equations

Used the finite-difference time-domain (FDTD) technique to solve Maxwell equations to simulate the famous Young's double-slit experiment in Python. The simulation allows the users to change the geometrical parameters of the experiment and the nature of the source of electromagnetic radiation.

Dashboard to Track Alternatives Investments

Built a dashboard in R (Shiny) to monitor the returns from a portfolio with alternative investments. The raw data was pulled from an Oracle database. It was used to compute financial metrics. The dashboard showed a trend of the metrics over a period whose extent could be adjusted.

Paradigms

Data Science, REST, Six Sigma, Constraint Programming

Other

Applied Mathematics, Machine Learning, Statistical Learning, Classification Algorithms, Quantitative Modeling, Linear Optimization, Physics, Differential Equations, Fluid Dynamics, Computer Science, Regression, Pricing Models, Statistical Quality Control (SQC), Social Network Analysis, Mathematics, Partial Differential Equations, Image Processing, Neural Networks, Digital Signal Processing, Quantitative Finance, Workflow Optimization, Lean Six Sigma, Stochastic Differential Equations, Medical Imaging, DICOM, Data, Data Analysis, Data Analytics, Statistics, Natural Language Processing (NLP), Algorithms, Artificial Intelligence (AI), Graphs, Artificial Neural Networks (ANN), Time Series Analysis, Optimization, Computational Physics, Finite Element Method (FEM), Physics Simulations, Data Visualization, Financial Modeling, Data Modeling, Excel Reporting, OR-Tools, Graph Algorithms, GPT, Generative Pre-trained Transformers (GPT)

Languages

R, C++, Java 8, Python, Python 3, SQL, Scala, Bash, Java, JavaScript, Excel VBA, SPARQL

Tools

CPLEX, IBM SPSS, Oracle SQL Data Modeler, Tableau, Spotfire, Seaborn

Platforms

Linux, Jupyter Notebook, Apache Kafka

Storage

PostgreSQL, Databases, Database Modeling

Frameworks

Boost, Spring, Spring Boot, RStudio Shiny, Spark

Libraries/APIs

NumPy, SciPy, Pandas, Matplotlib, REST APIs, Scikit-learn

Industry Expertise

Healthcare

2009 - 2014

Doctoral Degree in Physics

Bangalore University - Bangalore, India

1997 - 1999

Master's Degree in Computer Science

Indian Statistical Institute - Kolkata, India

JULY 2020 - PRESENT

Lightbend Scala Language - Professional

Lightbend, Inc.

JUNE 2002 - PRESENT

Certified Six Sigma Green Belt

General Electric

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