Home

Suresh - Software Engineer
[email protected]
Location: Aurora, Illinois, USA
Relocation:
Visa: H1B
Suresh G



SUMMARY

Senior systems and applications developer with 14+ years of experience in all aspects of SDLC
Hands on experience on high volume distributed systems with large and complex functionality
Record of improving, proposing and implementing architectural components
Self-driven, adaptive and open minded learner and researcher

TOOLING EXPERIENCE
Core C, C++, Python, Core Java, Linux, SQL, Perl

C/C++ libraries STL, Boost, Asio, gtest, GRPC, protobuf, Qt, quickfix, tbb, POCO, ACE, RogueWave
Linux bash, GNU toolchain, gdb, glibc, system call API, Sockets, IPC, pthread
Databases T-SQL, PL/SQL, SQL Server, Sybase ASE/IQ, Oracle, Redis, MongoDB, sqlite, kdb
Networking TCP, UDP, Multicast, HTTP, Solace, ZeroMQ, ZeroC ICE, TIBCO
Python tools Flask, Pandas, numpy, Jupyter, pdb
Build tools cmake, make, qmake, maven
VCS git, Clearcase
Misc Languages C#, Javascript
Misc Tools valgrind, coverity, wireshark, clang toolchain, Purify, ksh
Misc Standards FIX, XML, XPath
Web React, Redux, Node, Express, Blueprint, ag-grid, HTML, CSS, nginx
Cloud Docker, AWS S3, AWS Batch


Experience:-

Fidelity Investments Mar 2022 Present
Software Engineer (Contract)
Major contributions (C, C++11, Java, Python, Linux, kdb, bash):
Hands on technical lead role delivering major initiatives; allocating, overseeing the technical work of other developers in the team; design of major work
Development of new trading gateways and market data providers
Development of new features to OMS, Crossing and Smart Routing
Refactoring legacy code and runtime infrastructure
100% contribution to new Python based performance measurement and reporting framework to track metrics of various events, components and flows encompassing the whole trading system

Consolidated Trading LLC, Chicago Apr 2019 Jan 2022
Senior Software Engineer, Core Trading Systems
Designed and implemented core trading system projects affecting critical business functionality.

Low latency options trading (C, C++11, Linux, Python, SQL)
Ownership of CBOE and CME low latency core options trading system supporting orders, quotes, auctions - market data feed handlers, order/quote gateways, integrations to downstream components
100% contribution to (New) CBOE multicast depth of book options market data (PITCH) feed
Single stream from both simple and complex feeds; arbitrated feeds
Configurable features and tunable performance parameters
40% contribution to (New) CBOE options exchange (BOE) gateway
90% contribution to integrations to downstream components (backoffice, trader GUIs, algorithms)
90% contribution to all other features, bug fixes, refactoring, optimization, build improvements, testing and level 2 support

Low latency futures trading (C, C++14, Qt, Java, Linux, Python, SQL, grpc, protobuf)
Inherited ownership of market viewer GUIs (C++ Qt based, Java Swing) used by futures traders
100% contribution to (New) depth of book service supporting market viewers
100% contribution to (New) semi-automated end to end testing framework
100% contribution to reduction of memory, network traffic for GUI running on traders machines permitting smoother viewing without data loss
50% contribution to all other GUI features, bug fixes, refactoring
100% contribution to optimization, build improvements, testing and level 2 support
(New) Server architecture for GUI clients
100% contribution to design of (New) GRPC based architecture suitable for GUI client use cases
100% contribution to (New) library components to promote development of orthogonal services with cleaner interfaces
100% contribution to (New) market metrics service
Support computing and publishing of financial metrics (eg trade imbalance)
100% contribution to (New) instrument service
100% contribution to (New) end to end, inter-component, component, and unit testing

Balyasny Asset Management, Chicago Feb 2016 Jan 2019
Software Engineer, Front Office IT, Macro IT, PortFin IT
Designed and implemented a wide array of projects spanning both systems and applications in three functional domains as the company grew by assets under management and employee count.
Partial list of design and implementation accomplishments with major (80% - 100%) contribution:

