Lead Software Engineer
2015 - 2019OnyxCorp- Designed and developed a secure messaging applications suite.
- Built web applications from the ground up.
- Designed and developed supporting back-end services.
Technologies: C++, Qt, JavaScript (ES6), React, Go, CryptographyFreelance Software Engineer
2015 - 2015DreamFactory- Designed and developed .NET SDK for DreamFactory API: https://github.com/dreamfactorysoftware/.net-sdk.
Technologies: .NET, C#, RESTful APITechnical Lead
2014 - 2015Return On Intelligence- Designed and developed a web portal for employee benefits management (insurance, retirement, etc.).
- Introduced a web services mocking approach to ease local debugging and troubleshooting.
- Enabled automatic testing using Selenium.
- Drastically improved corporate build and deployment strategy to minimize day-to-day efforts.
- Implemented and enforced product quality tools.
Technologies: ASP.NET, AngularJS, Web ServicesLead Application Developer
2013 - 2014Deutsche Bank AG- Enhanced WPF applications (FX Trading) for investment banking in respect to performance, security, and code quality.
- Developed a number of WPF Controls (MVVM).
- Designed and developed a metadata-driven framework for desktop interoperability and enabled several existing applications to use this framework.
Technologies: C#, .NET, WPF, Prism, Roslyn, DSLSoftware Developer
2010 - 2012Microsoft Corporation- Developed a rapid data serialization SDK (similar to Google ProtoBuf), including the C# code generator for it.
- Developed an object-oriented logging framework (business data logging) for in-house cloud infrastructure, now used by AdCenter and Bing.
- Implemented a remote-procedure calls (RPC) engine and toolset for a brand new key-value store (NoSQL) used in Microsoft Online Services.
Technologies: C#, .NET, NoSQL, C++, MapReduceSenior Software Engineer
2009 - 2010EMC Corporation- Worked on a high-availability Linux-based cluster (HA), integrating and configuring Pacemaker for network-attached storage (NAS).
- Introduced cgroups feature usage to the HA cluster.
- Developed an out-of-memory (or overcommit) monitoring daemon in C.
Technologies: Enterprise Linux (SuSE), C++/C, HA, PacemakerSenior Software Engineer
2006 - 2009Motorola, Inc.- Worked on several Motorola mobile device platforms, implementing security features (JSR177), branding services (T-Mobile MyFaves), etc.
- Integrated Adobe Flash Lite player to the mainstream Motorola mobile platform (P2K). Collaborated with Adobe.
- Participated in AJAR mobile platform development.
- Developed a number of internal tools for embedded software development in C# and C++.
Technologies: C++ and .NET, Embedded, J2MESenior Software Engineer
2002 - 2005The Institute of Telecommunications- Designed and developed a 3D engine for GIS (Geo informational services) in C++, STL, and OpenGL.
- Developed a cross-platform computational geometry math library in C++.
- Created a whole family of end-user 3D applications in C++ and Qt (Viewer, Editor, utilities, etc.).
- Programmed a large-images processing engine (satellite imagery) in C and C++.
Technologies: C++/C, 3D graphics, OpenGL, Qt, Delphi