Мегапосты:
Мой круг становится Хабр Карьерой! Узнать подробности
Обо мне

Отучился в МГИУ, в качестве дипломного проекта разработал эмулятор датчика кислорода и датчика детонации для стенда системы управления двигателем. Участвовал в соревнованиях ACM ICPC и финалах чемпионата по программированию от Яндекса и Яндекс.Блиц. Работал с драйверами ядра Linux, разрабатывал Qt-приложения, занимался сборкой кастомных дистрибутивов Debian, писал bash-скрипты и Python-парсеры, поднимал Docker-сервисы, настраивал Nginx, подключал CI. Закончил Школу программистов HeadHunter. На текущий момент занимаюсь фронтенд-разработкой с использованием React, XSLT, LESS.

Профессиональные навыки
JavaScriptReact.jsDockerBashLinuxGitPythonXsltC++Qt
Участие в профессиональных сообществах
Опыт работы
Ведущая российская компания в области интернет-рекрутмента
Разработчик 1-й категории
Июль 2018 — По настоящее время (1 год и 6 месяцев)

Наша команда в основном занимается поддержкой и развитием работодательского функционала работы с вакансиями. Мы работаем по гибким методологиям, прорабатываем идеи, проводим AB-эксперименты, а также обязательно ревьювим код и устраняем технический долг, связанный, в основном, с устареванием технологий.

За последний год для решения задач приходилось разрабатывать страницы на стеке Python (±Tornado) + XSLT/React, писать с использованием корутин и хуков, поддерживать SPA-роутинг, учитывать SSR, использовать Final Form, развивать собственную библиотеку компонентов и написать много тестов.

Одной из наиболее важных и интересных стала задача по переводу страницы создания вакансии на React.

Корпорация Строй Инвест Проект М
Москва
Старший инженер-программист
Сентябрь 2017 — Июнь 2018 (10 месяцев)

Налаживал сборку ПО для комплексов видеофиксации нарушений: дорабатывал qmake-проект для сборки исполняемых файлов, использовал bash-скрипт для установки дистрибутива (с поддержкой шифрования).

Разрабатывал плагин для бесперебойной передачи данных с комплексов видеофикасций нарушений в распределённую систему хранения и обработки: использовал gRPC для отправки данных и leveldb для временного хранения неотправленных данных.

Разрабатывал веб-приложение для отслеживания на диспетчерском пульте зафиксированных проездов в реальном времени: докеризованное React-приложение с настроенным Nginx, получающее данные о зафиксированных проездах из распределённой системы по вебсокету. 

Настраивал систему для отображения данных на информационном табло с поддержкой расписания: простенькое React-приложение для отображения изображений, кастомный дистрибутив Debian с запуском браузера вместо оболочки.

По мелочи: настраивал автоматическую сборку в Jenkins для всех вышеупомянутых проектов, разрабатывал веб-страницу с получением данных с Jenkins и SonarQube для отслеживания сборки проектов на командном табло, настраивал Docker-репозиторий в Sonatype Nexus и поднимал HTTPS через Let’s Encrypt.

инженер-программист
Сентябрь 2014 — Август 2017 (3 года)

Главная обязанность - единоличная разработка, тестирование и документирование нового программного обеспечения с последующим его сопровождением. В числе реализованного ПО можно выделить утилиты для оптимизации рабочих процессов при разработке оборудования. Ключевым же достижением стал программный комплекс для проведения приёмо-сдаточных испытаний компонентов ракеты-носителя "Протон-М". Сейчас данное ПО активно применяется на предприятии, планируется его распространение на один из филиалов. Комплекс состоит из следующих частей:

- пользовательское приложение с монолитной архитектурой (Qt), позволяющее контролировать весь процесс тестирования, загружать и редактировать логику проверки, обрабатывать результаты и выводить отчёты;

- драйвер ядра Linux для специализированного устройства ввода-вывода, обеспечивающий информационный обмен с проверяемым оборудованием в режиме реального времени;

- собственная сборка Live-дистрибутива Debian (RT patched Kernel, AUFS support).

Функциональное тестирование продукта проводилось с использованием среды LabVIEW. Центральный показатель качества - надёжность и стабильность работы в критические для проведения приёмо-сдаточных испытаний моменты. Общий объём работы составил около 6000 строк.

Высшее образование
Московский государственный индустриальный университет (Завод-ВТУЗ)
Москва
Факультет: Прикладной математики и технической физики
Сентябрь 2010—Июнь 2015 (4 года и 9 месяцев)
Успешно прошел обучение на кафедре информационных систем и технологий по специальности "математическое обеспечение и администрирование информационных систем". Получил диплом математика-программиста. Овладел навыками императивного (C, ASM), объектно-ориентированного (C++, Ruby), функционального (Haskell) и рекурсивно-логического (Prolog) программирования. Весь курс обучения проходил в среде ОС Linux, что способствовало изучению структуры ОС и bash-скриптинга. В ходе обучения были изучены основы системного программирования и администрирования, математического моделирования, высокопроизводительных и параллельных вычислений, низкоуровневого программирования и программирования микроконтроллеров. Также получены знания веб-технологий, криптоанализа, искуственного интеллекта и прочих областей; пройден курс по работе с ERP-системами. Каждая дисциплина по практическому программированию вызывала неподдельный интерес к ней. Увлеченность (возможно, почти одержимость) выражается в выполнении учебных проектов: от написания Socks-клиента до реализации зеркального лабиринта средствами чистого OpenGL. Успешно выполнил дипломный проект по созданию модуля эмуляции датчиков в системе управления двигателем.