Made in Belarus: как появляются инновации в крупнейших мировых компаниях

6 мая 2010, 14:30

Максим РастопчукБелорусскую индустрию разработки программного обеспечения по умолчанию воспринимают как вотчину аутсорсинга, территорию бодишопов и разработки под заказ. Поэтому в обсуждениях материалов, часто возникают бурные споры о том, насколько это хорошо для развития родной отрасли, и многие авторы как статей и обзоров, так и комментариев сетуют на то, что у нас практически нет центров разработки собственных продуктов мирового уровня. Мол, большая часть белорусских разработчиков занимается во многом «черновой» программерской работой или же однотипными несложными проектами, в то время как весь research & development, вся аналитика и разработка архитектуры продукта, обычно остаются в стенах американских или европейских офисов. Тем не менее, это не так, есть и в Беларуси действительно серьёзные центры разработки, талантливые специалисты и уникальные проекты. Dev.by постарается подробнее осветить эту пока малоизученную сторону белорусского IT. Начнёт серию материалов интервью с Максимом Растопчуком, директором белорусского офиса Invention Machine, компании, которая каждый раз стремилась в разговорах и в прессе подчеркнуть, что они занимаются своим собственным продуктом, во многом уникальным и востребованным на мировом рынке, причём востребованными транснациональными корпорациями масштаба Shell или Boeing. Продукт, который использует авиакосмическая отрасль, с помощью которого Samsung сэкономил десятки миллионов долларов, а NEC разработала новые типы транзисторов. Что это за продукт, откуда он взялся, где он на самом деле создаётся, откуда у нас берутся специалисты по достаточно редким технологиям? На эти и многие другие вопросы и призвано дать ответы наше сегодняшнее интервью.

Расскажите, пожалуйста, об истории компании. Когда и как она была организована? Корни разрабатываемого направления идут с 1988 года, когда молодой белорусский ученый Цуриков Валерий Михайлович организовал в Минске компанию “Изобретающая Машина”, которая занималась реализацией подходов ТРИЗ’а (теории решения изобретательских задач) на уровне программного обеспечения. Уже тогда эта разработка пользовалась большим успехом и, например, я помню фотографию, где логотип “Изобретающая машина” был размещен на стартовой площадке челнока “Буран/Энергия”. После распада Советского Союза Валерий Михайлович с группой единомышленников уехал в США, где в 1992 году и была организована наша компания со штаб-квартирой в г. Бостоне (США) и с офисами в ряде других стран, а все R&D отделы компании по прежнему расположены в г. Минске. В 2002 был произведен “рестарт” компании в сторону более активной политики завоевания мирового рынка. До 2002 года наша работа была направлена больше на исследование, а после 2002 мы интенсивно занялись промышленной разработкой платформы нашего базового продукта Goldfire.

Компания занимается разработкой продукта в довольно узкой нише откровенно говоря малознакомой большинству людей. Расскажите, пожалуйста, вкратце, что такое innovation software, кем и для чего оно используется? Наш продукт — Goldfire Innovator — направлен на то, чтобы компании с меньшими усилиями и затратами могли генерировать прорывные идеи, создавать что-то абсолютно новое. Другими словами, Goldfire является информационно-программным инструментарием, который существенно облегчает решение инженерных задач.

