
Nitin is available for hire
Hire NitinNitin Punjabi
Verified Expert in Engineering
Software Developer
Location
Toronto, ON, Canada
Toptal Member Since
October 4, 2016
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
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
Experience
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.
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=dtnc8lcC3ocFor 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.
Skills
Languages
Solidity, Java, JavaScript, Python, Clojure, Ruby
Libraries/APIs
React
Paradigms
Functional Programming
Platforms
Ethereum, Blockchain, Blockchain Platforms, Linux
Other
Cryptography, Communication, Freelancing, Distributed Ledgers, Bitcoin, Esper
Frameworks
Express.js, Redux, Hadoop, Ruby on Rails (RoR)
Tools
Git
Storage
PostgreSQL, MongoDB
Certifications
APRIL 2018 - PRESENT
Certified Ethereum Developer
B9 Labs