Киевский программист о работе в штатовском офисе Uber


Фото: Андрей Ясинецкий

- Андрей, есть ли какие-то особенности корпоративной культуры в Штатах?

Конечно, есть. Основная корпоративная культура – это то, что все вкалывают. В любой компании. Это начинается еще со школьной скамьи.

- В Kink говорят, что их фишка – это то, что все ребята ловят кайф от своей работы и с радостью на нее идут…

Я думаю, здесь все ловят кайф от работы. В Долине все заряжены от того, что делают. В Uber даже специальный термин для этого есть - superpumped. Все очень энергичны, настроены на позитив, инновации.

- Есть ли какие-то особенности или фишки именно у твоей компании?

Конечно, в любой компании есть своя фишка – и в Uber тоже есть. Мы привыкли «праздновать города» - Celebrate the City. Что это значит? Когда мы запускаем наш продукт в новом городе, мы, по факту, этот город улучшаем: там становятся лучше транспортная система, воздух, экономика. Мы создаем новые возможности для заработка: создаем эти возможности для людей. Это и есть наша фишка: видишь, как технологии и инновации влияют на жизнь человека. 

- Есть ли у вас офисные плюшки? Пивные четверги, например? 

Пиво у нас есть каждый день, с шести вечера. Каждый организует свое время по-своему.

- А какой в работе сотрудника Uber фан?

Фан как раз и заключается в том, что ты являешься участником такой инновации. Я не думаю, что много компаний в мире существует, работая в которых можно участвовать в таком масштабном проекте. Uber - это часть рынка труда, который очень круто изменится в позитивную сторону благодаря автоматизации. Благодаря Uber, у людей появляется гораздо больше свободы в выборе рабочего графика: когда и сколько им работать. И не только за счет нашей компании и благодаря ей, а и благодаря другим компаниям, которые очень много вкладывают в автоматизацию. За последний год компании, которые разрабатывают искусственный интеллект, суммарно привлекли $5.5 миллиардов венчурных инвестиций. И дальше будет еще больше… В ближайшие 10 лет искусственный интеллект заменит около 60% типовой работы: бухгалтерию, начальную ступень юриспруденции, банковские услуги… Ты теперь не будешь общаться с банком – будешь общаться с ботом через мессенджер: человек будет участвовать в такого рода задачах в 10% случаев, не чаще…

Та же автоматизация транспорта, частью которой являемся мы, это подтверждает. Uber – это глобальная логистическая платформа, которая, конечно же, влияет и на рынок труда, создавая новые возможности для жителей городов. Только транспорт – уже огромный сдвиг. Последний такой был 20 лет назад, когда в мире появился Интернет. Транспорт – это социальный граф физического мира. 

- Как вы сближаетесь в команде? Есть ли у вас тимбилдинги?

Да, конечно, тимбилдинги есть. Они всегда разные. Обычно социализируемся раз в квартал, бывает чуть чаще. Стараемся собираться вместе. У нас молодая компания – и молодой коллектив: не у всех есть семьи и дети, поэтому мы достаточно часто выбираемся отдохнуть вместе. 

- А сорваться и отправиться всей командой куда-нибудь на Гавайи, например, можете?

У нас раз в год проходит так называемый Workation. Это глобальный хакатон: куча идей, накопленных за целый год, реализуются командами в течении двух недель – каждая команда выбирает, где хочет провести эти две недели работы над воплощением идеи в продукт. Выбирать можно любую точку Земного шара. А Uber оплачивает все транспортные расходы. Вот такие две недели, за которые создается стартап, - и есть наш Workation. Благодаря такому вот хакатону у нас появилось множество инновационных продуктов, которые запущены по всему миру.

То, что видят пользователи – это лишь малая часть того, что у нас есть. Самое сложное - это логистика, сложная математика и алгоритмы, которые стоят за нажатием кнопки в приложении. Например, мы делали продукт, который в реальном времени позволяет мониторить состояние всей нашей уберовской сети: можешь в режиме реального времени проанализировать всю динамику в гео-пространственном и временном разрезах. Оптимизировать логистику для пользователей, ценность для водителей и Uber в реальном времени с помощью алгоритмов сложнейшая задача, которую еще никто не решал. Но мы делаем очень большие успехи в этом направлении, имея лучших ученых из индустрии у нас в команде.

Нужно так же понимать, что каждый новый город – это новый опыт для нас, так как каждый город особенный по своему, со своими сложившимися правилами, логистикой, организацией улиц и движения, организацией публичного транспорта, поведением горожан в часы пик, ритмами, трафиком на дорогах в разное время суток и т.д. Учесть все эти особенности и запрограммировать их заранее просто невозможно. Но с каждым новым городом наша система становится умнее, обучаясь и учитывая все эти свойства в дальнейших расчетах. Мы разрабатываем алгоритмы машинного обучения для этих целей.

