Итак, вернемся к моему рассказу.
12:45-13:45 - Tech talks - это лекции на всевозможные темы, как внутренние, так и внешние. В течение дня бывает несколько таких лекций.
В Google работают над сотнями проектов. Многие из них "не видны" снаружи: это подводная часть айсберга.
Некоторые из проектов сейчас находятся на стадии разработки и появятся на страницах Google, только если докажут свое право на существование. Многие проекты нацелены на внутреннюю инфраструктуру компании. Это, так сказать, скелет и кровеносная система Google, которые обеспечивают эффективную работу огромного количества серверов компании. Они же позволяют новым проектам быстро набирать обороты, предоставляя им колоссальные вычислительные ресурсы и эффективные алгоритмы для обработки данных.
Но, спрашивается, как же сами инженеры успевают следить за всем, что происходит в компании? Тут на выручку как раз приходят подобные лекции. Периодически инженеры делают презентации своих проектов. Бывают и другие лекции, на которых выступают приглашенные специалисты. Темы самые разнообразные: от оптимизации компиляторов до теории суперструн и многомерной вселенной. Сегодняшняя лекция - о будущем языка Python. Читает ее cам Гвидо Ван Россум, создатель этого языка, а с недавнего времени - разработчик в Google.
13:45-14:30 - иду обратно к себе, проверяю результаты моего теста.
Читаю почту, нахожу запрос на рецензию кода от Рэя. Рецензия кода - это стандартная практика в Google. Весь код, который заносится в систему контроля версий, должен пройти проверку и получить подтверждение "изменение разрешено". В качестве рецензентов выступают люди, которые работали над этим кодом раньше или просто хорошо его знают. На этот раз изменения очень простые, у меня нет никаких замечаний к коду Рэя, за исключением одного неудачного имени переменной. Прошу переименовать ее, а также спрашиваю, проходят ли все наши тесты после этого изменения. Рэй быстро редактирует код и подтверждает, что тесты в порядке. Даю добро на изменения, и они заносятся в систему контроля версий. По ходу замечаю несколько новых модулей по обработке изображений, некоторое время изучаю их и читаю документацию.
14:30-15:15 - иду на совещание по поводу качества русского поиска. "Русская инициатива" - это мой 20%-ый проект. Каждый инженер Google может работать 80% времени над основным проектом и 20% - над чем угодно, что может принести пользу компании. Что может принести пользу, решает сам инженер, поэтому 20%-ые проекты бывают самые разные: это могут быть совершенно новые идеи или просто другой проект Google, который вас заинтересовал. Возможностей много. Я уделяю свои 20% времени проектам Google, связанным со странами Восточной Европы, в основном, с Россией и Украиной. Сюда входит и подготовка к открытию новых офисов, и отбор новых инженеров, и улучшения продуктов Google, направленных на русскоязычную аудиторию. На повестке дня - поддержка русской морфологии в продуктах Google и открытие инженерных офисов в России. Московский офис, кстати, уже оборудован в стиле Google.
15:15 - 16:15 - иду в другой корпус, где занимаются проектом автоматического перевода с одного языка на другой. Мы тесно сотрудничаем с этой группой и сейчас должны обсудить, как строятся их языковые модели. Франц, руководитель группы автоматического перевода, выдает мне за полчаса массу информации и ссылок на документацию. Теперь во все это надо вникнуть и понять.
На выходе из корпуса встречаю Ша-Мейн, мою коллегу по прошлому проекту и хорошего друга. Она рассказывает, что едет на полгода в китайский офис. У нас часто практикуется такой обмен. На сегодняшний день открыто 15 инженерных офисов Google по всему миру. Все они, в общем, принципиально не отличаются от головного офиса. Разве что размером, ведь большинство сотрудников компании все-таки находится в Маунтин Вью. Поскольку мы пытаемся перенести атмосферу главного кампуса во все региональные офисы, такие поездки-стажировки на 3-6 месяцев очень приветствуются. Ша-Мейн рассказывает мне про китайский офис, и мы делимся соображениями по улучшению китайского и русского поиска. Потом договариваемся завтра в обед встретиться и поиграть в игру Го в нашем уголке настольных игр.
17:00-18:00 - совещание нашей группы. Обсуждаем дизайн новой системы, которую нам предстоит строить "с нуля". Это всегда интересно. У всех много идей по архитектуре и реализации системы. Моя задача - разработать новый формат файлов для хранения данных в этой системе. Через неделю встретимся снова и продолжим обсуждение.
18:00-19:15 - иду в спортзал. Немного разминки на тренажерах, потом играем в настольный теннис с коллегами из Google Earth. Для любителей спорта выбор здесь широкий. Например, можно поплавать в бассейне или поиграть в футбол. А еще довольно популярен волейбол, причем вместо обычного мяча иногда используются красочные мячи Google.
19:15-19:35 - бегу в кафе, к восьми нужно быть дома. Быстрый ужин - салат и рыба-меч на гриле. Уже в дверях сталкиваюсь с Джерри, он работает над программами для мобильных телефонов. У нас есть несколько проектов, которые нацелены на мобильную связь. Многие из них поддерживаются в России: например, почта Gmail для мобильных устройств и персональная главная страница Google. Джерри только что выпустил новую версию Карт Google для мобильных телефонов и пытается продемонстрировать мне, как здорово все работает. "Извини, некогда... До завтра!" - отвечаю я на ходу и через минуту уже выезжаю из ворот подземного гаража. Всё, увидимся завтра, Google!