Процесс решения изобретательских задач общепринято связывать с такими сугубо человеческими способностями как абстрактное мышление, воображение и даже интуиция. Тяжело представить, каким образом компьютерная программа может помочь в процессе создания изобретения, не могли бы вы рассказать какая автоматизация может здесь применяться? Какие основные функции выполняет Goldfire? В основе нашего продукта лежит известная Теория решения изобретательских задач, которая как раз и изучает законы развития технических систем, чтобы позволить инженеру двигаться по оптимальному пути. Например, если провести аналогию, решение квадратных уравнений ранее являлось “искусством”, задачей, которая решалась практически на уровне интуиции, но как только был разработан универсальный подход, то решение превратилось в рутину. Звучит необычно — как можно такие трудно измеряемые (человеческие) процессы “поставить на рельсы”? Ведь кроме абстрактного мышления, воображения, интуиции существуют такие человеческие факторы, как настроение, интерес, самочувствие и даже желание работать в настоящий момент. Методы, которые лежат в основе нашего продукта, организованы в последовательность, которая Вас, как инженера, “ведет” по определенному пути в зависимости от типа задачи и самостоятельно дает варианты решений. В результате формулируются «правильные» проблемы, которые могут значительно отличаться от первоначальной формулировки задачи, ищутся коренные причины этих проблем, и далее используются «правильные» методы решения задач для нахождения эффективных решений. Очевидно, что и знания инженера являются очень важным фактором. Если у инженера не хватает соответствующих знаний, это может свести на нет любые попытки успешного решения задачи, поэтому наш продукт содержит, например, такой уникальные инструмент, как семантический процессор, который оперирует концептами знаний, автоматически извлекаемых или синтезируемых им из обычных текстовых документов, для того, чтобы значительно расширить кругозор инженера опытом, накопленным человечеством. Goldfire innovator Мы не стали идти по пути “Semantic Web”, потому что в своей классической формулировке это не что иное, как попытка заставить людей писать на неких стандартных шаблонах, понятных компьютеру. К примеру, “семантический подход”, используемый в известных поисковиках, на самом деле предполагает лишь анализ статистической информации, таблиц с данными, которые можно просто систематизировать и затем индексировать. Наша же программа обладает способностью анализировать именно естественный язык, т.е. язык, на котором изъясняется человек, и наш процессор не просто находит документы или их части по запросу пользователя, а выдает извлеченные из них конкретные функциональные концепции и их цепочки, которые с большой вероятностью могут являться искомым решением проблемы.

Какие именно источники индексирует ваш продукт? Не возникает ли здесь проблем с авторскими правами? В первую очередь мы даем доступ ко всем документам на предприятии, где установлена наша платформа. Для этого мы поддерживаем индексацию более 450 форматов текстовых документов, можем интегрироваться с почтовыми системами и различными системами документооборота, такими как Documentum, Lotus Notes, MS Sharepoint, Team Center и многими другими. Мы также предоставляем доступ к большой и постоянно обновляемой базе мировых патентов и научных статей (более 50 миллионов документов) и индексируем 3500 “deep web sites”, т.е. сайтов, информация на которых не индексируется традиционными поисковыми системами, а доступна только после введения конкретного поискового запроса непосредственно на самом сайте. В основном это научно-технические издания и базы данных. Что касается авторских прав, то мы храним не сами документы, а только их семантический индекс и ссылки на оригинал, что допускается международным авторским правом.

Была ли мысль использовать решения сторонних производителей, например Google, для поиска и индексации материалов? Да, мы встречались с представителями Google в 2000 году для объединения усилий, но наши проекты были слишком амбициозны и “долгоиграющие” для них в то время. Кстати, при введении запроса в Goldfire Вы можете подключить любые внешние источники, в том числе и такие поисковые системы как Google. За небольшое время наша система скачает найденные документы, проведет их лингвистический, в том числе и семантический анализ, распознает важные семантические отношения (например, выделит концепты, причинно-следственные отношения, отношения ‘часть-целое’ и многие другие) и построит индекс, который Вы сможете использовать для анализа проблемы и нахождения конкретных решений.

Индексирование таких больших объемов информации данных требует серьезных вычислительных мощностей, а также широкого канала для доступа в интернет. И с первым и со вторым в Беларуси существуют определенные проблемы. Как вы их решаете? Да, вы правы, семантический процессор оперирует миллионами правил и словарных записей лингвистической базы знаний. Непосредственно индексация и анализ текстовых документов производятся на стороне клиента. Мы очень серьезно относимся к показателям производительности. Например, в случаях, когда необходимо индексировать терабайты документов (многие наши клиенты ставят такое требование), мы используем кластеры из нескольких серверов. Что касается проблем с интернет-каналом, то текущей скорости нам хватает для проведения большинства операций. Тем не менее, благодаря членству компании в Парке Высоких Технологий, ширина канала будет в ближайшее время расширена в десятки раз. Пока основное тестирование продукта мы вынуждены производить в Бостоне.

Ваша система поддерживает индексацию и анализ текстовых материалов на множестве различных языков. Есть ли в Минске специалисты по лингвистике необходимого уровня? Особенно для японского языка. Интересный момент. Не только наша практика показывает, что человеку сложнее формулировать требуемые лингвистические правила анализа для своего родного языка. Например, еще 5 лет назад ведущие позиции по разработке отдельных алгоритмов автоматического анализа текстов на английском языке занимали финны. Поэтому мы редко используем “native speaker’ов” (носителей языка) для создания семантических движков (за исключением финальных стадий тестирования), а в основном привлекаем к работе наших лингвистов – выпускников и студентов МГЛУ и БГУ, предпочтительно с выраженными аналитическими способностями. Эти выпускники обладают высоким уровнем подготовки, и, после полугодового обучения нашим технологиям, они становятся способными транслировать знания о языках в так называемые шаблоны, понятные семантическому процессору системы. Invention machine Когда мы начинали разрабатывать семантический процессор для японского языка, то по истечении первых обсуждений предстоящей работы предполагаемые к участию в проекте японские специалисты высказали твердые убеждения, что задача не решаема и отказались участвовать в проекте. Команда осталась без “native speaker’ов” - только с белорусскими разработчиками. Через 10 месяцев, мы пригласили японцев на первый раунд ознакомительного тестирования, и они были просто поражены тем, что лингвистический процессор заработал с должным качеством.

При автоматическом переводе данных используются Ваши собственные технологии? Не было ли идеи использовать готовые решения? Поскольку у нас есть собственный семантический процессор, который оперирует всеми уровнями обработки языка, то разработка требуемых систем машинного перевода не была для нас особенно трудной задачей. Готовые же решения сторонних производителей мы используем только для сравнения результатов их работы с нашими. Прежде чем встраивать функцию перевода в систему, мы производили сравнения с известными “переводчиками” и добивались гораздо лучших показателей на технических текстах для всех поддерживаемых нами языков.

На вашем сайте приведен внушительный список ваших клиентов. Aerobus, Boeing, Sony, Samsung, GE, Nestle и даже Shell. Не могли бы вы привести несколько примеров тех задач, которые Ваши технологии помогли решать таким гигантам. Сразу уточню, что клиенты при заключении контракта с нами требуют подписывать соглашение о неразглашении и, обычно мы не имеем права раскрывать результаты, которые были получены при помощи нашего продукта, если нам они вообще стали известны. В качестве “открытого” примера можно привести компанию Samsung, которая смогла, при помощи нашей программы, упростить компоновку лазера в своих DVD-приводах, что, в результате, увеличило надежность приводов на 35% (по их оценкам) и сэкономило этим 77 миллионов долларов. Из более “земных” случаев применения нашего продукта могу рассказать про одну очень известную компанию, которая пару лет назад изобрела и запатентовала скотч, который клеится к мокрым поверхностям. Еще одни пример. В прошлом году, компания MAGNET Product Design & Development подсчитала, что в США утечка воды в бачках унитазов достигает сотен миллионов литров в день! С помощью нашего продукта они разработали механизм, который полностью исключает такой тип утечки. Японская компания NEC при помощи нашего продукта смогла изменить конструкцию транзистора так, что его эффективность по основным параметрам была увеличена примерно в пять раз. Выигрыш от этого решения только за первый год составил сумму порядка одного миллиарда йен. Также наш продукт помогает, например, решить проблемы взаимодействия между исследователями на больших предприятиях. Ведь зачастую инженеры, работая над определенной задачей, не знают, что было сделано по этой проблеме в других отделах. К примеру, отдел одной известной компании, работающей в сфере аэрокосмических разработок, с помощью нашего продукта нашел решение своей проблемы, связанной с конфигурацией задних крыльев самолета, непосредственно на нашем двухдневном обучающем тренинге. Оказалось, что задача, над которой несколько лет работал отдел уже была решена 5 лет назад, а решение запатентовано другим отделом той же компании, расположенном в соседнем крыле здания. Кстати, для решения таких проблем на начальном этапе в этом году мы выпустили на рынок новый инструмент, который позволяет автоматически определить круг специалистов компании, подходящих для решаемой задачи, на основании автоматического анализа корпоративного документооборота. Вообще, примеров очень много, но компании, как правило, по понятным причинам раскрывают их очень неохотно. Некоторая часть представлена у нас на сайте. Invention bulb

