Василий Демченко: «При выборе фреймворка и языков мы обращаем внимание на задачи, которые должен решить продукт»
О компании
NGRSOFTLAB специализируется на разработке средств информационной безопасности, обработке и анализе данных, а также роботизации бизнес-процессов. Основным направлением является ИБ, при этом флагманский продукт, аналитическая платформа Dataplan, работающая на основе больших данных, востребована в других отраслях – от банковского дела до металлургии. Среди наших заказчиков – крупнейшие российские компании разной направленности.
Мы позиционируем себя как стартап. На данный момент в компании работают 15 сотрудников, которые занимаются разработкой и развитием продуктов. Примерно 70 % штата приходится на блок разработки, остальные 30 % – это бизнес-аналитики и инженеры. Функции по распространению и продаже продуктов берет на себя менеджмент компании, а также партнеры-интеграторы.
О языках и фреймворках
Языки подбираются исходя из того, какие задачи должен решить продукт и какую архитектуру он предполагает. В нашем случае наиболее оптимальными являются Python и Go, для интерфейса используется JavaScript.
Python очень востребован в области Data Science и Data Mining. А Go предполагает использование микросервисов, что значительно повышает устойчивость и производительность продуктов. Применение этих двух языков в случае c аналитической платформой Dataplan предоставляет широкий стек инструментов и возможностей для оптимизации и всестороннего развития продукта. Кроме того, в команде NGRSOFTLAB есть сильные компетенции по языку C++, а также по низкоуровневым и скриптовым языкам (C, Bash, Powershell).
На текущий момент мы используем фреймворк Vue. На нем построен интерфейс продуктов. Для остальных языков используются стандартные библиотеки и компоненты собственной разработки.
При выборе фреймворка и языков мы обращаем внимание на количество соответствующих специалистов на рынке. Если реализовывать программный продукт на сложном и редком фреймворке типа Ext JS, то специалисты будут стоить очень дорого, а найти их будет тяжело. Также для нас важно развитие самого фреймворка: какое у него сообщество и поддержка. На сегодняшний день Vue – это наиболее быстро развивающийся фреймворк.
О нюансах разработки
Мы создаем продукты для наших клиентов, поэтому их потребности являются для нас основным драйвером. Для нас важна информация, полученная с пилотов, которая задает направление нашей разработке. Также мы используем брейншторм – это возможность командой разработать идеи, что добавить в продукт, как и куда двигаться и что будет полезно для продукта.
Каждая задача отдается на проработку аналитику, который собирает информацию и формирует краткое ТЗ для разработчиков. После согласования ТЗ передается в разработку, затем проходит тестирование, и ПО идет в релиз.
В целом мы работаем по методологии Agile, стараемся придерживаться Scrum. У нас двухнедельные спринты, каждый из которых подразумевает решение определенной задачи. При этом у каждого спринта есть своя ценность. Деятельность по разработке ПП осуществляется по гибкой методологии и основным инструментом для ведения проекта разработки является Jira.
Источник: журнал "Системный администратор"