Nitin Punjabi, Developer in Toronto, ON, Canada
Nitin is available for hire
Hire Nitin

Nitin Punjabi

Verified Expert  in Engineering

Software Developer

Toronto, ON, Canada

Toptal member since October 4, 2016

Bio

Nitin is a back-end and machine learning engineer specializing in natural language processing. He's also experienced in client-facing roles as a sales engineer and has launched multiple software products where he led full-stack development and marketing.

Portfolio

Royal Bank of Canada
React, JavaScript, Java
Citi
Hadoop, Java, Clojure
Quote MTF
Ruby on Rails (RoR), Ruby, Java, Clojure

Experience

  • Java - 4 years
  • Python - 4 years
  • Functional Programming - 4 years
  • JavaScript - 3 years
  • React - 3 years
  • Redux - 1 year

Availability

Part-time

Preferred Environment

Linux

The most amazing...

...thing I've coded is a real-time web application to help bank traders manage their positions and edit various algorithmic strategy parameters.

Work Experience

Equity Algorithmic Trading Developer

2015 - PRESENT
Royal Bank of Canada
  • Led the development of a real-time front-end for our trading platform; featuring streaming position updates, consumer-grade UX, and order management. This can all be accessed via a browser.
  • Created a configurable pre-trade risk system for our algorithmic trading framework. Through this system, traders can edit risk parameters and load them intraday without restarting the system.
  • Developed a market data ticker plant with a simple API for use by trading algorithms.
Technologies: React, JavaScript, Java

Senior Software Developer

2013 - 2015
Citi
  • Designed and built a large-scale data processing pipeline to meet critical regulatory analysis requirements. In addition to prompting the trading desk to offload billions in the old risk system, my work contributed to Citi having the cleanest Fed-Test pass on Wall Street in 2015.
  • Helped build a real-time credit risk pricing system. Rather than waiting at the end-of-day for risk results, this system received trade updates in real-time and priced risk immediately for trader consumption.
  • Trained developers in Clojure to help build out data processing capabilities within the Global Credit Technologies group.
Technologies: Hadoop, Java, Clojure

Product Director

2011 - 2013
Quote MTF
  • Designed and built Spectre, a Clojure-based real-time market surveillance system, saving the firm the substantial cost (six-figures per year) of using a third-party vendor to meet regulatory requirements.
  • Designed and built Minerva, a data warehousing service. Minerva automated the generation of key reports and enabled the business to get clear views on performance and operations through the ad-hoc analysis tool.
  • Designed and provided the specifications for the Quote Liquidity-On-Demand eXchange (QLX), Europe’s first equities exchange with a hybrid auction and continuous matching model.
Technologies: Ruby on Rails (RoR), Ruby, Java, Clojure

My Multi-part Series on Building React Apps

This is the code for a tutorial series which takes a reader from knowing nothing about React to setting up a build environment, understanding how components work, and building an end-to-end single page application.

Pattern Recognition Using Clojure and Esper

This is the code from my tutorial on how to use Clojure and Esper (CEP software) together.

The code is a collection of demos where random data is run through functions looking for specific patterns. When a pattern is found, the data is outputted.

Spectre: Real-time Market Surveillance System (Video)

https://www.youtube.com/watch?v=dtnc8lcC3oc
For regulatory purposes, financial exchanges are often obliged to monitor for abusive trading patterns. Spectre is a real-time market surveillance system built to search for such patterns. The back-end data processing is written in Clojure while the web application is in Ruby on Rails.

clj-fix: A FIX-protocol Client Written in Clojure

Financial entities (banks, exchanges, and more) commonly have their systems communicate via the FIX protocol. clj-fix handles maintaining a connection with an exchange, and offers a simple API for sending and receiving order messages.
APRIL 2018 - PRESENT

Certified Ethereum Developer

B9 Labs

Libraries/APIs

React

Tools

Git

Languages

Solidity, Java, JavaScript, Python, Clojure, Ruby

Paradigms

Functional Programming

Platforms

Ethereum, Blockchain, Blockchain Platforms, Linux

Frameworks

Express.js, Redux, Hadoop, Ruby on Rails (RoR)

Storage

PostgreSQL, MongoDB

Other

Cryptography, Communication, Freelancing, Distributed Ledgers, Bitcoin, Esper

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