This language has been the main thrust of my career since 2001. Most of my time with C++ has been spent using MSVC++. Recently I used g++ for cross-platform development. Being well-versed in most aspects of modern C++, my experience includes secure coding of multi-threaded, high-performance, generic components using STL, templates, open-source libraries and frameworks.
Project SMILPlayer built up my understanding of basic C++ features and Win32 API. I developed the core component of the player, an execution engine that has subsequently become the core part of the companys MMS technology.
Later in toll enforcement gantry project I furthered my C++ horizons utilising policy-driven design, Loki library and templates which have led to creation of even robuster software. I also realised the importance of balance between using proven idioms along with the standard C++ library and modern C++ techniques in successful development of large software systems.
My fluency in C++ and C allowed me to quickly deliver low-latency capital markets adapters for Apama algorithmic trading systems targeting both Windows and Linux platforms.
Years of experience in C++ combined with a deep understanding of programmatic database access enabled me to design and develop a generic persistence framework.
Throughout my career I have developed a number of software applications using the Java platform. My most recent experience is multithreaded development using Java Executor framework to optimise numerically intensive calculations to enable real-time pricing. Earlier I contributed to the front end of POWM and SCU. In these projects my focus was also on database connectivity via JDBC and various O/R mapping tools. For WINGS-FOR-SHIPS I developed the server side.
My primary programming language expertise is in J2SE and JFC/Swing. I have solid experience in core Java and background knowledge in J2EE. My very good understanding of MVC, which stems from working with Smalltalk, helped me to create an open-source Java framework Tabular Data Manipulation.
I first became interested in Java back in 1998. Excited about new technology, we developed a client-server network game with client side written as a Java applet. My first industry project SCU had very important impact on my understanding of n-tier enterprise Java applications. Front-line exposure to the servlet technology in the project WINGS-FOR-SHIPS completes the overall picture of my Java skills.
In 2010 I started using C# with Microsoft .NET 4.0. Code developed included a subscriber/publisher to a trades messaging middleware, web services and WCF parts, XML serialization and high performance database access via BLToolkit. Testing was done with NUnit.
In a short period I was exposed to most significant features of the language.
I was a Smalltalk programmer for about one year during my involvement with two large-scale software systems for semiconductor manufacturing automation developing control systems with ControlWORKS Framework. I implemented HMIs and machine control logic. I used VisualWorks with refactoring tool Refactoring Browser as well as repository manager ENVY/Developer.
In retrospect, Smalltalk indeed gave me profound grounding in object orientation. I was very fortunate to work with this language in two large industrial projects at the beginning of my career.