- Почему ты пошел работать именно в Uber?

Это, как мне кажется, чуть ли ни единственный способ стать частью фундаментального изменения в мире. Uber - это компания из будущего, года этак из 2026-го, которая показывает нам, живущим в прошлом, каким будет будущее, но которой при этом приходится работать в 2016-м. Еще не все люди понимают, чем является Uber, так как видят лишь удобное приложение, продолжая ассоциировать это с традиционным такси по привычке. Но каждый новый город для нас – это часть нашей истории, которую мы учимся рассказывать. Рекомендую посмотреть выступление Трэвиса Каланика (CEO Uber) на TED.

- Какие особенности и чем отличается запуск Uber в Украине от других городов ?

Традиционно Uber в крупных европейских городах запускался с более дорогой версии Uber Black и только со временем появлялась стандартная версия UberX. Запуск в Киеве сопровождался просто феноменальным спросом, мы подводили итоги работы в первые выходные (которые, кстати, были бесплатным для всех пользователей) в отдельном отчете. У каждого города есть свои уникальные особенности, которые не возможно заранее знать и запрограммировать, система должна уметь сама обучаться и подстраиваться. 

Многие писали, что не смогли воспользоваться сервисом из-за отсутствия свободных машин. Это действительно непростая задача, так как спрос в Киеве на данный момент значительно превышает предложение. Однако, как бы странно это не звучало, данная проблема не решается простым добавлением большого количества водителей онлайн, так как в последствии приведет к тому, что некоторые части города будут переобслужены, а некоторые недообслужены. Это в свою очередь приведёт к повышению времени ожидания и снижению эффективности всей системы, в том числе к повышению их времени простоя водителя или времени, проведенного в поездке к заказу. Спрос и предложение – это динамическая система, и наша задача обеспечить ее максимальную эффективность для всех участников. Мы сейчас работаем над этим.

Представьте, что у вас есть математические модели, задача которых максимизировать или минимизировать определенные значения в системе, в данном случае предложение и спрос соответственно (на самом деле гораздо больше) и есть некоторое идеальное значение, к которой эти модели должны стремиться, рассчитанное опять же алгоритмами. Но для того, чтобы определить, насколько эти модели эффективны (т.е. на сколько близко значения приближаются к идеальным), вам нужно прогнать через нее много данных в реальных условиях, посмотреть на данные во временном и гео-пространственном разрезах, определить зависимости и паттерны в данных и подстроить соответствующим образом модель так, чтобы спрос и предложение были распределены максимально оптимально по городу. Все это должно высчитываться и подстраиваться в реальном времени автоматически.

Буквально на днях Uber достиг 2-х миллиардов поездок за время своего существования. На достижение отметки в 1 миллиард поездок ушло 4 года, и лишь 6 месяцев спустя на достижение 2-го миллиарда. 1 миллиард поездок за 6 месяцев - это примерно 230 тысяч поездок в час или почти 4 тысячи в минуту.

Киев стал частью этой статистики!

- Все ли как планировали или разочарованы чем то в Киеве?

Мы очень довольны запуском и отмечаем небывалый спрос на поездки. На данный момент спрос сильно превышает предложение, и это очень хороший знак, а также очень показательно, даже в сравнении с другими Европейскими городами. Задача киевской команды на данный момент – удовлетворить этот спрос.

- Опиши свою компанию несколькими прилагательными.

Инновационная, свободная…. динамичная (динамика – сумасшедшая: то, сколько мы делаем за месяц, в других компаниях заняло бы годы, на самом деле).

- Как формируются команды и происходят планирование и работа?

Команды обычно небольшие – в среднем, 6-7 человек, плюс, мы стараемся сделать так, чтобы команды были локально сгруппированы по продуктам – чтобы не было географически разделенных команд, это важно для нашей скорости работы. У каждой из команд есть вертикали: продуктовая часть, инженерная часть, data science, мобильная часть, back-end часть, front-end часть. Таким образом, у тебя получается микрокоманда, которая может полностью сделать продукт от начала до конца, включая маркетинг и продакт-вижн. В отличие от Google, где команды сидят отдельно и у них зачастую есть только одно связующее звено в виде менеджера, у нас другая структура, более плоская. 

- Откуда поступают задачи? Есть ли ответственные PM?

