Чему я научился через год в Twitter

1656574950 chemu ya nauchilsya cherez god v twitter

Год назад я присоединился к Twitter в качестве инженера-программиста в команде Ads Measurement после интервью со многими ведущими технологическими компаниями в регионе Сиэтла. Подробнее о моей истории можно прочитать здесь.

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

  • Команда поддержки, которая работает как единое целое
  • Баланс между работой и личной жизнью
  • Финансовая компенсация по рыночной стоимости
  • Компания поддерживает и предоставляет широкие возможности сотрудникам учиться и развиваться
  • Компания стремительно развивается

В то время у меня была привилегия выбирать из многих ведущих технологических компаний. Оценив все варианты и обсудив с друзьями и семьей, я решил присоединиться к Twitter.

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

ht74jO63bfPAKfFIuf6y0dkgZIOeq3Y-wBQi
GP0H8y7KE-zLnL90XbwpbQkgK1007E8R7rnr
r5EbDjXzvTp56P6OHgGeBwl-iFuzpMDGIN9u
ju0VeGo0WV7oZGF3jUe1P2As550wjR5mXhEW
-D1d8lNq3W-qejAflGOM7YzE5R6PMysNRJOq
qZR2RbCAteF8YPqcEvsXEgjsOvhkjSSmkAsX
zLibSCnDJeQe2e0ZkwociBaRnXTbkCKYykW8
1hbhDKLQPweO-P6YLefmASAKaTf98QELFDFt
xU8aT7D9bkf-bpnDg6I8--QDS4ZZZU3QXdok
rRPWph73pCjkZ1YbkTA1zv8NpgAx354-GHt7
huO38dL1epv725hqa2MtUL9f2VUbCP2odMhD
YJH0ROxqjs21aOxlejgukOF733ZtKqKl2SUS

Что я научился за прошлый год

Сильная инженерная культура обеспечивает совершенство

Как инженер, я воочию убедился, что Twitter имеет сильную инженерную культуру, которая побуждает инженеров удовлетворять не что иное, как совершенство. Twitter интенсивно сосредоточен на продвижении мышления о росте – настолько, что они рассылают книгу под названием Мышление в первый день работы нового найма. И поскольку мы – команда, работающая в Scala, есть также копия Scala для нетерпеливых 🙂

nplMVzer39duFc1fPYHtYeLIcxeNnkNBY8sl
K2wLf6QUiUMqRaCsG9itH8wDPbQWS3feB2Pm
Рекомендуем прочитать новым работникам

Кроме того, я также заметил некоторые ключевые области, где Twitter делает акцент на отличной инженерной культуре.

Двигайтесь быстро, ломайте вещи.

Однако есть оговорки с девизом — кто будет чинить сломанные вещи? При работе в Twitter я узнал, что культура быстрого движения должна сопровождаться соответствующими показателями и предупреждениями, которые помогут вам контролировать прогресс.

Исходя из опыта запуска, главным приоритетом была доставка вещей. Функции приносят деньги, качество кода нет. Однако многие инженеры-программисты скажут вам, что большинство затрат на разработку программного обеспечения приходится на долгосрочное обслуживание программного обеспечения. Компромисс между быстрой доставкой и качеством доставки часто является темой дискуссий.

Я узнал, что доставка с высокой скоростью – это нормально при условии, что существуют соответствующие показатели и стратегии для ограничения радиуса взрыва.

Вам могут помочь правильные оповещения и установленные показатели следить за здоровьем вашей функции и сообщить о решении «мне сохранить или удалить эту функцию?» Возможность ограничить радиус взрыва означает, что вы можете свободно экспериментировать с новыми функциями. изолировать сферу воздействия. Оба вместе действительно позволят вам «двигаться быстро и ломать вещи».

Процесс имеет решающее значение в большой команде

Процесс помогает достичь согласованности и позволяет новым инженерам быстро работать. В небольшом стартапе из 50-100 человек можно легко наставить и привлечь нового найма. Однако как только размер компании достигает определенного порога, становится трудно отслеживать вещи без стандартной процедуры. Кроме того, трудности обмена знаниями увеличиваются в геометрической прогрессии с большими группами людей.

Многие говорят о процессе как «бюрократии», «низкой производительности», «необходимом зле» и т.д. В известном смысле это правда. С другой стороны, я собственными глазами видел, как процессы формируют согласованность, уменьшают сложность и повышают производительность. Процессы – это рекомендации, а не правила и может обновляться по мере роста команды/компании.

