About Me
Dynamic career architecting and developing highly complex heterogeneous systems targeting Windows and Unix platforms using cutting edge technologies. Apply achieved knowledge to all phases of the lifecycle of a development process: define and clarify...
Show MoreSkills
Portfolio Projects
Description
Migration of a legacy risk valuation system.
A monolithic legacy system implemented in C++ had to be splitted into smaller services to simplify support and development of new features.
New implementation was mostly (99%) Java-based.
The remaining part -- DBA (Deutsche Bank Analytics) -- a single-threaded library was implemented in C++.
New system was implemented as a set of services, offered to each other and various internal clients (different DB projects).
Entire functionality has been split into products and migrated on a product-by-product basis.
As a lead developer on the project:
- participated in new system design
- implemented an initial version of Risk Calculator service
- driving further service evolution
Description
An ultra-low-latency market-making application.
The key of the project is a combined HW/SW solution, which goal was to:
- support market-making for a certain set of products
- react to different market events as soon as possible
C++ was an obvious implementation language choice.
The implemented solution made it possible to process market updates:
- keep the current quote;
- produce a new one;
- cancel the current quote, if cannot produce a new one (< 10>
in a matter of microseconds (~4-6).
As a developer on the project I have implemented:
- communication to an external Risk Calculator to pre-calculate price grids for the quoted products
- calculation of a quote, based on the pre-calculated price grid
- safety checker which cancels currently active quote in case of emergency
- and other time-critical modules.
Description
LD-STARS -- long distance sales tool and routing system. There was a series of related projects.
The system allowed to define, store and submit a complicated 800 toll free service.
A call to the same virtual number gets routed to a physical destination based on a number of criteria such as a day of week, time of day, call origination and so on...
UI allows to introduce/modify customer profile with a number of decision trees. Only one tree could be active at a time.
An active tree could be activated -- submitted to an external system, which provides the 800 service.
There was a number of external system adapters implemented (NORTEL/Lucent).
Further system extensions included adoption of VPN, NTS and a voice-routing feature
During my work on the project I have implemented/contributed to most of the backend components, including:
- initial DAO implementation for Oracle
- domain model
- network access layer, based on Berkley sockets
- implementation of gateways to exteranl systems
- ...