Все происходит следующим образом: за несколько недель до начала нового квартала, мы собираемся командой и разбираем приоритеты. Затем делимся идеями относительно того, что мы можем улучшить, изменить, внедрить. Зачастую мы стараемся каждую идею выразить в потенциальном влиянии ее на конечный продукт, используя разные KPI, включая так же денежный интерес для бизнеса и затраты. После – выписываем все, примерно оцениваем по времени и эффективности каждого пункта и планируем, что будем делать в ближайший квартал. Моя команда работает над одним из самых важных компонентов нашего бизнеса – логистикой, поэтому основатель компании Трэвис Каланик часто участвует в конечной стадии планирования, чтобы убедиться, что мы расставили правильные приоритеты. Есть команды с более долгосрочными целями, конечно. В основном, это касается больших инфраструктурных вещей, архитектуры дата-центров, разработки наших собственных хранилищ данных и т.д.. Но нашей основной задачей как продуктовой команды является достижение наибольшей эффективности в наименьшие сроки с минимальными затратами.

- Правда ли, что у вас в компании нет тестировщиков?

Да, правда. Мы тестируем все сами. У нас иногда возникают регрессии, да. Бывает, выкатили что-то одно – и сломали другое… Но мы очень быстро это вылавливаем и исправляем еще на пред-продакшен стадии. Делаем откат в таком случае, но это случается довольно редко. Мы деплоим код в продакшен десятки раз в день (в Facebook, к примеру, такая же практика), для ручного тестирования просто нет времени в таком режиме разработки. Но нужно также понимать, что большие изменения, особенно касающиеся логистических свойств системы и алгоритмов, или запуск нового функционала, никогда не выкатываются в продакшен сходу на 100%. Мы выкатываем подобные изменения плавно, на ограниченное число пользователей, смотрим на метрики, анализируем и сравниваем с предыдущими показателями. Часто запускаем две версии параллельно и сравниваем их производительность с технической и бизнес сторон. На этой стадии, конечно же, вылавливаются ошибки, которые мы сразу исправляем, прежде чем выкатить на 100% пользователей.

- То есть, такого понятия как тест-инженер нет?

Нет, каждый ответственен за свой код. Тестирование – это очень дорого, это можно себе позволить только, когда компания уже стала большой машиной, как Google, например. Вопрос эффективности тестирования в таких случаях, конечно, возникает. В продуктовой разработке такого понятия, как QA, не существует – пока ты будешь тестировать продукт вручную или писать автоматические системы тестирования, разработка может уже устареть и все требования поменяются. У нас в течении недели могут несколько раз измениться требования, и это нормально - динамика работы над продуктом очень высокая, и я просто не представляю, как в этот цикл эффективно вставить процесс QA. Весь процесс просто сломается. 

- Но не все разработчики ведь ответственно относятся к проверке…

Мы не нанимаем безответственных разработчиков. Каждый хороший инженер должен уметь тестировать свой продукт и быть полностью ответственным за его цикл. 

- В любом украинском аутсорс-проекте есть QA-инженеры.

Аутсорс и продуктовая разработка – это две разные вселенные. В Украинском аутсорсе сидит довольно много потенциально хороших инженеров, но они пока не представляют, что значит работать над продуктом. Да, есть хорошие, знающие инженеры, с предпринимательской жилкой, но я бы не сказал, что их - подавляющее большинство. 

- Чего не хватает нашим QA, на твой взгляд?

Умения программировать и высокого уровня ответственности. Но откуда ей взяться в аутсорсе, где ты работаешь за почасовую плату? Работа над продуктом – это большая ответственность, которую ты на себя берешь, и, значит, должен убедиться, что у тебя все и везде работает. Иначе, если ты не пытаешься двигать продукт вперед, ты становишься разбитым звеном цепи и о тебя спотыкаются все члены команды и продукт - в частности. От каждого члена команды зависит конечный успех продукта. Uber оценивается в $63 млрд. отчасти потому, что у нас работают лучшие люди в индустрии. Стоимость такого инженера очень высока. 

- Как относишься к фразе Тима Кука о том, что программировать должен уметь каждый?

Да, конечно. В Штатах уже ввели программирование в начальную школьную программу. Apple запустила обучающие программы по программированию для детей прямо на iPad. За последние несколько лет появились сотни бесплатных онлайн курсов по программированию для любых уровней подготовки. Это значит, что через 10 лет мы будем наблюдать поколение людей, которые будут уметь при приеме на работу кодировать и автоматизировать простейшие вещи. Это кардинально изменит требования приема на работу. Как на сегодняшний день владение компьютером и базовыми программами являются обязательными требованиями - так и программирование станет обязательным в будущем.

Все очень просто – если ваша работа имеет повторяющийся типовой характер, она будет полностью автоматизирована в течении следующих 10 лет с использованием продвинутые версии машинного обучения. Всего несколько примеров: агенты по поиску путешествий, банковские, экономические и бухгалтерские операции, некоторые функции продаж и приема оплаты, QA и т.д, будут автоматизированы на благо человека. Мы будем тратить меньше времени и сил на привычные затратные по времени действия. 

При этом ценность креативного труда вырастет очень сильно на этом фоне. Люди, способные что-то создавать своим умом и руками будут цениться еще выше.

Источник