Обо мне

* Software engineer with emphasis on C and C++ (desktop and embedded software);
* Extensive usage of Qt and QML for cross-platform development (Windows, Linux, MSVC, GNU toolchain);
* Experience with Linux both as user and developer (x86 and ARM);
* Experience with writing drivers for NetBSD and Mac OS X;

Software Engineer
January 2014 to present
* Oil/gas drilling telemetry receiver:
    Drilling telemetry hardware + field operator display (embedded Linux, Qt/QML) + PC software (Windows, Qt);
   Ported from Qt 4 to Qt 5;
   Rewrote PC software from scratch using modular architecture;
   Implemented network discovery;
   Implemented support for new telemetry devices (depth gauge, radio acoustic channels);
   Implemented recording of the operator calls (using OPUS codec);
   Implemented remote client for PC software;
   Technologies used: Linux, ARM, Bash, C++, Qt (network, serial ports, SQL, QML), MSVC, git.
* Freight tracker device (GPS, SigFox):
   Implemented communication protocol and PC utility to display device sensor measurements and diagnostic data;
   Technologies used: C++, Qt, USB-COM, git.
* GPS tracking device with GSM functionality:
   Implemented several firmware subsystems (audio, calls, SMS);
   Technologies used: embedded C++, OpenAT, git.
* Motorcycle firmware:
   Implemented various parts of the motorcycle user interface;
   Technologies used: Linux, C++, Qt, QML, git.
* Oil/gas pipe explosion extinguisher:
   Implemented embedded firmware features;
   Implemented features for PC diagnostic software - reading device diagnostic data, sensor measurements, device parameters, logs;
   Rewrote the PC software from scratch using MFC Ribbon UI;
   Technologies used: IAR 8051, embedded C++, Visual C++, MFC, git, Python (helper scripts).

Software Engineer
August 2011 to January 2014
* Mac OS X kernel driver (kext) for the variety of professional USB audio interfaces:
   Implemented audio streaming with low latency;
   Implemented DSD support;
   Added new features to control panel and other user space tools;
   Vendor customization;
   Technologies used: CoreAudio, Embedded C++, IOKit, Objective-C for Mac OS X, Xcode, svn.
* Electrohydraulic valve actuator firmware:
   Implemented valve actuator user interface views;
   Technologies used: Visual C++, IAR, svn.
* In-Car digital radio:
   Prepared Android firmware with driver customizations;
   Implemented Android application (internet radio playback, hardware radio playback);
   Technologies used: Android, Linux, Java, NDK, C++.

Personal projects:
* Implemented a driver for BCM5906M Ethernet adapter for Mac OS X (ported from FreeBSD).

Google Summer of Code:
* Google Summer of Code 2011 (NetBSD):
   Successfully completed and implemented a library for creating pseudo-device drivers in user space.
   Technologies used: C, NetBSD, CVS.
* Google Summer of Code 2012 (NetBSD):
   Successfully completed and implemented H-Tree directory indexing in Ext3 file system driver for NetBSD
   Technologies used: C, Linux, NetBSD, Ext3, git.
* Google Summer of Code 2015 (KDE):
   Successfully completed, ported KSystemLog to KF5 and implemented journald support.
   Technologies used: KDE, Qt 4, Qt 5, Linux, systemd, gcc, C++.

* Graduated from Bryansk State Technical University (BSTU), 2012, as a specialist.
* Graduated from post graduate school in 2016 at the same faculty.

Профессиональные навыки
C++ LinuxQtQml
Опыт работы
ООО "Миатек"
Январь 2014 — По настоящее время (5 лет и 5 месяцев)
Август 2011 — Январь 2014 (2 года и 6 месяцев)
Высшее образование
Брянский государственный технический университет
Факультет: Информационных технологий
Январь 2007—Январь 2012 (5 лет)