Компетенции

За годы работы мы сталкивались с совершенно разными технологиями, начиная от работы с электроникой, заканчивая современными алгоритмами машинного обучения. Чуть подробнее с нашими подходами можно ознакомится, например, в наших статьях на Хабре. В списке ниже лишь основные:

  1. Computer Vision — весь стек базовых технологий, начиная от реализаций OpenCV, заканчивая тонкой калибровкой алгоритмов и их адаптации под конкретное железо. Haar, HOG, ORB, BRIEF, контуры, активные модели внешнего вида, и.т.д.
  2. Технологии фильтрации и обработки сигналов. МНК, Калман, различные адаптивные фильтрации (Байес и пр.). Большинство членов команды программировали системы радиолокации, алгоритмы для ФАР-решеток.
  3. Облака точек и работа с 3d данными с 3d-сенсоров.
  4. Machine Learning. Данная тематика очень большая. Мы специализируемся на алгоритмах, применимых для решения CV задач. Начиная от старых SVM и AdaBoost, заканчивая современными свёрточными сетями, байесовыми доверительными сетями. Есть собственные наработки. Члены команды занимаются постоянным самосовершенствованием в этом направлении. Активно применяется Caffe и Theano.
  5. Все члены команды умеют программировать на CUDA/OpenCL. Знакомы с особенностями современных вычислителей. Имеют опыт программирования на таких спец. вычислителях как Tesla, Intel Phi, MPI-кластеры.
  6. Имеется большой опыт программирования задач CV под встраиваемые решения: Blackfin, ARM-решения, raspbery PI и аналоги, Jetson TK1, Jetson TX1.
  7. Все члены команды закончили факультет радиотехники и кибернетики — имеют хорошую подготовку в плане микроэлектроники. Один из членов команды имеет опыт проектирования схем и доведения их до серийных партий.
  8. На чём мы программируем? После того как работаешь на таком числе технологий язык и среда разработки перестают иметь решающее значение. Мы предпочитаем разработку под Windows и под С#/C++/C, но хорошо ориентируемся в различных Linux-системах, знаем pyhton, asm, pascal, Matlab, немного Java.

Что мы не любим и обычно не делаем:

  1. Хоть и умеем, но предпочитаем не производить разработку под Android|IOS. Можем написать математику, отладить под Win/Linux. Но производить перенос и настройку предпочитаем отдавать на аутсорс, или предлагаем заказчику самому решать данный вопрос.
  2. Мы делаем только самый базовый дизайн приложений и систем. Предпочитаем backend. Frontend, пользовательские интерфейсы, GUI — это не наша часть. Не занимаемся дизайном изделий. Мы можем контролировать процесс, выносить данные вопросы на аутсорс и подбирать исполнителей, но данные пункты требуют дополнительного обсуждения.
  3. Мы предпочитаем не разбираться в бизнес логике приложения/программном конвейере заказчика. Наше направление — предоставление готовых математических решений, имеющих свой замкнутый и заранее хорошо описанный канал ввода-вывода данных.