Field Consultant Resume
3.00/5 (Submit Your Rating)
Charlotte, NC
SUMMARY:
- Creative, results driven technology professional with over 18 years of proven software design and development experience in building distributed, low latency, multi - process/multi-threaded systems on various platforms.
- Expert in - C, C++ and Java
- Extensive network programming experience - TCP, UDP, Multicast, HTTP, WebSockets
- Extensive low latency experience with Java, C and C++ on Linux achieved via
- In-depth understanding of NUMA, Lock free techniques
- Sophisticated memory management techniques -
- Using tcmalloc/jemalloc as well as custom allocation techniques in C and C++
- Off-heap techniques in Java
- Shared memory/ memory mapped techniques in both Java and C++
- Have varying levels of expertise in/exposure to Scala, C#, Python
- Familiar with Databases (Oracle & SQL Server), data modelling techniques and NoSQL (Cassandra)
PROFESSIONAL EXPERIENCE:
Confidential, Charlotte, NC
Field Consultant
Responsibilities:
- Worked on porting a client’s PL/SQL and Java based application over to Confidential .
- In addition to other areas was primary for migrating a legacy rule engine written in PL/SQL (500K loc) over to DML
Confidential, Charlotte, NC
Vice President
Responsibilities:
- Integral part of the core team that built the libraries / frameworks for a new cross-asset trading platform.
- The framework was a mix of C++ and Java with significant inter-operability via JNI
- Designed and built an inter-thread and inter-process messaging library in C++ (with Java wrappers) that supported latencies as low as 40 nanoseconds between threads and 200 nanoseconds between process on the same box
- Designed and implemented a reliable multicast transport to disseminate market data
- Helped design and implement a code generation framework for C++ and Java that allowed façade objects in Java to manipulate off-heap memory
- Helped design and implement a transport agnostic messaging library and implemented the first few transports - solace, TCP, and reliable multicast
Technologies used - C++, Java
Confidential, Princeton, NJ
Lead Architect
Responsibilities:
- Worked with various stake holders to spec out and design the backend systems as well as client APIs to consume these services
- Worked closely with multiple development teams implementing various portions
- Designed and implemented an ultra-low latency TCP and multicast based message queue and implemented in C/C++. Also -
- Exposed to java by via JNI
- Exposed to python by implementing as a module
- Evaluated Intel DPDK and SolarFlare’s ApplicationOnload to bypass the kernel with a user mode TCP stack for the feed handler layer. Integrated with CPU isolation techniques to assure <200 micro second throughput in core feed handlers
- Worked closely with various teams to integrate Python based analytical services with the rest of the backend
- Built client side APIs in Java and C++ to access these services over TCP, WebSockets or Kaazing
- Designed a distributed logging system with Cassandra and integrated with Logstash
- Working closely with network/ ops teams, hosting data centers, network providers to provision production (primary and DR) and other environments
Technologies used - C++, Java, Python
Confidential, NYC, NY
Senior Developer
Responsibilities:
- Started work on adapting CEF (Chromium Embedded Framework) to build a HTML5 based frontend that integrated with the flagship Eikon product, while allowing rendering of hosted applications.
Technologies used - C++
Confidential, NYC, NY
Senior Developer
Responsibilities:
- Worked on Confidential - a broker neutral, low latency trading system supporting a variety of destinations and helped expose the Confidential trading system via a programmable API
- Conceptualized, designed and developed an Excel based trading system to consume the new Confidential API
- Developed new RTD servers to expose Confidential data in near real time to Excel and also wrapped them in UDFs written in C using the Excel C API.
Technologies used - C++
Confidential, Phoenix, AZ
Consultant
Responsibilities:
- Portedthe Darwin Streaming server to Windows and Linux and added features like dynamic bit rate adaptation as well as HTTP streaming for RTP incapable devices
- Wrote a distributed media encoder to encode live streams into multiple bitrates in real time leveraging GPUs
Technologies used - C++, Java