Front Office IT
100% contribution in architecting, implementing and deploying firm wide market data publisher architecture that has zero downtime and zero bugs reported
Generic architecture allowing multiple publishers (vendor and derived feeds) operating simultaneously in the same system using ZeroMQ and Solace middleware
C++14 Linux based market data publishers for BPIPE and firm derived feed. C++14 Linux, C# Windows client libraries to subscribe vendor or derived feeds
Python based reference data infrastructure system integrated to various databases (SQL, T-SQL) for the market data domain
Architectural mechanisms for enhancing maintainability, availability, fault tolerance, scalability, disaster recovery, ease of operations and testability
Primary architect and builder of the technology stack for the new Linux C++ platform from ground up. This includes choice of OS, libraries, message bus, cache, protocols, platform and coding conventions
Contributions to low latency trading team in NYC including May street market data and Solace I/O C/C++14 adaptors to the async single threaded framework, Python scripts for end to end testing, administrative tasks and utilities
Macro IT
100% contribution in designing and implementing an innovative, fully automated, end to end testing framework for macro pricing servers
Test specification file written as a Python module supports customization points. Is used by the test runner to generate or consume any input data or configurations, run all the backend servers and compare their output. Error/exceptional conditions during the test run are handled
Support for executing golden copy vs code type run as well as code1 vs code2 type run
Quant developers able to make changes to various parts of the system (pricing algorithms, data, algorithm configuration etc) and compare the outputs in a fully automated manner
Major refactoring of C++14 architectural components to make them testable (SQL, T-SQL, sqlite)
Implemented servers (C++14, Java, Python, SQL, T-SQL) to provide new data streams for pricing algorithms

PortFin IT
100% contribution in design and implementation of two new UI stacks (frontend and backend)
Javascript (ES6+), React based UI with tabbed grids varying from read only grids to editable grids with type safe column editing etc. Generic grid spec generates grid at runtime
A load balanced backend server architecture with Nginx, Node, Express on Docker containers
Python and Flask based servers and jobs to transport data to and from Redis caches
100% contribution of a new dynamic portfolio finance optimization component with Python, pandas, SQL, T-SQL which monitors data sources and detects optimization opportunities
80% contribution in updating the static portfolio finance optimizer to take margin parameters using Python, Mosek, pandas. Support historical back testing with Python boto3 for AWS S3 and AWS Batch

Citadel Investment Group/Citadel LLC, Chicago Apr 2008 May 2015
Software Developer, Execution Services
Core designer, developer and maintainer on order and execution management system (OEMS) servers supporting automated and manual trading. Used by most execution desks, financial engineers, portfolio managers, and analysts across Citadel.
Environment: C, C++, Linux, Python, Perl, SQL, T-SQL, STL, Boost, FIX, Clearcase, Sybase ASE/IQ, TIBCO, sqlite

Exclusive contribution or ownership of the following components (including new features, bug fixes, code ownership, release management and operational responsibilities):
Order, Execution, Workflow management servers, Client/Interface(s) management servers, Query servers, IOI servers, FIX interface servers, End of day processing of orders/executions/workflows
Database (intraday and historical) for order/execution/workflow data. Real time event bus for various types of event messages
Reference data query servers and Availability servers. Reference data loaders
Live and batch monitoring and reporting scripts

Partial list of design and implementation accomplishments with major (80% - 100%) contribution:

Enhancement of nonfunctional attributes of the system (Performance, Reliability, Availability etc)
Reduced memory footprint of core OEMS by 50%. Reduced I/O in core OEMS by 40% for fills
Improved throughput and latency of important operations on the platform by 1000%
Separation of internal vs external (market) event processing in the core OEMS allowing internal event processing to be independent of market volume/behavior
Incremental refactoring of the legacy OEMS state model to make fine-grained states explicit in the system. Incremental refactoring of the messaging model
Researched various disaster recovery scenarios and implemented component based recovery
Optimization of OEMS for high activity clients like execution algorithms and trader assistant programs
Reduced operational risk with live monitoring, pre-release benchmarking of throughput and latency with volume stress testing, automated testing of several modules

Design, implementation of major functionality
Generic vector order interfaces with basket trading support, workflows for vector order handling between portfolio managers and execution traders including pre-trade compliance checks
Integration of new order and routing flows with diverse use cases- execution algorithms, trader assistant programs, GUI clients, internal and external FIX clients
New reference data server and availability server
Addition of arbitrary order, execution data attributes to the platform, without requiring binary releases

OEMS architecture
Analyzed and documented use cases, architecture and drawbacks of existing OEMS
Proposed, documented new OEMS architecture and implemented incremental evolutionary steps

EDUCATION

Bachelor of Technology in Computer Science, JNT University, India, May 2002
Keywords: cprogramm cplusplus csharp user interface sthree information technology procedural language quasar toolkit

To remove this resume please click here or send an email from [email protected] to [email protected] with subject as "delete" (without inverted commas)
[email protected];1769
Enter the captcha code and we will send and email at [email protected]
with a link to edit / delete this resume
Captcha Image: