System development

C++ is a powerful programming language that is used to develop a wide range of programs and systems. It is used in areas such as game development, operating systems, device drivers, high performance computing, machine learning and artificial intelligence.

The Igor Polyakov Consulting team has extensive experience in writing desktop software, algorithms and solving complex engineering problems in C++.

Our team implements complex and non-standard solutions for various industries: we have already developed software for the oil industry, aviation, urban improvement and others. We combine technologies to create useful, optimized processes in a customer’s project: searching for objects, building routes, exchanging data, managing equipment.

Contact us now!

If you have a ready-made project plan, or an idea for it, leave your contact information. We will definitely contact you and help you implement your idea!

    Our works

    Oracle to PostgreSQL database migration

    We successfully performed import substitution and complex database migration for our client. Migration case:

    • Less then 30 days, excluding technical support during the warranty period;
    • More then 1000 tables and other database objects;
    • More then 20% reducing the execution time of database queries.
    We performed:
    • End2End migration support;
    • Audit and consulting regarding storage architecture;
    • API improvements.

    Internet recorder for aviation with ED-137c support

    The Internet recorder project with support for the ED-137c protocol is designed to work in air traffic control systems. It was conceived as a replacement or expansion of the already working Peleng Internet recorder system. The main target platforms are Linux, Windows. There are two C++ developers working on the project. We use C++17, Boost and Gstreamer libraries, sniffers, real equipment that supports the required protocols. The system being developed consists of four services interacting using Json RPC. The main difficulty and risks of the project are providing and monitoring support for the ED-137c protocol. The protocol describes the rules for using media transfer protocols such as RTSP in air traffic control systems. The Gstreamer framework is the basis for a key part of the project related to network protocols.

    Image processing - capture and process images

    Technologies: C++, OpenCV   The goal of the project is developing software for fast automatic calculation number pixels located in color limits. The video system captures 30 cm x 30 cm images of falling objects - at a speed of 5-to-50 km/hr speed with a Logitech C920 camera. The aim is to calculate how many pixels fall within a band of color [e.g. RGB start (255,0,0) to (200,50,50) i.e. R will range from 200-to-255, G from 0-to-50, and B from 0-to-50]. The developed program returns the count of pixels for each image (frame) at a given constant rate - e.g. 10 frames/second-to-60 frames per second.

    3D modelling of chemicals packaging

    Technologies: Unreal Engine 4, Coherent UI plugin for UE4, C++, JavaScript, React, jQuery, jQuery UI, Flat UI Free, MySQL The project is for showing 3D models of packaging for chemicals. The project is ongoing and as for now, we’ve already implemented logic of packaging choice and generating text description for it. We’ve also implemented option of random viewing 3D models of packaging. UE4 is used to show 3D models. Other things implemented using JavaScript (via Coherent UI).

    Secure Blink based Platform

    Technologies: C++, WebKit/Blink, V8, GYP Duration: 2 years The goal of the project is developing a secure platform to protect websites from remote hacker attacks. The platform is based on Blink/WebKit engine and replaces the potentially unsafe parts of JS and HTML code with safe analogues. The Blink engine was modified with allowances made for requirements of speed and performance.

    Domain Name Drop-Catching Backend

    Technologies:  C/C++, mbedtls, protobuf, ZeroMQ Duration: 6 months Developed a scalable high performance backend system for communication with various DRS (domain registration systems) using EPP (Extensible Provisioning Protocol). The main purpose of the system is to gain (i.e. register on registrar's account) dropped domain names that are of some point of interest. The system is using brute force polling and efficiently distributing requests on all available connections to a target DRS. In addition the system may act as a proxy allowing an end user to submit EPP commands to a target DRS and present responses. Startup system configuration is done via simple text configuration files. Variety of settings in those configuration files allow the system to be adaptive to various DRSes in terms of communication policy.

    Open Street Maps algorithm for the vehicle

    [vc_row desctop_md_mb="margin-md-90b" mobile_mb="margin-xs-30b"][vc_column][vc_column_text]The project solves the problem of finding routes for watering machines and similar mechanisms. An advanced routing system was developed that is based on the Open Source Routing Machine (OSRM). The system is designed to search for a number of routes that begin and end at the same point and cover all the necessary routes inside the selected area. During the implementation the following tasks have been solved:

    • avoiding of left turns for the roads with right-hand traffic;
    • avoiding of right turns for the roads with left-hand traffic;
    • start and stop of the routes on a specific side of the road;
    • traversal of intersections of roads from every direction;
    • traversal of all the roads inside a free-form polygon;
    • integration of traffic data.