C++ software developer with strong knowledge of C++ (15 years of experience). A solid part of my experience was related to working with big existing codebase such as Chromium browser and ODA Architecture SDK.
|I have broad experience with Windows development: WinApi, MFC, WTL, BCG and CAD development with AutoCAD and ODA APIs. Team lead of a C++ junior/middle developers team, with quality management and test automation experience.
Skills & Expertise
Technical leadership on Oda (Teigha) Architecture SDK and .NET wrappers projects.
- Customer relationships: communicated with key customers; planned road maps and iterations.
- Organized the work of three developers from individual planning and assigning/monitoring tasks to code reviews and overall mentoring.
- Organized the work of a test team on the project: introduced test requirements based on customer requirements, module complexity, and code analysis; introduced a long-term roadmap for the QA team, set waypoints, and assigned priorities to different areas of testing.
- Implemented key features and subsystems such as 3d facet modeler, objects rendering and regeneration, new public APIs.
- Planned and introduced regression testing process including functionality tests, integration and unit tests for the project. This improved code quality and overall product stability, reduced amount of regression issues, and increased development speed.
GUI\business logic development for client part of WERTA CRM TAXI. Client GUI part is a multithreaded C++\MFC application.
- Reworked most of the UI and business logic due to the latest requirements.
- Fixed critical multithreaded issues: crashes, race conditions, hangs.
- Developed a set of custom MFC-based UI controls: custom list view; custom thread-safe combobox for handling millions of entries; taxi map control for tracking taxi cars positions in a city; clients information custom grid view, etc.
Developed a prototype of gold-lock IP-telephony system for encrypting VOIP conversations, text messages and file transfer.
Developed a prototype of С++ IOCP-based server which coordinates peer-to-peer connection establishment (UDP hole punching); routes traffic through server if peer-to-peer connection cannot be established; maintains user database and provides necessary information to client applications (contact lists, network status, add\remove\search for contact etc.).
- Implemented encrypted file transfer, text chat, voice calls.
- Implemented desktop client for Win OS.
- Developed fully functional PDA client with custom WTL-based GUI.
- Implemented AES256 encryption for all network traffic and Diffie–Hellman key exchange algorithm.
Developed mirror driver for remote desktop application (Windows XP)
Developed a remote desktop application for WinMobile 5-6 (control your PDA device from desktop).
- Bugfix of custom 2D CAD application (InfrasoftCAD) based on IntelliCAD 6.3 core.
- Developed unit test framework using cppUnit library.
- Developed plugin for AutoCAD using C++ Object ARX API which supports drawing, manipulating and documenting linear objects such as gas lines, water lines, electrical wiring etc.