PqXNG57MsNmlLP4YEQTEwoOCQpnGOouKlW0X
Типичный технический проект

К примеру, каждый новый проект сопровождается техническим проектным документом, определяющим цели, нецели, возможные решения, критерии успеха и потенциальные факторы риска.

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

Использование данных как показателя успеха позволяет нам быстро двигаться и/или возвращаться на случай, если что-то не получится.

Кроме того, у нас запланирована наша работа 2-недельные спринтыи мы имеем a ретроспективный в конце каждого спринта. Каждый спринт начинается со списка задач, имеющих приоритет в соответствии с доступностью ресурсов и срочностью. Затем мы помещаем эти задачи в электронную таблицу Google, которая затем заполняется как календарь. Я думаю, что он отлично работает для отслеживания задач, выявления узких мест и, главное, для выяснения, сможем ли мы выполнить все задания вовремя.

В конце каждого спринта у нас есть ретроспектива, где обсуждается, что прошло хорошо, а что можно было бы улучшить. Ретроспектива празднует победы и подчеркивает неудачи чтобы мы могли учиться у них, чтобы не делать тех же ошибок в будущем.

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

Безупречная культура

Twitter поощряет a безвинный среды, которая в дальнейшем способствует учиться на ошибках, а не искать недостатки. Ошибки случаются с лучшими из нас, и важно иметь здоровую культуру по поводу неудач.

Я не говорю, что мы должны просто простить и забыть. Скорее, мы должны энергично искать первопричину, чтобы мы можно исправить это в основе и предотвратить выстрел себе в ногу в будущем.

В этом интервью Уилл Смит сказал:

«Лучшие вещи в жизни находятся с другой стороны от страха».

Я считаю, что делать ошибки и рисковать имеют решающее значение для построения устойчивой быстроразвивающейся компании. Поэтому для меня, как инженера, очень важно, чтобы компания, в которой я работаю, позволяла мне это делать. И Twitter сделал именно это – поддержал меня, дав мне возможность рисковать, совершать ошибки и учиться на них.

За последний год у меня была своя доля неудач. Я справился с ними, придумав патологоанатомический анализ того, что пошло не так, почему это произошло, как это произошло и что можно было бы улучшить в следующий раз. Основное внимание здесь состоит в том, чтобы определить, что вызвало проблему, и какие барьеры мы можем поставить, чтобы предотвратить подобные ошибки.

Ориентация на качество приносит интерес

Как и любая другая технологическая компания, Twitter имеет технологический долг, скрывающийся за углом, просто ожидая, чтобы наброситься. Это как слон в комнате. сообщение это, но они решили игнорировать это. То есть до тех пор пока слон не поднимет свой массивный мощный хобот и не разбит партию.

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

Вместе с #CoreQuality, мы определили, что распространение знаний вокруг команды является критическим шагом к долгосрочной стабильности. Мы думали об этом, чтобы создать Т-образный график знаний:

TTILVu2f0tZQZVagD2bffj0yjkX0U9w6nETF
Т-образное знание

Т-образное знание состоит из 2 компонентов:

  • Широта, или что ты знаешь?
  • Глубина или «насколько хорошо вы это знаете?»

В какой-то момент мы поняли, что некоторые члены команды имеют глубокий опыт в определенной службе, но практически ничего не знают за пределами.

Это настолько распространено, что для него есть термин фактор шины. Это фактор риска количества членов команды, которые должны исчезнуть до остановки проекта из-за отсутствия опыта. Коэффициент шины, равный 1, также можно свободно понимать как единственную точку отказа, что означает, что если этот один ключевой эксперт исчезнет, ​​проект терпит неудачу.

HiIKarCaPMQKamRbpBEuCYb6nGM-3sjDq8IZ
Мое представление об автобусном факторе

Наша цель – устранить коэффициент шины 1 во всей команде. С этой целью мы начали несколько инициатив:

  1. Ежедневно вкладывайте 30 минут документации (благодаря портфолио с открытым кодом). Наш товарищ по команде Ленни предложил нам выработать привычку писать то, что мы изучаем в течение дня, по 30 минут за раз.
  2. Поощряйте технологичные коричневые сумки. Коричневая сумка – это, по сути, презентация на обед, где член команды делится своим опытом с остальной командой. Во время обеда мы обсудили Scalding, Summingbird и Hadoop Map-Reduce от наших местных экспертов. Это также отличная возможность изучить технологические стеки, о которых вы могли бы не знать иначе.
  3. Каждому спринту назначайте задачу вне компетенции. Каждому назначается разная задача для каждого спринта, что дает возможность изучить другой технологический стек или базу кода. Лично я считаю, что это очень эффективный способ распространения знаний, потому что иначе я бы не смог погрузиться в другую базу кода.