Есть ли у Вас клиенты из Беларуси и других стран СНГ? Планируете ли вы выход на этот рынок? Мы анализируем рынок СНГ после кризиса, однако наш семантический процессор пока не поддерживает русский язык. Основным ограничивающим фактором использования продукта в СНГ является слабое развитие электронного документооборота, но использование Goldfire для работы с базами знаний на европейских языках позволит нашим специалистам воспользоваться существующим мировым опытом, что является, по моему мнению, одним из важнейших преимуществ продукта.
Для создания такого продукта наверняка необходимо взаимодействие с практикующими инженерами и исследователями, чтобы лучше понимать потребности клиентов. Происходит ли такой обмен опытом и с кем? Наши сотрудники из команды системных аналитиков, которые работают с нами по 10-15 лет, как раз являются выходцами из практики. Но основной источник информации для нас сейчас это обратная связь от наших клиентов.

Судя по сайту, разработка ведется только в минском офисе, а в зарубежных офисах сконцентрированы лишь менеджмент и продажи. Это так, или же у компании имеются девелопмент-подразделения и зарубежом? Небольшое количество наших сотрудников по разным причинам уехало за границу и работает в западных офисах нашей компании, но 98% разработчиков сосредоточено в Минске.

Исследовательская работа и проектирование продукта также осуществляется в Минске? Постановка направлений и написание функциональных спецификаций по большей части ведется в штаб-квартире, но исследовательская работа, проектирование и разработка осуществляются в Минске.

Сколько человек принимает участие в разработке? Мы сейчас активно расширяем штат для разработки новых направлений: на данный момент в Минске сосредоточено более 75 разработчиков и 5 “наших” работают в иностранных офисах.

Разработка сложного индексатора, семантического анализатора и других сложных технологий — не тривиальные задачи и требуют привлечения разработчиков высокого уровня. Как обстоят дела с такими кадрами в Минске? Надо понимать, что разработка нашего продукта требует специальных знаний, поэтому мы вкладываем очень много усилий в обучение нашим технологиям. При наборе кадров мы фокусируем внимание не на текущий уровень знаний, а на перспективность. Например, во время собеседования в качестве тестового задания мы даем задачу написать дизайн-документ к поставленной задаче, для того чтобы посмотреть как человек думает, как он формулирует мысли и т.д. Мы также очень плотно общаемся с БГУ и МГЛУ и стараемся отслеживать талантливых студентов еще на этапе обучения. Кроме того, активно поддерживаем обучение в аспирантуре, т.к. проекты, над которыми мы работаем, являются наукоемкими, и многие наши разработчики, занимающиеся, прежде всего, созданием семантического процесса, защитили кандидатские диссертации по техническим и филологическим наукам. Ими опубликовано около сотни научных работ, поданы десятки заявок в патентные фонды США и Европы. Вообще я считаю, что в Беларуси очень много талантливых молодых людей и нам всем очень повезло с уровнем существующего образования. Сам факт того, что первый в мире семантический процессор для японского языка промышленного уровня был сделан в Минске, является причиной для гордости за белорусские кадры.

Компания, которая вкладывает много усилий в обучение новых сотрудников, должна опасаться текучки кадров. Как Вы боретесь с этим явлением? К счастью, такое явление как “текучка кадров” у нас в последнее время отсутствует. Во-первых, мы не завязаны на оффшорные рэйты, т.к. производство своего продукта дает гибкость в материальном плане. В первом полугодии прошлого года, когда эффект кризиса на ИТ- компании был максимален и людей увольняли, мы планово повышали зарплаты. Кроме зарплат и уникального проекта, мы, как компания-разработчик продукта, предоставляем своим сотрудникам акции компании, что является очень хорошим мотивационным моментом. Ну и главное, для толковых и амбициозных, в хорошем смысле этого слова, сотрудников, это то, что задачи, которые мы решаем в нашей компании, сами по себе являются очень интересными.

Какие задачи стоят сейчас перед разработчиками? Задач, как всегда, больше, чем ресурсов, одна из самых амбициозных на этот год – переход на Cloud Computing, т.к. мы сейчас начинаем работу над переводом нашей stand-alone функциональности в связь “облака и тонкого клиента (thin client)”, планируем использовать самые новые технологии разработки, кстати, под этот проект ищем сейчас разработчиков, специально для этого переехали в более просторный “евро’-офис в районе Комаровки. В последнее время мы ведем разработку семантического процессора для китайского языка, одного из самых трудно поддающихся формализации, и планируем начать аналогичную работу над корейским. К сожалению, в нашей стране лингвистов специализирующихся на этом языке просто нет, поэтому ведутся активные поиски специалистов, владеющих этим языком и в соседних странах тоже.

 

Обсуждение