Обо мне

Высококвалифицированный разработчик с опытом создания высоконагруженных систем, встраиваемых систем, промышленной автоматизации.

Опыт работы
Cинарра- инновационный проекта по разработке технологий и платформенных сервисов для операторов беспроводного доступа к
Senior C Software Engineer
Май 2015 — По настоящее время (5 лет)
Разработка и сопровождение компонент высоконагруженной системы (HighLoad, low latency): - рассмотрение требований и подготовка архитектурных документов - дизайн и реализация системы с учетом масштабируемости и высокой доступности - работа согласно Scrum (Agile) - участие в code review - оптимизация критичных мест - покрытие кода unit тестами - нагрузочное тестирование - выявление ошибок статическими анализаторами кода - внедрение метрик для мониторинга состояния модулей Инструментарий: Linux, GCC, GDB, Git, ZeroMQ, Protocol Buffers, Redis, JIRA, Eclipse, VTune, PVS-Studio.
Разработка много чего в сфере b2b для работы с клиентами
Разработчик ПО
Июнь 2013 — По настоящее время (6 лет и 11 месяцев)
Обязанности: - разработка/сопровождение приложения для Android - тестирование и выпуск версий - кастомизация операционной системы Android Достижения: - развитие и поддержка системы оценки качества обслуживания CRM-Sensor - реализация расширенной системы восстановления после сбоя (watchdog) - добавление функционала электронной очереди с двунаправленной связью с сервером (SignalR) и печатью талонов на термопринтере - создание высокоэффективной системы компьютерного зрения (распознавание движения в кадре, определение наличия клиента) - реализация звукозаписи в кольцевой буфер со сжатием в реальном времени - оптимизация производительности вычислительно сложных участков, перенос их в native код, настройка оптимизаций компилятора под используемую платформу - сборка custom firmware для фирменных устройств Инструментарий: Android Studio, Android SDK, Android NDK, Linux, Mercurial, Redmine
PLCGROUP
Казань
Главный специалист
Январь 2011 — Май 2013 (2 года и 5 месяцев)
Проект: Вакуумная компрессорная станция Обязанности: - разработка алгоритма управления и противоаварийной защиты для ПЛК Siemens SIMATIC S7-300; - разработка человеко-машинного интерфейса панели оператора; - пусконаладочные работы на территории заказчика. Проект: АСУ ТП кирпичного завода Обязанности: - разработка алгоритма управления и противоаварийной защиты роботизированной линии (ПЛК Siemens SIMATIC S7-300); - разработка человеко-машинного интерфейса панелей оператора; - разработка ПО АРМ оператора (SCADA WinCC); - пусконаладочные работы на объекте.
НПП-ГКС
Казань
Инженер-программист
Сентябрь 2007 — Апрель 2011 (3 года и 8 месяцев)
Проект: Аналитический контроллер Обязанности: - разработка ПО для ПЛК Floboss 407, GE Fanuc RX7i, Siemens SIMATIC S7, Scadapack; - реализация алгоритмов расчета физико-химических свойств сред по ГОСТ 30319, ГОСТ 8.586, ГОСТ 22667, ГОСТ 31369 (ISO 6976), ГСССД МР 113-03, СТО Газпром 5.1, СТО Газпром 5.9, СТО Газпром 5.10 (сложная логика, много математических вычислений); - портирование эталонных алгоритмов с языка программирования Фортран-77 на язык Си; - реализация проекта "Аналитический контроллер"; - разработка ПО генерации отчетов; - конфигурирование различного сетевого оборудования.
Разработка программного обеспечения на заказ
Linux Developer
Июль 2005 — Сентябрь 2007 (2 года и 3 месяца)
Проект: IBM-FSP Init & Registry Обязанности: - разработка системных утилит, портирование и рефакторинг, создание патчей; - поддержка и рефакторинг имеющегося кода, включая модули ядра; - разработка тестовых сценариев, автоматизированное тестирование с использованием LTP; - разработка и поддержка документации (LLD, HLD, TS). Инструментарий: Linux, GNU cross-development toolkit (gcc, fakeroot), Linux toolkit (bash, awk, sed, etc), coverage tools (gcov, lcov), debugging (dgb, crash), cvs/svn, Bugzilla, Microsoft Project Проект: IBM-Crash (crash analysis utility) Обязанности: - портирование базовой версии Crash для работы с ядром Linux версии 2.6; - написание функциональных модулей; - определение степени покрытия кода тестами; - разработка регрессионных тестов. Инструментарий: Linux, GNU cross-development toolkit (gcc, fakeroot), Linux toolkit (bash, awk, sed, etc), coverage tools (gcov, lcov), debugging (dgb, crash), cvs/svn, Bugzilla, Microsoft Project
Профессиональный ИТ-аутсорсинг
Инженер-программист
Июнь 2002 — Июль 2005 (3 года и 2 месяца)
Проект: Клиент-Серверное приложение с набором функциональных задач (запросы к БД) Обязанности: - разработка кода сетевого интерфейса; - разработка функциональных задач. Инструментарий: ИНТРОС (FreeBSD), GNU toolchain, shell Проект: IDS (Intrusion Detection System) для Windows “SafeWork” Обязанности: - разработка кода для фильтрации файлов с регистрационной информацией («лог» файлов); - интерфейс к EventLog (системный журнал Windows): код для чтения/записи событий, анализ событий, удалённый доступ к журналу; - разработка server-side сервиса собирающего события с удалённых рабочих станций; - ревизия кода всей системы с целью устранения брешей в безопасности. Инструментарий: VC6, C/C++, SDK, WinAPI, Windows 2000, SourceSafe Проект: Spyware для Windows “HiddenEye” (клиент-сервер) Обязанности: - разработка системы хранения принятых снимков рабочего стола; - разработка функциональных модулей для обработки изображений (получение, преобразование, нарезка/склейка и т.д.). Инструментарий: VC6, C/C++, SDK, WinAPI, Windows 2000, SourceSafe Проект: Межсетевой экран (firewall) для UNIX Обязанности: Разработка функциональных модулей: - модуль вычисления циклических контрольных сумм (CRC32); - модуль WatchDog (демон-процес контролирующий работоспособность системы); - модуль пользовательского интерфейса (с использованием библиотеки ncurses); - модуль контролирующий присутствие в памяти ключевых компонентов системы; - модуль архиватор (на базе алгоритма PPMD); - различные интерфейсные модули; - ревизия кода всей системы с целью устранения брешей в безопасности. Инструментарий: ИНТРОС (FreeBSD), GNU toolchain, shell
Высшее образование
Казанский национальный исследовательский технический университет (бывший КГТУ) им. А. Н. Туполева
Казань
Факультет: Технической кибернетики и информатики
Сентябрь 1999—Январь 2005 (5 лет и 4 месяца)