Одиннадцатого ноября в одном из конференц-залов минского отеля Crown Plaza состоялся семинар "Знакомьтесь: Expedia – компания №1 в технологиях предоставления услуг организации деловых и частных путешествий онлайн", организованный партнёром компании Expedia – EPAM Systems. К участию в семинаре были заявлены топ-менеджеры Expedia, которые должны были рассказать о том, как и почему их компания решила использовать услуги белорусских программистов и тестеров, чем они отличаются от своих коллег из других стран, какова специфика работы на проектах организации такого масштаба.
Несмотря на все последние достижения нашего IT-сектора, к нам пока достаточно редко приезжают менеджеры такого уровня, поэтому неудивительно, что семинар вызвал повышенный интерес у белорусских разработчиков, несколько даже неожиданный для самих организаторов, которым пришлось ограничить число слушателей семинара, поскольку число заявок превысило количество мест в конференц-зале. К слову, всё же пара рядов в зале осталось незаполненными (как обычно, первые - это, наверное, привычка из университетов не стремиться занимать первые парты), но людей было всё равно много и во время кофе-пауз всё же было несколько тесновато.
Но опустим бытовые подробности и расскажем, а вернее перескажем, что всё-таки поведали докладчики аудитории.
Первым выступал David Schwartz, VP of Enterprise Applications & Data Warehouse, который представил компанию, рассказал немного о её истории и особенностях развития, а также принципах выбора партнёров.
Expedia
Компания Expedia возникла в 1996 году в качестве подразделения всем прекрасно известной компании Microsoft, через три года выделившись в самостоятельную компанию. Вот так выглядел сайт Expedia в то время: посмотреть. Сегодня же Expedia – это ведущая компания в сфере онлайн планирования путешествий, бронирования отелей и авиабилетов. Свои услуги они предлагают под брэндами Expedia.com, Hotels.com, Hotwire.com, Egencia (ранее Expedia Corporate Travel), TripAdvisor, Expedia Local Expert, Classic Vacations and eLong (всего с локальными версиями - более 90 ресурсов).
Для того чтобы оценить масштабы задач по построению инфраструктуры компании и какая нагрузка ложится на систему, можно просто привести некоторые цифры – на сайты Expedia заходит около 70 миллионов посетителей в месяц или около 2,3 миллионов в день. В 2005 году Expedia и вовсе стала третьей в мире компанией по объёму пользовательского трафика, в 2009 же компания вышла на первое место в мире по продажам билетов и комнат в отелях. Каждую минуту в воздухе находится 41 человек, заказавший билет через систему Expedia, а если выстроить кровати из отелей, заказанных через Expedia за год, то они образуют мост между Лондоном и Нью-Йорком.
Логично, что подобные объёмы клиентов требуют самой что ни на есть чётко отлаженной и сложной вычислительной структуры, и качество разработки программного обеспечения является для компании критически важным.
Группа, возглавляемая Дэвидом Шворцем, состоит сразу из четырёх подгрупп. Первая- это непосредственно Data Warehousing – базы данных, хранение финансовой отчётности и схем перемещения по сайту покупателей и так далее. Вторая группа занимается Order Management – управлением непосредственно самим процессом заказа. Далее идёт группа Global Payment, которая занимается обслуживанием и реализацией платежей (по словам Дэвида, основная проблема у данной группы – это выход на новые рынки, в которых не развита система онлайн-платежей посредством карт (привет, Беларусь), ну и последняя группа занимается финансовой отчётностью. Таким образом, под руководством Дэвида Шворца находится почти весь технологический процесс реализации услуг.
Технологии
Ядро и основные уникальные разработки, лежащие в основе онлайн продуктов Expedia, написаны на C++. В данный момент ведётся работа по планомерному переводу внутренних систем и интеграционных сервисов на SOA платформу, где есть место и Java, и .NET, и старому доброму C++. Кроме того, приходится постоянно масштабировать системы, чтобы справляться с возрастающим объёмом трафика. EPAM Systems помогает Expedia и дочерним брэндам в разных инициативах. В отделе Дэвида это в первую очередь проекты по customer loyalty и системе купонов (на скидки или какие-то другие бонусы).
Отвечая на вопросы зала, Дэвид рассказал о том, что же подвигло компанию, бывшую дочку Microsoft, отойти от их технологий и начать развивать новые направления. По его словам это было сложное решение – начать строить интеграционные решения на Java, и даже в какой-то момент раскололо компанию на два лагеря, но Java посчитали более перспективной в плане масштабирования и более подходящей для задач компаний. Кроме Java, большАя часть работ по-прежнему ведётся на технологиях Microsoft (.NET, MSSQL, C++). Широк набор и используемых технологий организации баз данных – есть и DB2 для самого data warehousing, и MSSQL, разумеется, и Oracle для финотчётности.
Интересно, что разнообразие технологий и переход к Java вызван в том числе и нехваткой квалифицированных кадров – по словам Дэвида, найти сто пятьдесят крутых специалистов весьма сложно по одной технологии, а вот по тридцать в разных куда реальнее, так что для Expedia главное это не сами конкретные технологии, а люди, которые на них могут делать реально работающие сложные вещи.
Аутсорсинг
Аутсорсить Expedia начала довольно поздно – только в 2007 появились первые подрядчики и партнёры (видимо тогда уже осознали, что светлых айтишных голов в штате Вашингтон уже совсем свободных не осталось). Работает Expedia и с китайцами, и с индийцами и с программистами из стран Восточной Европы (здесь имеются в виду, судя по всему, белорусский и венгерские офисы EPAM'а). Был опыт как удачного сотрудничества с аутсорсерами, так и неудачного.
Основные проблемы возникают из-за вопросов и возникающего недопонимания из-за осложнённой коммуникации со специалистами из стран-аутсорсеров – здесь и проблема в разнице часовых поясов, и самая главная - в культурных особенностях. В сотрудничестве с EPAM Expedia привлёк тот момент, что компания может реализовывать проекты целиком вместе с дизайном и анализом, а не только чистой имплементацией, а также её желание предложить какое-то решение самим, разобраться в ситуации.
Отметил Дэвид и неплохой английский местных разработчиков (интересно было это дежурным комплиментом или нет, но стоит отметить, что большая часть зала слушала выступления докладчиков без наушников с переводом), основной же проблемой назвал тот факт, что пока не пришли к какой-то единой схеме работы и модели сотрудничества. Но в целом в сотрудничестве с EPAM они довольны, и это один из лучших по их словам подрядчиков у Expedia.
EPAM Systems & Expedia
Андрей Богуш, Delivery Manager для проектов Expedia далее вкратце рассказал о сотрудничестве EPAM и Expedia. Сотрудничество с Expedia началось в 2007 году и над первым проектом для Hotels.com работала небольшая команда из будапештского офиса EPAM. Этот проект стал впоследствии крупнейшим, его штат вырос до сотни человек. Всего в EPAM Systems для Expedia работает несколько сотен человек, правда большая часть из них в венгерских офисах компании. В Беларусь Expedia пришла совсем недавно – первые проект запустили только в апреле 2010 года. Тем не менее, за полгода количество проектов, разрабатываемых в Минске, выросло с одного до семи, а количество занятых девелоперов и тестеров с пяти до более полусотни. Довольно впечатляющий прогресс. Размер проектов разнится, и команды будут расширяться за счёт Java, .NET и C++ разработчиков и тестеров, поиск которых и ведётся сейчас.
Работа предполагается в тесной связке с командами разработчиков со стороны заказчика и с возможными частыми командировки для работы в непосредственной связке с американскими коллегами.
Платформа eMain
Fred Werbel, Senior Director Order Management and Global Payments рассказал о единой платформе ресурсов Expedia, обслуживанием и разработкой которой и занимается его подразделение. Партнёрские сайты и дистрибьюторы могут использовать решение от Expedia для представления данных и поиска по базе продуктов (есть возможности и использовать соответствующий API для интеграции). Но непосредственно сама обработка и процессинг заказа выполняется системами Expedia. Само описание системы вполне логично было достаточно общим (вряд ли реально углубляться в конкретику за ограниченное по времени выступление). Примечательно, что при этом фотографировать слайды было запрещено, хотя на первый взгляд ничего там сильно секретного заметно не было - просто общие моменты построения платформы, хотя, в принципе, американцам свойственно крайне трепетно относиться к интеллектуальной собственности.
Платформа от Expedia - не просто ресурс обработки заказа, но включает в себя и дополнительные системы по customer loyalty, учёта купонов, системы отзывов, и множество других параметров, которые должны учитывать в процесс обработки заказа для составления индивидуального предложения или составления пакетного путешествия (сразу заказ отеля, перелёта, аренды машины и т.д.). Часть данных при этом контролируемся партнёром, например, непосредственно о наличии свободных комнат или конкретных мест в авиарейсах.
Как раз проблеме поддержания актуальности данных и как справляться с тем, что предложение может стать недействительным, пока пользователь раздумывал над выбором, и были посвящена большая часть вопросов аудитории Фрэду. К сожалению, решить этот вопрос полностью невозможно, и здесь компаниям вроде Expedia приходится полагаться на своих поставщиков услуг, с которыми они работают (отели и авиакомпании и т.д.).
Проекты EPAM
Подробнее о двух проектах, которые разрабатывает для Expedia EPAM Systems, рассказали непосредственно ведущие специалисты команд. Оба проекта связаны с автоматическим тестированием. Первый из них заключается в автоматизированном тестировании билдов платформы eMain, второй проект связан с тестированием Order Management системы и заключается в основном в Java Test Automation, а также разработке второй версии архитектуры для тестирования. Во втором случае команда в Минске работает в тесной связке с аналогичной командой из Бельвью (Вашингтон) и непосредственно участвует в полном жизненном цикле продукта, начиная с его планирования.
Со слов менеджеров EPAM Systems, цель семинара была не только в привлечении интереса к работе над проектами Expedia среди белорусских программистов, но и показать также, что аутсорсинг – это не какое-то второсортное программирование, что и в рамках аутсорсинга работать можно над интересными проектами уровня топ-компаний, и Expedia является как раз примером такой компании.
Из-за большого количества вопросов буквально каждому выступавшему семинар затянулся и закончился буквально на час позже запланированного, впрочем, вряд ли это сильно расстроило собравшихся. В целом, как стало ясно из мероприятия, Expedia и белорусский офис EPAM Systems пока только в начале пути развития своего сотрудничества, но судя по скорости роста количества проектов и команд, оно будет весьма перспективным, так что было бы интересно через какое-то время узнать, как будет развиваться партнёрство и какие крупные уникальные проекты смогут получить прописку в Минске.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.