Команда намного важнее проекта

Люди, с которыми вы работаете каждый день, оказывают намного большее влияние на вашу карьеру, чем проект или компания.

Великолепная команда делает время просто терпимым, а время – волнующим.

Проекты приходят и уходят, но команды остаются вместе даже после того, как проект распущен или отправлен. Если вы проводите вместе восемь часов в день, не предпочли бы вы работать с людьми, которые вам нравятся?

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

6nLsZnNchU2RHHCuyrpSgIPlxExBkX6MLS-e
Ужин с международной командой Twitter Singapore+Japan!
5Kk9QKrZ0A2Q4Wlhml-3XblqB6IE05v0yKpH
Мой первый день в Twitter
8INlID42J2azo4VZYqqX6dWyFqNZqlemvAsn
Джек на сцене во время моего первого чаепития
rCnhPIOK0LuEuA88Bbl8BTW0MvkMVYXQCG2v
6yPmNNisuuz7gVBLyX4iEfD1WbY-9M8KhvRU
Твиттер и события

Лучшие люди обладают проблемами

Возможности возникают в опасных ситуациях, и тогда вы видите, как лучшие люди подходят к моменту и воспользуются им. Находясь в Twitter в разгар перемен, я дала редкую возможность бросить взгляд на некоторые из многих проблем в организации.

«Китайцы используют два мазка кисти, чтобы написать слово «кризис». Одно движение кисти означает опасность; другой за возможность». — Дж. Ф. Кеннеди

Лучшие люди, как правило, имеют проблемы, а не указывают на них. Они быстро вынюхивают проблемы раньше всех остальных, и всегда одними из первых добровольно решают их.

Twitter является очень маленькой компанией по масштабам и влиянию, которую она оказывает в мире. Благодаря небольшому размеру небольшим командам легко добиться большого влияния. Нередко можно увидеть, как команда из 10 человек управляет операцией, помогающей генерировать десятки миллионов долларов в год для компании.

В определенном смысле именно это делает работу в Twitter особенной: возможность владеть проблемами и исправлять их.

Как я упоминал ранее, одним из моих критериев выбора компании является то, что компания должна поддерживать и предоставлять широкие возможности учиться и развиваться сотрудникам. И я обнаружил, что для меня это действительно так. Взятие на себя решение проблем, даже выходящих за пределы моей зарплаты, позволяет мне бросить вызов и растянуться до пределов.

Было ли присоединение к Twitter правильным решением?

В конце концов это вопрос, который следует задать после годовой работы. Короче говоря, это определенное, решительное «да» — мне нравится команда, с которой я работаю, масштабы и влияние, которые у меня есть, возможности для роста и многое, многое другое. Опять же, вот контрольный список, который у меня был:

  • Команда поддержки, которая работает как единое целое
  • Баланс между работой и личной жизнью
  • Финансовая компенсация по рыночной стоимости
  • Компания поддерживает и предоставляет широкие возможности сотрудникам учиться и развиваться
  • Компания стремительно развивается

Баланс между работой и личной жизнью в Twitter во многом зависит от того, как вы работаете. Я часто работаю с 9 до 5 в будни, а иногда и в выходные просто потому, что хочу, а не потому, что нужно. Когда я работаю над функцией, которая мне очень нравится, это все равно не похоже на работу.

Мы также недавно начали запрещать встречи по вторникам и четвергам по всей организации, чтобы мы не были ограничены встречами и могли сосредоточиться на исполнении.

С точки зрения финансовой компенсации Twitter пытается действовать правильно с помощью своих сотрудников: обновление акций, конкурентоспособная зарплата, щедрые RSU, 401 тыс. и т.д. Это также способствует удержанию, поскольку Twitter почти втрое повысился с момента присоединения. Моя команда в Сиэтле по-прежнему принимает на работу!

ML8dgmhHFjLs1iSXsUarbT22t7vlDpjYXabl
Имидж кредит Yahoo! финансы

Чжиа Чонг – инженер-программист в Twitter в команде Ads Measurement. Все мнения являются его собственными и не выражают мнения или взгляды Twitter.

Вы можете найти его на LinkedIn и Twitter.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *