cv/README.md

13 KiB
Raw Blame History

Общие сведения

Ткаченко Андрей Александрович

  • Дата рождения: 12.12.1988 (33 года)
  • Телефон для связи: +7 987 317 99 92
  • Email: andrey@aidev.ru
  • Место проживания: гор. Саратов, Российская Федерация
  • Общий стаж в разработке: более 13 лет

Ключевые навыки

  • Rust, Python, Rescript, PostgreSQL, Docker, Torch, Onnx, Git, Linux, NLP, Computer Vision, WebAssembly, Speech Recognition, AWS

Профессиональные навыки

Исследования

Исследование в области трекинга объектов

Исследование проводилось в ходе разработки системы детектирования ДТП с камер наружного наблюдения в рамках сотрудничества с компанией http://satellite-soft.ru . Изначально использовался переписанный мною deep-sort на Rust (код доступен по https://git.aidev.ru/andrey/deep-sort) затем был разработан улучшенный подход в предсказании учитывающий движение автомобилей по кривой (квадратичной параболе) - qtrack.

Проект завершен.

Исследование - дообучение языковой модели (LM) для системы разпознавания речи на базе VOSK

В рамках проекта (по заказу RingDNA) был разработан сервер по переводу речи в текст (STT) на базе VOSK, а также дообучена языковая модель по представленному датасету. Была также предпринята попытка дообучения акустической модели.

Проект завершен.

Исследование в области применеие технологий constraint programming в анализе текста

К сожаление исследования были начаты в рамках стартапа который не смог состояться. Но были проведены весьма интересные изыскания. Был выбран открытый проект и базовой фунциональностью puzzle-solver и доработана поддежка диапазонных чисел, а также начата разработка по адаптации данного решателя к дереву FST которое было сгенерированно по списку из команд для голосового помощника.

Проект не завершен.

Исследование - разработка стекового процессора на языке verilog

В рамках курсовой в университете был разработан процессор с минимальным набором инструкций Forth. А также компилятор с языка Forth.

Исходный код планирую опубликовать, пока не доступен.

Исследование - разработка системы подавления фонового шума с массива микрофонов

Подавление шума при распознавании команды для голосового помощника методом выбора направления источника (DOA) и подавления сигналов пришедших из других направлений (с помощью NMF и Dictionary Learning).

Исходный код планирую опубликовать, пока не доступен.

Исследование - эффективное использование алгоритмом кешей процессора

Целью данной работы было исследовать техники оптимизации и проблемы возникающие при оптимизации работы с памятью сложных алгоритмов. В качестве алгоритма был выбран алгоритм матричного умножения.

Результат - gemm

Исследование алгоритмов лежащих в основе технологий нейросетей

Целью данной работы было детально исследовать работу различных типов слоев нейросетей (свертка, pooling, batch normalization etc.) и их обучение, а также различные типы оптимизаторов.

Результат - yarnn

Исследование - возможность создания иерархической структуры Sparce Coding

Собственная исследовательская работа. Цель - создание алгоритмов разпознавание объектов на изображении (стереопаре) с высокой точность без 'черного ящика' в виде нейронной сети. Была проделана огромная исследовательская работа, в качестве начальной точки отсчета был взят алгоритм Dictionary Learning и были попытки каскадировать его (аналог слоев с нейросети), потом была реализация идеи добавления инвариантности к трансформациям (масштаб, поворот), а также сделан динамический размер словаря и индексированный поиск по нему, потом изменен принцип обучения (хотя базовый принцип OMP остался прежним, только отпала в небходимости в SVD так как элементы словаря были ортогональны по природе - это кватернионы и их декомпозиция сильно упростилась).

Наработки в рамках данного исследования не публиковал и не планирую.

Опыт разработки

Индексированный поиск по изображениям и сематический поиск по тексту

Использование векторных БД типа Milvus и QDrant. Развитие SDK для Milvus. Разработка UI на языке ReScript + React.

Системная шина высокоэффективного обмена сообщениями

как между компонентами в рамках одной программы так и между приложениями с помощью Redis, RabbitMQ, Kafka или TCP(QUIC). Библиотека используется на нескольких проектах и эффективно организует большое количество очередей и асинхронных задач.

Код проекта - MessageBus

Сервер транскрипции телефонной речи в текст (STT) на базе VOSK

Разработан сам многопоточный сервер на языке Rust, нарезающий текст по паузам с помощью библиотеки VAD и подающий отрезки на вход VOSK, а также биндинги к библиотекам.

Система детектирования ДТП по камерам наружного наблюдения за дорожной обстановкой

Сервер, обрабатывающий много потоков видео (RTSP), поиск объектов на кадрах, трекинг объектов, детекторы различных событий/ситуаций, хранилище с функцией ротации, связь с внешней системой принятия решения.

История продвижения

Архитектор ПО

  • Ноябрь 2018 — по настоящее время (3 года 10 месяцев)
  • США, ShakaCode Ltd. - Проектирование и разработка высоконагруженных систем с большим количеством данных на Rust. Системы поиска и индексирования. Поиск дублирующихся данных. Нейросетевые технологии комьпютерного зрения и NLP.

Инженер-программист

  • Декабрь 2015 — Сентябрь 2018 (2 года 10 месяцев)
  • США, TimelineRX Ltd. - разработка существующего продукта (nodejs, postgres sql, AngularJS), разработка алгоритмов анализа событийно-временных данных на основе нейронных сетей.

Инженер-программист

  • Июнь 2015 — Октябрь 2015 (5 месяцев)
  • Ирландия, Tapastreet Ltd. - Разработка системы анализа облака хеш тегов из соц. сетей (выделение событий)

UI Инженер

  • Август 2014 — Июнь 2015 (11 месяцев)
  • Саратов, Grid Dynamics - Разработка и поддержка проектов на AngularJS для платформы https://www.ringcentral.com/

Старший инженер программист

  • Март 2011 — Август 2014 (3 года 6 месяцев)
  • Саратов, OpenSoft - Информационные технологии, системная интеграция, интернет Системная интеграция, автоматизации технологических и бизнес-процессов предприятия, ИТ-консалтинг Разработка и поддержка сайта http://overnightprints.com

Web-разработчик

  • Июнь 2008 — Сентябрь 2010 (2 года 4 месяца)
  • Саратов, ООО "АйТи Акцент" - Информационные технологии, системная интеграция, интернет. Разработка программного обеспечения. Разработка сайтов на PHP и JavaScript.

Участие в публичных проектах

Хобби

Сноубординг, Кайтсерфинг, Кайтбординг, Велопоходы, Конные походы, Скалолазание