Как я работал в Силиконовой Долине
Расскажу немного про то, как работают в Силиконовой Долине.
Любопытнейшая деталь заключается в том, что сложно работать на два фронта. Речь идет не о двух работах, а о совмещении основной работы с чем-то.
Если ты работаешь на какую-либо компанию, а по вечерам приходишь и пилишь свой проект, то это будет видно. Если ты работаешь на компанию, а по вечерам у тебя только любовь, то это будет видно. Если ты работаешь на компанию, а по вечерам у тебя только семья, то это будет видно.
Другими словами, работать в Силиконовой Долине на какую-то компанию означает не только работать 40 часов в день на эту компанию. Это также еще и означает "работать" в свободное от работы время, "уделять" компании свое свободное время, иначе ничего не получится.
Это подтвердили много людей. Сегодня разговаривал со своим корешем, который работает в Убере (программистом) - все то же самое, что и у меня (небольшой - на 100 миллионов инвестиций - стартап). Надо вкладывать свое собственное время в то, что ты делаешь, иначе ты не будешь продвигаться. Приведу пример.
Работал я около полутра лет full stack разработчиком на рубях, но меня перевели в другую команду. Создали команду, на основе двух имеющихся - разработчики + devops (devops это, скажем так, системные администраторы, которые следят не за компьютерами, а за серверной инфраструктурой). Меня об этом не спросили, просто создали команду и перевели. И оказалось, что у меня не хватает знаний.
Т.е. devops это не то, чем я занимался каждый день, но то, чем мне нужно заниматься теперь каждый день. Я не в курсе каких-то особенностей создания AWS CloudFormation template, я всегда мог посмотреть документацию. Но тут нужно быть в курсе особенностей, нужно знать что такое AWS, основные сервисы, для чего они нужны и т.д.
Понятное дело, что этих знаний никто не дает, на тренинги не отправляют и не приплачивают. Подразумевается, что ты сам должен этому научиться. И возникает вопрос - а когда учиться? Когда учиться, если ты приходишь домой, а дома пилишь свой проект? Когда учиться, когда у тебя после работы свидание, а может быть семья? Как быть тем, кто просто после работы хочет отдыхать и ничего не делать (имеет право)?
Учиться чему-то на самой работе малореально. Дело в том, что днем у обычного программиста может быть от одного до нескольких митингов. Нет это не те митинги, на которых сажают в автозак и нежно гладят демократизатором по голове - я говорю про митинги на которых собирается несколько человек и что-то обсуждают. Обычный программист должен создать истории (stories), задачи над которыми он будет работать. Обычный программист должен делать ревью кода.
Правда в том, что код-ревью, создание историй и митинги не всплывают когда с вас спрашивают результат. Когда вам говорят "а что ты сделал?", ты не можешь сказать - был на митингах, код-ревью, истории. Это все не результат. Результат - это написанный код. Время для написания кода остается немного. Учтите еще то, что прежде чем написать - надо подумать. Сказать, что ты "думал" тоже можно, но это не будет результатом.
И получается, что не хватает времени заниматься непосредственно работой, но тебе нужно еще заниматься самообразованием, потому что в новой команде с тебя спрашивают что-то новое. Что-то за областью твоих знаний. Заниматься на работе получением знаний нельзя, значит что? Правильно, надо заниматься этим дома: по вечерам, в выходные.
И дай Бог, дорогие друзья, чтобы вам понравилось то, что вам нужно выучить по работе, чтобы это было в кайф. Если речь идет про AWS это еще куда ни шло (хотя я не большой любитель изучения исключительно проприетарных технологий). Но если, вдруг, речь зайдет про какого-нибудь франкенштейна, которого надо обуздать (см. stack overflow survey, most dreaded technologies), про какой-нибудь salesforce - то что делать в этом случае? Как ботать то, что тебе не в кайф?
Не в кайф можно заниматься непосредственно работой. В ней много рутины, тебе за это платят деньги. Но когда твоя некайфовая (или не очень кайфовая) работа говорит: "а вот извольте, сударь, в свободное время изучить вот это", то что делать?
И тут мы подходим к вопросу - а можно ли работать 40 часов в неделю и 1) ничего не делать 2) или пилить свой проект 3) или делать после работы любовь 4) или играть на гитаре 5) или учить то, что хочешь? Насколько программист в Силиконовой Долине может делать все это?
Оказывается, что если ты делаешь что-то, что не связано с твоей работой, то ты сильно себя ограничиваешь. Я раньше тоже думал, что пилить после работы свой проект это нормально и в порядке вещей. Но на практике все оказалось иначе. Если ты не посвящаешь себя _полностью_ проекту, включая свое свободное время, то наступают определенные риски:
1) Риск увольнения. Хорошо если ты не один, кто _не_ отдает себя полностью работе. А если один? Если ты один такой умник в команде, если ты один после работы смотришь телек, а не какой-нибудь курс по технологии, которая активно используется в команде, то ты отстающий. Рано или поздно задумаются насколько ты хорош. Возможно, что тебя уволят, а возможно нет. Балансировать на грани увольнения надо тоже уметь.
Правда, тут есть хорошая новость - пока вас уволят может пройти значительное время. Все-таки то, что вы не догоняете остальных выясняется не сразу. В зависимости от команды это может быть 3-6-12 месяцев. Если вас уволили после 1 года - то в этом ничего страшного нет, средний срок присутствия программиста на 1 месте в Долине все равно около 9 месяцев.
2) Риск непродвижения по служебной лестнице. Если вы нашли хорошее место и хотите остаться на работе больше года, то наверное вы хотели бы прибавки к вашей зарплате, новой должности и так далее. Но если вы не догоняете остальных, то вам этого не видать. Продвигают тех, кто дает результаты, кто (как тут говорят) kicking ass.
Когда результатов нет или они не особо значительные по сравнению с остальными, вы не только не продвигаетесь по службе, но и получаете риск увольнения, когда компания попадет в зону турбулентности (периодически в любой компании возникают встряски - американцы любят статистику и вообще привыкли держать руку на пульсе и выжимать максимум).
Так что, дорогие друзья, если вы хотите работать в больших конторах типа Гугла, если вы хотите достигать успехов в карьере в Силиконовых долинах, то нет другого способа: в личное время надо работать на контору.
Я пришел к этому выводу на практике - работал над LibreTaxi, ну и не хотелось мне ботать какие-то левые технологии. Ну и в итоге приотстал в тех технологиях, которые я особо не знал. Мои знания немного обновились, но работа требует больше знаний.
Плюс, хочешь ты этого или нет, чтобы доставлять результаты, в выходые и по вечерам придется работать на компанию - немножко, по чуть-чуть, но надо. Всегда возникают необходимость, даже если говорят, что у нас есть work/life balance. Конечно, когда я вижу что на выходных кто-то написал в корпоративный чат, я шлю ему лучики "добра", от всей души нах. Кто заставляет? Но вот такие энтузиасты задают тон.
Все это очень сильно еще умножается на коммьют в Долине. И тут возникают моменты, когда ты вспоминаешь слова Билла Гейтса: "Мир несправедлив. Прими это". У кого-то есть возможность снимать квартиру рядом с работой за 4+ тысячи долларов, у меня такой возможности нет. Кто-то может уделять время, которое ты проводишь в коммьюте работе на компанию, а кто-то не может.
В случае с Гуглом проблема коммьюта немного помягче: Google Bus подвезет вас до офиса. Ну и в специальном автобусе от гугла есть все, чтобы в нем работать. Но стартапы - это другое дело. Там особые ожидания, и автобусов они не предоставляют. Обычно они еще находятся в лютейших ебенях (простите за мой французский), от метро к ним нужно достаточно долго идти пешком.
Если соберетесь в Долину, имейте в виду, что "комфортно" себя чувствовать, доставлять результаты можно только тогда, когда вы работаете овертайм. В теории вы не должны этого делать, но практике приходится.
Любопытнейшая деталь заключается в том, что сложно работать на два фронта. Речь идет не о двух работах, а о совмещении основной работы с чем-то.
Если ты работаешь на какую-либо компанию, а по вечерам приходишь и пилишь свой проект, то это будет видно. Если ты работаешь на компанию, а по вечерам у тебя только любовь, то это будет видно. Если ты работаешь на компанию, а по вечерам у тебя только семья, то это будет видно.
Другими словами, работать в Силиконовой Долине на какую-то компанию означает не только работать 40 часов в день на эту компанию. Это также еще и означает "работать" в свободное от работы время, "уделять" компании свое свободное время, иначе ничего не получится.
Это подтвердили много людей. Сегодня разговаривал со своим корешем, который работает в Убере (программистом) - все то же самое, что и у меня (небольшой - на 100 миллионов инвестиций - стартап). Надо вкладывать свое собственное время в то, что ты делаешь, иначе ты не будешь продвигаться. Приведу пример.
Работал я около полутра лет full stack разработчиком на рубях, но меня перевели в другую команду. Создали команду, на основе двух имеющихся - разработчики + devops (devops это, скажем так, системные администраторы, которые следят не за компьютерами, а за серверной инфраструктурой). Меня об этом не спросили, просто создали команду и перевели. И оказалось, что у меня не хватает знаний.
Т.е. devops это не то, чем я занимался каждый день, но то, чем мне нужно заниматься теперь каждый день. Я не в курсе каких-то особенностей создания AWS CloudFormation template, я всегда мог посмотреть документацию. Но тут нужно быть в курсе особенностей, нужно знать что такое AWS, основные сервисы, для чего они нужны и т.д.
Понятное дело, что этих знаний никто не дает, на тренинги не отправляют и не приплачивают. Подразумевается, что ты сам должен этому научиться. И возникает вопрос - а когда учиться? Когда учиться, если ты приходишь домой, а дома пилишь свой проект? Когда учиться, когда у тебя после работы свидание, а может быть семья? Как быть тем, кто просто после работы хочет отдыхать и ничего не делать (имеет право)?
Учиться чему-то на самой работе малореально. Дело в том, что днем у обычного программиста может быть от одного до нескольких митингов. Нет это не те митинги, на которых сажают в автозак и нежно гладят демократизатором по голове - я говорю про митинги на которых собирается несколько человек и что-то обсуждают. Обычный программист должен создать истории (stories), задачи над которыми он будет работать. Обычный программист должен делать ревью кода.
Правда в том, что код-ревью, создание историй и митинги не всплывают когда с вас спрашивают результат. Когда вам говорят "а что ты сделал?", ты не можешь сказать - был на митингах, код-ревью, истории. Это все не результат. Результат - это написанный код. Время для написания кода остается немного. Учтите еще то, что прежде чем написать - надо подумать. Сказать, что ты "думал" тоже можно, но это не будет результатом.
И получается, что не хватает времени заниматься непосредственно работой, но тебе нужно еще заниматься самообразованием, потому что в новой команде с тебя спрашивают что-то новое. Что-то за областью твоих знаний. Заниматься на работе получением знаний нельзя, значит что? Правильно, надо заниматься этим дома: по вечерам, в выходные.
И дай Бог, дорогие друзья, чтобы вам понравилось то, что вам нужно выучить по работе, чтобы это было в кайф. Если речь идет про AWS это еще куда ни шло (хотя я не большой любитель изучения исключительно проприетарных технологий). Но если, вдруг, речь зайдет про какого-нибудь франкенштейна, которого надо обуздать (см. stack overflow survey, most dreaded technologies), про какой-нибудь salesforce - то что делать в этом случае? Как ботать то, что тебе не в кайф?
Не в кайф можно заниматься непосредственно работой. В ней много рутины, тебе за это платят деньги. Но когда твоя некайфовая (или не очень кайфовая) работа говорит: "а вот извольте, сударь, в свободное время изучить вот это", то что делать?
И тут мы подходим к вопросу - а можно ли работать 40 часов в неделю и 1) ничего не делать 2) или пилить свой проект 3) или делать после работы любовь 4) или играть на гитаре 5) или учить то, что хочешь? Насколько программист в Силиконовой Долине может делать все это?
Оказывается, что если ты делаешь что-то, что не связано с твоей работой, то ты сильно себя ограничиваешь. Я раньше тоже думал, что пилить после работы свой проект это нормально и в порядке вещей. Но на практике все оказалось иначе. Если ты не посвящаешь себя _полностью_ проекту, включая свое свободное время, то наступают определенные риски:
1) Риск увольнения. Хорошо если ты не один, кто _не_ отдает себя полностью работе. А если один? Если ты один такой умник в команде, если ты один после работы смотришь телек, а не какой-нибудь курс по технологии, которая активно используется в команде, то ты отстающий. Рано или поздно задумаются насколько ты хорош. Возможно, что тебя уволят, а возможно нет. Балансировать на грани увольнения надо тоже уметь.
Правда, тут есть хорошая новость - пока вас уволят может пройти значительное время. Все-таки то, что вы не догоняете остальных выясняется не сразу. В зависимости от команды это может быть 3-6-12 месяцев. Если вас уволили после 1 года - то в этом ничего страшного нет, средний срок присутствия программиста на 1 месте в Долине все равно около 9 месяцев.
2) Риск непродвижения по служебной лестнице. Если вы нашли хорошее место и хотите остаться на работе больше года, то наверное вы хотели бы прибавки к вашей зарплате, новой должности и так далее. Но если вы не догоняете остальных, то вам этого не видать. Продвигают тех, кто дает результаты, кто (как тут говорят) kicking ass.
Когда результатов нет или они не особо значительные по сравнению с остальными, вы не только не продвигаетесь по службе, но и получаете риск увольнения, когда компания попадет в зону турбулентности (периодически в любой компании возникают встряски - американцы любят статистику и вообще привыкли держать руку на пульсе и выжимать максимум).
Так что, дорогие друзья, если вы хотите работать в больших конторах типа Гугла, если вы хотите достигать успехов в карьере в Силиконовых долинах, то нет другого способа: в личное время надо работать на контору.
Я пришел к этому выводу на практике - работал над LibreTaxi, ну и не хотелось мне ботать какие-то левые технологии. Ну и в итоге приотстал в тех технологиях, которые я особо не знал. Мои знания немного обновились, но работа требует больше знаний.
Плюс, хочешь ты этого или нет, чтобы доставлять результаты, в выходые и по вечерам придется работать на компанию - немножко, по чуть-чуть, но надо. Всегда возникают необходимость, даже если говорят, что у нас есть work/life balance. Конечно, когда я вижу что на выходных кто-то написал в корпоративный чат, я шлю ему лучики "добра", от всей души нах. Кто заставляет? Но вот такие энтузиасты задают тон.
Все это очень сильно еще умножается на коммьют в Долине. И тут возникают моменты, когда ты вспоминаешь слова Билла Гейтса: "Мир несправедлив. Прими это". У кого-то есть возможность снимать квартиру рядом с работой за 4+ тысячи долларов, у меня такой возможности нет. Кто-то может уделять время, которое ты проводишь в коммьюте работе на компанию, а кто-то не может.
В случае с Гуглом проблема коммьюта немного помягче: Google Bus подвезет вас до офиса. Ну и в специальном автобусе от гугла есть все, чтобы в нем работать. Но стартапы - это другое дело. Там особые ожидания, и автобусов они не предоставляют. Обычно они еще находятся в лютейших ебенях (простите за мой французский), от метро к ним нужно достаточно долго идти пешком.
Если соберетесь в Долину, имейте в виду, что "комфортно" себя чувствовать, доставлять результаты можно только тогда, когда вы работаете овертайм. В теории вы не должны этого делать, но практике приходится.
1