Обо мне

Специализация и профессиональные навыки:

Параллельное программирование: OpenCL, MPI, OpenMP, pthreads, параллельные алгоритмы. Знание внутреннего устройства Open MPI. Оптимизация OpenCL ядер под видеокарты AMD и Intel. Знание OpenCL на уровне разработки одной из реализаций (ocland).

Низкоуровневое системное программирование: язык C, написание драйверов (модулей ядра) для linux, программирование с использованием системных вызовов POSIX.

Опыт работы в IDE Eclipse, редакторе vim.

Умение писать bash-скрипты и Makefile'ы, работа с autotools и CMake.

Английский язык - чтение технической документации, разговорный.

Профессиональные цели: Повсеместное внедрение высокопроизводительных вычислений на GPU.

Опыт работы
sudo
Санкт-Петербург
руководитель группы разработки
Декабрь 2017 — По настоящее время (2 года и 5 месяцев)
СТЦ
Санкт-Петербург
инженер-программист
Апрель 2014 — Декабрь 2017 (3 года и 9 месяцев)

Реализация прикладных алгоритмов на С++ и OpenCL. Благодаря комплексному творческому подходу ускорил имеющийся алгоритм в 200 раз одновременно с улучшением точности. Ввёл практику ревью кода. Существенно увеличил количество и качество автоматических тестов, благодаря чему надёжноссть имеющегося программного решения сильно возрасла.

программист
Июль 2007 — Октябрь 2009 (2 года и 4 месяца)
Разработка драйверов под Linux, низкоуровневое системное программирование.
Ведущий поставщик услуг в области разработки программного обеспечения и инновационных ИТ-решений
Санкт-Петербург
Старший программист
Сентябрь 2011 — Апрель 2014 (2 года и 8 месяцев)
Разработка параллельных алгоритмов улучшения изображений и видео на OpenCL. Оптимизация OpenCL ядер под разные архитектуры GPU AMD - VLIW, GCN. Интеграция фильтров обработки изображений в имеющуюся инфраструктуру DirectX Video Acceleration. Обучение и консультирование коллег, постоянное ревью кода нескольких команд разработки. В каждом бинарном драйвере AMD есть часть моего кода - вычислительные шейдеры улучшения качества видео и соответствующая обвязка.
Разработка аппаратного и программного обеспечения для защиты персональной информации
Санкт-Петербург
инженер-программист
Август 2010 — Сентябрь 2011 (1 год и 2 месяца)
Разработка самой быстрой реализации библиотеки линейной алгебры clBLAS на GPU AMD.
Один из лидеров на рынке Интерактивного Телевидения США и Канады
Санкт-Петербург
старший программист
Ноябрь 2009 — Август 2010 (10 месяцев)
Выполнение исследовательских проектов на MPI. Нашёл трудновыявляемую ошибку в Open MPI, за что упомянут в Open MPI 1.4.2 release notes https://github.com/open-mpi/ompi-release/blob/v1.10/NEWS#L1803 Осуществлял техническое руководство командой.
Санкт-Петербургский государственный университет
Санкт-Петербург
программист (C, MPI)
Сентябрь 2006 — Июнь 2007 (10 месяцев)
Параллельное программирование на MPI для вычислительного кластера - исследовательские задачи из области теории графов.
NewIT
Санкт-Петербург
программист (J2ME)
Март 2006 — Июнь 2006 (4 месяца)
Разработка игр для мобильных телефонов.
Высшее образование
Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики
Санкт-Петербург
Факультет: Информационных технологий и программирования
Сентябрь 2003—Июль 2009 (5 лет и 10 месяцев)
Кафедра КТ