• File

Леонід

C++ програміст

City:
Kyiv

Contact information

The job seeker has provided: Phone numberMessenger

Name, contacts and photo are only available to registered employers. To access the candidates' personal information, log in as an employer or sign up.

Uploaded file

The file contains 1 more page.

Quick view version

This resume is posted as a file. The quick view option may be worse than the original resume.

Kyiv, 04108
Ukraine
Mobile phone: [open contact info](look above in the "contact info" section)
Linkedin: [open contact info](look above in the "contact info" section)
Email: [open contact info](look above in the "contact info" section)

Leonid Belyasnik
C++ Developer
Expertise Summary
Profile
C++ developer with commercial experience in software development, maintenance and integration of client-server and distributed systems.
Experienced in C++ development for Windows and Linux, multithreading and concurrency, networking and communication protocols, device integration, Qt/QML applications, databases and supporting infrastructure.
Experience includes device management software, banking and payment systems, security and cryptography software, REST services, IPC, reusable C++ libraries and desktop applications.

Core Skills
• Programming
C++, C++11/14/17
• Operating Systems
Windows, Linux
• Concurrency & Systems
Multithreading, concurrency, thread pools, synchronization, IPC, POSIX API
• Networking & Integration
TCP/IP, sockets, Unix domain sockets, REST, SSH, Protocol Buffers, client-server systems
• Frameworks & UI
Qt, QML
• Databases
Oracle, Firebird, PostgreSQL, SQLite
• Build & Development Tools
CMake, Git, Visual Studio, Qt Creator, CLion
• Testing
Automated testing
• Other
Cryptography, database encryption, device integration

Professional Experience
Developex — Kyiv
C++ Developer
Jan 2019 – Present
• Developing and maintaining software for managing and supporting various hardware devices.
• Participated in the development of an integration layer for a new ecosystem of DIY hardware devices within an existing system.
• Added support for new device types and protocols according to the existing architecture.
• Extended the internal command-based protocol with new GET/SET operations and implemented their command handlers.
• Implemented device-specific functionality across controller and model layers, including communication with devices and models used by the application UI.
• Extended and improved existing base classes where required to support new functionality.
• Developed a large set of Qt/QML UI components, from common controls such as buttons, popups and input fields to more complex application-specific components.
• Introduced a plugin-based approach for UI extensions and developed plugins for the application.
• Implemented specialized UI components, including components involving shader program loading.
• Developed reusable C++ libraries providing common and helper functionality.
• Developed the client application for an internal package management tool using C++ and Qt/QML. The application provided a UI for inspecting available package files, retrieving their metadata and defining the file composition of installation packages. Communication with the server component was implemented over SSH.
• Wrote and maintained automated tests.
• Implemented new functionality, maintained existing code and fixed bugs.
Technologies: C++, C++17, Qt, QML, CMake, Git, SSH

Comodo Group — Kyiv
C++ Developer
Aug 2017 – Dec 2018
CCS for Linux
• Developed and maintained the Linux version of the Comodo security product.
• Reworked the main Linux daemon, removing its dependency on Qt.
• Implemented daemon functionality using worker threads and a condition-variable-based task pool.
• Worked with the existing IPC mechanism based on Unix domain sockets and Protocol Buffers.
• Developed and maintained client-side components and supporting tools.
• Implemented new functionality and fixed issues in the existing C++/Linux codebase.
Technologies: C++, Linux, POSIX API, multithreading, Unix domain sockets, Protocol Buffers, Qt, CMake, Git

Provectus
C++ Developer
Jul 2017 – Jan 2018 (Part-time / additional project)
DeviceManager
• Initiated development of a service for exposing data from a hardware communication layer to web clients.
• Researched different implementation approaches and libraries and selected Microsoft's C++ REST SDK for the REST API.
• Designed and implemented the initial service framework, establishing the technical approach for the project.
• Implemented communication between the service and an existing hardware communication library while providing REST API endpoints for client requests.
Technologies: C++, C++ REST SDK, REST, networking, distributed systems

Cipher Company — Kyiv
C++ Developer / Lead Project Engineer
Mar 2013 – Aug 2017
Worked on banking, security, cryptography and payment-processing software.
• Developed and maintained banking client applications for operators.
• Developed and maintained banking gateway applications for scheduled and automated integration with external banking and payment-processing systems.
• Developed a separate customer monitoring system, primarily using Oracle and stored procedures.
• Participated in testing and evaluation of an in-house cryptographic library, including developing usage examples and validating its functionality.
• Researched and implemented approaches for Firebird database encryption based on the company's cryptographic library.
• Developed Firebird 3.0 encryption plugins and supporting components.
• Developed a prototype database encryption system integrating encryption at the database/plugin level. The technology was researched and presented as a potential solution but was not commercially deployed.
• Developed a PHP extension integrating the company's cryptographic library.
• Developed and maintained banking gateway and integration modules.
Technologies: C++, Delphi, C++Builder, VCL, Embarcadero RAD Studio, Oracle, Firebird, PHP, cryptography, OpenSSL, TCP/IP, multithreading, Windows API, Linux

Intellect-Service — Kyiv
C++ Developer
Mar 2012 – Feb 2013
• Maintained and extended existing C++ applications used for accounting and reporting.
• Implemented new functionality and fixed bugs across several products, including BEST ZVIT+, M.E.Doc and IS-Pro.
• Gained hands-on commercial experience working with large existing C++ codebases.
• Developed a C++ console application for sending developer notifications via XMPP.
Technologies: C++, C++Builder, VCL, SQL, Firebird

Ukrtelecom JSC — Shostka
Software Engineer
Sep 2008 – Feb 2012
• Developed a Delphi-based operator application for remote management and monitoring of Internet club computers via Telnet.
• Implemented remote enable/disable controls and status monitoring for client workstations.
• Developed a prototype web-based system for registering and tracking Internet connection requests.
• Set up and deployed the prototype application on an internal network server.
• Provided system administration and technical support for the branch network and related equipment.
Technologies: Delphi, Telnet, Windows, web technologies

Earlier experience
Self-employed / Freelance
Apr 2008 – Feb 2009
Computer equipment service, maintenance and repair.
PSC Prominvestbank
Apr 2008 – Sep 2008
Automation, system administration, branch network support and ATM maintenance.
Private Enterprise Arkhistyl
Jul 2006 – Sep 2007
Automation tools and system administration.
Additional technical experience
• Oracle and Firebird database installation and configuration.
• Creation of isolated test databases and synthetic data for testing banking software without access to production databases.
• Setup and configuration of supporting services and infrastructure for development and testing environments.
• Experience setting up mail servers and other services to emulate production environments.

Education
Sumy State University
Specialist Degree in Informatics (Mathematician Developer)
2003 – 2009
Languages
English: Intermediate
Ukrainian: Native
Russian: Native

Similar candidates

All similar candidates

Candidates at categories

Candidates by city


Compare your requirements and salary with other companies' jobs: