Aleksey Abramovsky, Developer in Nizhny Novgorod, Russia

Aleksey Abramovsky

ODA Architecture SDK Developer

Location
Nizhny Novgorod, Russia
Toptal Member Since
October 22, 2013

Aleksey is a C++ software developer with 13 years of experience focused on building efficient and reliable C++ code and long-term project maintenance. He has broad experience with Windows development: WinApi, MFC, WTL, BCG. Team lead of a C++ junior/middle developers team, as well as hands-on quality management and test automation experience.

Aleksey is available for hire
Hire Aleksey

Portfolio

Open Design Alliance
IFC, ODA Architecture SDK, AutoCAD API, CAD, Object-oriented Programming (OOP)...
Activsystems
Object-oriented Programming (OOP), Microsoft Visual Studio, BCG, Visual Studio...
INFRASOFT
Object-oriented Programming (OOP), Microsoft Visual Studio, WinAPI...

Experience

C++ - 9 yearsWin32 API - 8 yearsMultithreading - 8 yearsAutoCAD API - 8 yearsODA Architecture SDK - 8 yearsMicrosoft Foundation Class Library (MFC) - 5 yearsChromium - 1 year

Location

Nizhny Novgorod, Russia

Availability

Part-time

Preferred Environment

Git, Subversion (SVN), Visual Studio, Windows

The most amazing...

...thing I've built is a VR browser for Android based on the Chromium open-source project

Work Experience

2009 - PRESENT

Senior Software Developer

Open Design Alliance
  • Maintained the Teigha for Architecture library, which implements AutoCAD architectural objects such as walls, doors, windows etc.
  • Implemented key features on the project: walls rendering special cases, new components for doors and windows, multi-view blocks, additional component regeneration for stairs, area calculation standards.
  • Fixed complex core issues: object rendering, object interactions, section regeneration, crashes, and memory leaks.
  • Maintained customer relationships: communicated with key customers, collected feedback about their needs, problems, and priorities; and planned road maps and iterations.
  • Organized the work of three developers from individual planning and assigning/monitoring tasks to code reviews and overall mentoring.
  • 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.
  • 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 a proxy layer for OpenCASCADE modeler usage.
  • Implemented a 3D facet modeler.
  • Implemented a proxy layer for OpenCASCADE modeler usage.
  • Developed a set of testing tools. This allowed faster integration of new developers.
Technologies: IFC, ODA Architecture SDK, AutoCAD API, CAD, Object-oriented Programming (OOP), Microsoft Visual Studio, Visual Studio, C#, C++
2007 - 2009

C++ Software Developer

Activsystems
  • Developed a set of custom MFC-based UI controls including a custom list view, custom thread-safe combo-box for handling millions of entries, taxi map control for tracking taxi cars positions in a city, client information custom grid view, and more.
  • Developed a prototype of an IOCP-based server (C++ application) for Win Server 2003 OS. Implemented coordinated peer-to-peer connection establishment (UDP hole punching), route traffic through server if peer-to-peer connection could not be established, an accounts list with user statistics, and user database interactions. Provided necessary information to client applications (contact lists, network status, add/remove/search for contact, etc.).
  • Developed a mirror driver for a remote desktop application (Windows XP).
  • Developed a remote desktop application for WinMobile 5-6 allowing users to control PDA devices from the desktop.
  • Implemented two game prototypes (arcade platforming and scrolling) for WinMobile 5 using C++ and a custom graphics library based on GAPI.
Technologies: Object-oriented Programming (OOP), Microsoft Visual Studio, BCG, Visual Studio, Win32 API, Winsock API, WTL, WinAPI, Microsoft Foundation Class Library (MFC), C++
2007 - 2007

C++ Software Developer

INFRASOFT
  • Fixed bugs in a custom 2D CAD application (InfrasoftCAD) based on the IntelliCAD 6.3 core.
  • Developed a unit testing framework for custom commands testing using the CppUnit library.
  • Developed a "linear objects" plugin for AutoCAD using C++ and Object ARX for drawing, manipulating, and documenting linear objects such as gas lines, water lines, electrical wiring, etc.
Technologies: Object-oriented Programming (OOP), Microsoft Visual Studio, WinAPI, Visual Studio, Win32 API, Multithreading, CAD, ObjectARX, Microsoft Foundation Class Library (MFC), C++
2005 - 2007

C++ Software Developer

Telma-Soft
  • Developed a GUI for Motorola MyFaves, a smartphone application.
  • Implemented a tool that allows users to edit images (resize, crop, or draw simple geometry) on the smartphone and use those edited images as pictures in notes and the contact book.
  • Supported business logic code.
  • Developed the GUI for McAfee Virus Scan Mobile, an anti-virus application for smartphones and PDAs. Fixed bugs in the anti-virus core libraries. Implemented new application windows and custom controls.
Technologies: Object-oriented Programming (OOP), Microsoft Visual Studio, Visual Studio, Win32 API, Multithreading, WinAPI, GDI(+), WTL, Microsoft Foundation Class Library (MFC), C++
2004 - 2004

C++ Software Developer

NIIK
  • Took a part in the development of a factory simulator for chemical plant engineers. Ported and tested the Fortran 77 math library to C++.
Technologies: C++

Experience

Teigha for Arhitecture

https://www.opendesign.com/products/teigha-architecture
Team lead of Teigha for Architecture project, managing a team of three junior/middle developers.

Fixed core issues and organized the development and QA processes. Currently, the project is being maintained.

FullDive VR Browser

http://fulldive.com/#vr-features
Mobile browser based on Chromium allows the user to watch any video in VR.

Changed Chromium OpenGL rendering device to provide the necessary functionality to an Android wrapper application.

2D Game for PPC 2003

http://murzik555.livejournal.com/1114.html
The link includes several screenshots and a small clip from a game I developed it for PPC 2003.

Sample of a Complex GUI Based on BCG Library

http://murzik555.livejournal.com/1317.html
There are three custom controls in the screenshot:
- Custom list view control
- DriveMap control
- Legend control

These controls are based on the CWnd class. I implemented all the logic from scratch.

Complex Win GUI

A GUI I developed.

MFC GUI Application

This program is a client\server CRM for taxis. The client GUI part is a multithreaded C++/MFC application. My involvement entailed:

• Implementing new project maintenance functionality including customer bonus programs, additional customer info, reworked dialogs and GUI core, bug fixes in the GUI, and improved business logic.
• Fixing critical multithreaded issues (crashes, race conditions, hangs).
• Developing a set of custom MFC-based UI controls such as custom list view, custom thread-safe combobox for handling millions of entries, taxi map control for tracking taxi cars positions in a city, client information custom grid view, and more.
• Implementing interactions with a MySQL database such as SQL queries and C++ wrappers for MySQL interfaces.

C++ Project Maintenance

Developed a prototype of the gold-lock.com IP-telephony system for encrypting VOIP conversations, text messages, and file transfers.

Testimonial | Andrew Rackcheev, CEO at Aktiv Systems

"May 04, 2011
To Whom It May Concern:

I am pleased to write this letter of recommendation for Alexey Abramovskiy. He was our employee during August 2007 - September 2009 and I'm still sorry he left. I cannot recommend him highly enough.

Alexey was working on several projects inside our company. He started on a senior developer role and his motivation and skills allowed to complete several project for mobile platforms. He was quickly promoted to lead developer/architect position role and this was one of the best decisions I personally made. On this position he was a key contributor to a new very challenging project. He was responsible for developing cross-platform VoIP engine allowing to work in slow networks. His attention to details, great architect skills and ability to quickly learn allowed to successfully complete the project in short time frame.

Alexey also is a nice person with good communication skills. Again, I cannot recommend him highly enough and he will be a key asset for any team."

Testimonial | Nikolai Zubchenko, Director at Dlnsight Pty, Ltd.

"April 7, 2011
To whom it may concern:

Alexei Abramovskii has joined DInsight in 2010 in a Lead Software Developer role. We were impressed by his ability quickly get up to speed with complex issues. He has excellent analytical skills, remarkable attention to details and quality of work.

He also has excellent design skills, ability to see the big picture and think through issues of scalability, quality and support. His code is clean and logical.

His proactive attitude to his duties has prevented many major issues with released products. Alexei is very productive. In fact all key features in versions 3.0 and 3.1 of Kernel CAD suite were implemented by him.

In short period of time he has become involved in various parts of the system and different platforms and technologies from core system functionality and complex geometric algorithms to Graphic User Interface in Microsoft .NET framework with consistently top notch professional attitude.

We also value high his honesty and work ethics. He is nice and friendly and has good communication skills. I am confident he will be a great asset to any team."
Image of Produce DWGs Like It's 2016: Teigha For Architecture publication
Publication

Produce DWGs Like It's 2016: Teigha For Architecture

https://www.toptal.com/css/dwgs-teigha-architecture

Skills

Languages

C++, C#, Objective-C

Libraries/APIs

Microsoft Foundation Class Library (MFC), Codejock, Standard Template Library (STL), AutoCAD API, Windows Template Library (WTL), Win32 API, WinAPI, WTL, Winsock API, GDI(+)

Tools

Microsoft Visual Studio, Subversion (SVN), Git, CAD

Paradigms

Object-oriented Programming (OOP), Agile Software Development

Other

ODA Architecture SDK, BCG, IFC, Multithreading, Chromium

Platforms

Windows, Docker, Linux

Education

2000 - 2006

Master's Degree in Applied Mathematics

Nizhy Novgorod Technical University - Nizhny Novgorod