«Архитектурный подход: Интервью с Александром Полянкиным о технологических решениях, изменивших рынок бизнес-аналитики»
04.06.25, Ср, 16:42, Мск,
В мире корпоративного ПО архитектурные решения определяют не только технический успех продукта, но и его бизнес-перспективы. В этом интервью Александр Полянкин, ведущий разработчик Metabase и бывший архитектор Wrike, раскрывает, как технические инновации помогают компаниям завоевывать рынок. От разработки архитектуры для работы с enterprise-клиентами, позволившей заключить сделку на 2,25 миллиарда долларов, до создания решений для обработки миллионов таблиц в реальном времени — опыт Александра демонстрирует, как правильные технические решения могут трансформировать бизнес-процессы и открывать новые возможности для компаний.
— Александр, ваш путь в IT начался с программирования в последних классах школы, а сегодня вы занимаете ведущую роль в разработке одного из самых популярных инструментов бизнес-аналитики с открытым исходным кодом Metabase. Расскажите, как развивался ваш профессиональный путь и какие ключевые решения помогли вам достичь текущей позиции?
— Мой путь действительно начался еще в школе. В старших классах я увлекся идеей создания компьютерных игр и начал самостоятельно изучать язык Pascal. Это совпало с моими успехами в математических олимпиадах — я несколько раз побеждал на городском уровне и даже занял третье место на областной олимпиаде. Высшее образование получил в Волгоградском государственном техническом университете по направлению информационных технологий, где параллельно с академической программой много времени уделял самообразованию — читал литературу по C# и .NET. Переломным моментом стал мой первый год работы бэкенд-разработчиком, когда мне приходилось заниматься и фронтенд-задачами. Я быстро осознал, что разработка пользовательских интерфейсов дает мне возможность видеть результаты своей работы непосредственно и влиять на восприятие продукта пользователями. Это привело меня в Wrike, где я начал карьеру как фронтенд-разработчик.
Решающим для моего профессионального развития стало решение браться за сложные архитектурные задачи — от построения микрофронтендов в Wrike до создания системы, способной обрабатывать огромные массивы данных. В Metabase, куда я пришел в 2021 году, стал техлидом нескольких команд, разрабатывающих ключевую функциональность для бизнес-аналитики. Считаю, что мой путь определили три фактора: стремление решать сложнейшие задачи, которые встречаются только в крупных проектах, готовность постоянно осваивать новые технологии и амбиция создавать продукты, которые будут существенно менять пользовательский опыт.
— В Wrike вы занимали должность архитектора, что является признанием ваших достижений на позиции техлида. Как эксперт в области архитектуры ПО, не могли бы вы осветить, с какими основными архитектурными вызовами обычно сталкиваются компании, имеющие в штате более 100 разработчиков, и как они повлияли на вашу работу?
— В Wrike я столкнулся с классической проблемой масштабирования разработки. Когда команда растет до сотни разработчиков, монолитная архитектура становится препятствием для развития. Главный вызов состоял в том, чтобы трансформировать монолитное приложение в систему независимых модулей без остановки развития продукта.Вебинар: «Управление качеством в фарме: от зарубежных решений и бумаги — к российской системе Docs5 EQMS»
Я внедрил архитектуру микро-фронтендов, разделив приложение на более чем 200 независимых модулей, которые могли развиваться и выпускаться независимо друг от друга. Это позволило нам увеличить скорость релизов с одного до десяти в день. Чтобы реализовать этот подход, я разработал детальный технический план и возглавил две платформенные команды — «Internal» и «UI Kit». Эти команды обеспечивали основу для остальных продуктовых команд.
Еще одним важным вызовом для нас стала миграция с языка программирования Dart на TypeScript. Этот проект затрагивал работу более 20 продуктовых команд, и нам нужно было провести переход поэтапно, не прерывая разработку новых функций. Как архитектор, моя роль заключалась в координации усилий разных команд и создании технической стратегии, которая позволила бы осуществить переход с минимальными рисками.
Работа с такими сложными задачами изменила мой подход к разработке. Я научился мыслить на уровне всего продукта, а не отдельных компонентов. Я также осознал важность технической документации и прозрачной коммуникации между командами. Эти навыки позже помогли мне в Metabase выстроить архитектуру, способную обрабатывать огромные объемы данных, с которыми работают наши клиенты.
— В Wrike вы также работали над поддержкой enterprise-клиентов. В итоге сама компания была продана Citrix за 2,25 миллиарда долларов. Выход на enterprise-рынок — это всегда серьезное испытание для архитектуры продукта. На ваш взгляд, какие технические решения были критически важны для успешного покорения этого сложного сегмента рынка?
— Выход на рынок корпоративных клиентов потребовал от Wrike совершенно нового подхода к своей архитектуре. Крупные компании оперируют огромными массивами данных: миллионами задач, тысячами проектов и сотнями одновременно работающих пользователей. Старая архитектура Wrike не была рассчитана на такую нагрузку.
Первым и самым важным решением стало обновление системы отчетности. Корпоративные клиенты нуждаются в сложных аналитических срезах данных, с которыми наша старая система не справлялась. Мы полностью пересмотрели подход к выполнению запросов, внедрили кэширование промежуточных результатов и оптимизировали алгоритмы агрегации данных. В результате время генерации отчетов для самых сложных сценариев сократилось в 10 раз.
Вторым шагом стало внедрение многоуровневой системы управления доступом. В корпоративной среде крайне важно точно настроить права доступа, учитывая организационную структуру компании. Мы разработали модель, которая позволяет гибко настраивать иерархию прав и ролей, обеспечивая при этом высокую производительность проверок при каждом обращении к данным.
Третье решение было направлено на масштабируемость интерфейса. Мы создали компонент редактируемой таблицы, способный работать с огромными наборами данных без потери производительности. Внедрение виртуализации рендеринга и инкрементальной загрузки данных позволило пользователям работать с таблицами, содержащими сотни тысяч строк, без видимых задержек. Эти технические инновации дали Wrike значительное преимущество перед конкурентами в корпоративном сегменте.
— В Metabase вы добились значительного сокращения количества приоритезированных багов с 400 до 100 в зоне ответственности вашей команды. Проблема управления качеством и техническим долгом актуальна для многих быстрорастущих продуктов. Как вам удалось систематизировать этот процесс, и какие подходы к управлению качеством вы считаете наиболее эффективными в целом для индустрии?
— Первым шагом мы провели кластеризацию багов. Вместо того чтобы рассматривать каждую проблему в отдельности, мы начали группировать их по общим причинам возникновения. Это помогло нам выявить системные недостатки в архитектуре.
Затем мы внедрили превентивные меры. Мы значительно расширили тестовое покрытие, добавив автоматические тесты. Кроме того, мы изменили сам процесс разработки. Мы ввели практику регулярных технических ревью кода всей командой. Каждый разработчик представляет свои решения, а остальные члены команды анализируют потенциальные проблемы. Это помогает нам заранее выявлять слабые места и снижает вероятность появления новых багов.
Благодаря сочетанию этих подходов нам удалось сократить количество приоритетных багов с 400 до 100, при этом значительно повысив общую стабильность продукта. Я считаю, что ключом к эффективному управлению качеством является системный подход. Важно не только устранять симптомы, но и искать и лечить причины возникновения проблем.
— Теперь вернемся к вашему опыту в работе с ИИ. Вы разрабатываете Metabot — чат-интерфейс для генерации запросов с использованием естественного языка. Не секрет, что внедрение ИИ в бизнес-аналитику открывает большие перспективы, но и ставит перед разработчиками новые задачи. Какие уникальные проблемы возникают при таком внедрении AI в столь специализированную область, как бизнес-аналитика, и как вы их решаете на примере Metabot?
— Внедрение искусственного интеллекта в бизнес-аналитику сталкивается с уникальными вызовами, которые отличают эту область от других сфер применения ИИ. Некоторые пользователи Metabase обладают более чем миллионом уникальных таблиц, что делает стандартные подходы к работе с ИИ, основанные на передаче всей схемы данных в контексте запроса, неприменимыми из-за ограничений современных языковых моделей. Мы разработали многоступенчатую систему, в которой сначала выполняется векторизация пользовательского запроса и его сравнение с метаданными таблиц. Это позволяет предварительно отфильтровать из миллионов таблиц несколько десятков наиболее релевантных, с которыми затем работает языковая модель.
Еще одной проблемой является терминологическая точность. В бизнес-аналитике многие термины имеют строго определенные значения, которые могут отличаться от их использования в обычной речи. Например, термины «мера» и «измерение» в контексте аналитики представляют собой совершенно разные понятия, хотя в обычном языке они могут использоваться как синонимы. Чтобы решить эту проблему, мы экспериментируем с дообучением языковых моделей на специализированных данных из области бизнес-аналитики. Это помогает моделям лучше понимать контекст и терминологию, что критически важно для генерации корректных SQL-запросов.
Персонализация под конкретные источники данных также имеет важное значение. Каждая организация имеет уникальную структуру данных и терминологию. Мы разрабатываем механизмы, позволяющие Metabot адаптироваться к особенностям каждого клиента, учитывая специфику его данных и предпочтения в построении отчетов.
Работа над AI-функциональностью в Metabase — это постоянный процесс экспериментов и улучшений. Мы постоянно бенчмаркаем различные подходы, анализируем обратную связь от пользователей и совершенствуем как саму модель, так и интерфейс взаимодействия с ней. Считаю, что в ближайшем будущем такие инструменты кардинально изменят способы работы аналитиков с данными, но для этого нам предстоит решить еще немало сложных технических задач.
— Учитывая ваш богатый опыт в разработке архитектурных решений, какие основные вызовы вы видите перед индустрией бизнес-аналитики и корпоративного ПО в ближайшие годы?
— Индустрия бизнес-аналитики находится на этапе стремительной трансформации, и в ближайшее время нам предстоит преодолеть ряд серьезных вызовов. Во-первых, мы ожидаем взрывной рост объемов данных. Если раньше компании работали с гигабайтами информации, то теперь речь идет о петабайтах. Причем это не просто количественный рост — значительно увеличивается разнообразие типов данных и источников. Во-вторых, мы наблюдаем процесс демократизации доступа к аналитике. Сегодня работать с данными должны не только профессиональные аналитики, но и сотрудники практически всех отделов. В-третьих, аналитика будет интегрироваться непосредственно в бизнес-процессы. Уже недостаточно просто создавать красивые отчеты — данные должны влиять на принятие решений.
Нельзя не упомянуть стремительное развитие ИИ и его влияние на ожидания пользователей. Люди будут все чаще рассчитывать на возможность общаться с аналитическими приложениями на естественном языке, задавая вопросы так, словно они разговаривают с коллегой-экспертом. Это, в свою очередь, предъявляет совершенно новые требования к архитектуре систем, которые должны будут не только понимать такие запросы, но и генерировать осмысленные, контекстно-зависимые ответы. Более того, большие языковые модели (LLM) продолжат совершенствоваться и открывать возможности для решения аналитических задач, которые сейчас кажутся невозможными или требуют огромных человеческих усилий — от автоматического поиска глубинных инсайтов и аномалий до генерации сложных предиктивных моделей и полноценных повествовательных отчетов.
Безопасность и приватность при работе с чувствительными данными также остаются важнейшими вопросами. С ростом регуляторных требований, таких как GDPR и CCPA, компаниям необходимы инструменты, которые обеспечивают соответствие нормам. И, наконец, необходимость работы с данными в режиме реального времени остается актуальной. Бизнесу уже недостаточно отчетов, формируемых по расписанию — решения нужно принимать здесь и сейчас.
Все эти вызовы требуют глубокого переосмысления архитектуры инструментов бизнес-аналитики. Мы в Metabase стремимся не только реагировать на текущие тренды, но и формировать будущее индустрии. Благодаря нашей модели с открытым исходным кодом, наши инновационные решения доступны для многомиллионной аудитории пользователей по всему миру.
— Александр, ваш опыт показывает, насколько значимую роль играют архитектурные решения в успехе IT-продуктов. В завершение интервью — какой совет вы могли бы дать начинающим разработчикам, которые стремятся развиваться в направлении системной архитектуры и влиять на создание технических решений в своих компаниях и индустрии в целом?
— Развивайте системное мышление — это поможет вам не только понимать отдельные компоненты, но и видеть, как они взаимодействуют в рамках всей системы. Обязательно изучайте различные архитектурные паттерны, анализируйте их сильные и слабые стороны, а также то, как они применяются на практике в успешных IT-проектах. Это станет отличной базой для вашего роста. Не бойтесь браться за сложные задачи — работа на пределе возможностей стимулирует наиболее интенсивный профессиональный рост. Когда мне поручили разработку микро-фронтендов, пришлось многое изучить и экспериментировать, чтобы найти оптимальные подходы. Такие вызовы действительно формируют архитектурное мышление.
Более того, сегодня, когда искусственный интеллект набирает невероятные темпы, от архитектора все чаще ожидается глубокое понимание современных подходов и инструментария, особенно в работе с большими языковыми моделями (LLM). Важно грамотно встраивать их, комбинируя базовые AI-компоненты в работающие и эффективные решения, интегрированные в общую архитектуру системы. Это еще один пласт знаний, который открывает новые горизонты для создания интеллектуальных продуктов.
Также очень важно развивать коммуникативные навыки. Даже самое блестящее техническое решение не будет иметь ценности, если вы не сможете донести его значимость до вашей команды и руководства. Архитектору необходимо уметь объяснять свои идеи людям с разным техническим бэкграундом. И, конечно, старайтесь постоянно расширять свой технический кругозор, выходя за рамки узкой специализации. Взаимное проникновение знаний из разных областей позволяет создавать более гармоничные и продуманные архитектурные решения.
Автор: Георгий Литвинов








