😎 Хороший программист. Часть 3.
Это продолжение серии постов про хорошего программиста. Это последняя глава в этой серии.
⚾️ Учи концепции, а не технологии.
Сегодня ты выучишь TypeScript, а завтра весь мир пишет на Flow. Сегодня ты выучишь RabbtMQ, а завтра весь мир использует Kafka. Мир технологий очень скоротечный. Поэтому не зацикливайся на технологиях, а изучай концепции которые лежат в основе них. Поняв концепцию тебе легче будет освоить похожие технологии. Это как если ты умеешь писать на одном языке программирования, то ты автоматический умеешь писать и на других, так базовые концепции везде одни и те же (переменные, классы, функции и т.д.).
Как развить?
Сталкиваясь с новой технологией попытайся понять базовые ее принципы, чем вызвана такая потребность, сравнивай со схожими технологиями, подумай о плюсах и минусах подходов.
🎙Коммуницируй.
Я не смогу вам в полной мере объяснить насколько это важный пункт. 90% проблем в проектах можно было бы избежать если бы члены команды (хех члены) коммуницировали эффективно.
Любые непонятки, сомнения, несогласие, если это может повлиять на ход проекта, должны быть озвучены и обсуждены. Разумеется есть этикет коммуницирования, как это делать правильно, но это совсем другая история.
Как развить?
Изучи этикет коммуницирования, в каждой компании они разные (к примеру в Facebook нельзя назначать встречи в среду). Изучи общие практики правильных коммуникаций. Учись не боятся своего голоса и задавать вопросы на встречах с клиентом или командой.
💭 Постоянно учись.
Знаний никогда не бывает достаточно.
Как развить?
Все банально. Ставь цели и изучай то что поможет тебе там оказаться. Читай книги, делай сторонние проекты, бери курсы если надо.
⏰ Расставляй приоритеты.
Хороший программист умеет отличать важное от второстепенного. Написать технический дизайн проекта важнее чем рассуждать на чем его писать. Исправить баги на пути пользователя важнее чем добавлять новую фичу в настройки, куда пользователь никогда не заглядывает. Выспаться важнее чем, сидеть всю ночь над кодом с сонной головой, а весь следующий день ходить как зомби. Умение расставлять приоритеты сэкономит тебе кучу времени.
Как развить?
Попробуй представить разные ветки событий и попробуй трезво оценить какую пользу ты получишь по итогу каждого сценария. Представь это как кино, какая концовка тебе кажется логичной и правильной, по тому пути и иди.
Еще порой сильно помогает опыт. Ты натыкаешься на одну граблю и впредь поступаешь умнее.
😱 Решай проблемы.
Задача программиста не подружить PHP с GraphQL, а сделать так чтобы пользователь смог купить себе велосипед у вас на сайте. Если пользователь не может купить у вас велосипед на сайте, то он уйдет к другому продавцу, не важно как вы делаете запросы, через GraphQL или Ajax.
Как развить?
Решай проблемы клиента любыми доступными способами, и кошерными, и не кошерными если по другому никак. Иди самым очевидными и простым путем, потом оптимизируй.
#story
Это продолжение серии постов про хорошего программиста. Это последняя глава в этой серии.
⚾️ Учи концепции, а не технологии.
Сегодня ты выучишь TypeScript, а завтра весь мир пишет на Flow. Сегодня ты выучишь RabbtMQ, а завтра весь мир использует Kafka. Мир технологий очень скоротечный. Поэтому не зацикливайся на технологиях, а изучай концепции которые лежат в основе них. Поняв концепцию тебе легче будет освоить похожие технологии. Это как если ты умеешь писать на одном языке программирования, то ты автоматический умеешь писать и на других, так базовые концепции везде одни и те же (переменные, классы, функции и т.д.).
Как развить?
Сталкиваясь с новой технологией попытайся понять базовые ее принципы, чем вызвана такая потребность, сравнивай со схожими технологиями, подумай о плюсах и минусах подходов.
🎙Коммуницируй.
Я не смогу вам в полной мере объяснить насколько это важный пункт. 90% проблем в проектах можно было бы избежать если бы члены команды (хех члены) коммуницировали эффективно.
• До дедлайна осталось 2 недели, а фичи еще не готовы?! Коммуницируй! Расскажи об этом своему менеджеру, обсудите как это исправить. • На встрече ты не понял что сказал клиент?! Коммуницируй! Спроси что они имели ввиду, убедись что вы поняли друг друга. • Ты нашел код который надо поменять, но не уверен в правильности решения?! Коммуницируй! Найди чувака который написал этот кусок кода и поделись со своим мнением. Любые непонятки, сомнения, несогласие, если это может повлиять на ход проекта, должны быть озвучены и обсуждены. Разумеется есть этикет коммуницирования, как это делать правильно, но это совсем другая история.
Как развить?
Изучи этикет коммуницирования, в каждой компании они разные (к примеру в Facebook нельзя назначать встречи в среду). Изучи общие практики правильных коммуникаций. Учись не боятся своего голоса и задавать вопросы на встречах с клиентом или командой.
💭 Постоянно учись.
Знаний никогда не бывает достаточно.
Как развить?
Все банально. Ставь цели и изучай то что поможет тебе там оказаться. Читай книги, делай сторонние проекты, бери курсы если надо.
⏰ Расставляй приоритеты.
Хороший программист умеет отличать важное от второстепенного. Написать технический дизайн проекта важнее чем рассуждать на чем его писать. Исправить баги на пути пользователя важнее чем добавлять новую фичу в настройки, куда пользователь никогда не заглядывает. Выспаться важнее чем, сидеть всю ночь над кодом с сонной головой, а весь следующий день ходить как зомби. Умение расставлять приоритеты сэкономит тебе кучу времени.
Как развить?
Попробуй представить разные ветки событий и попробуй трезво оценить какую пользу ты получишь по итогу каждого сценария. Представь это как кино, какая концовка тебе кажется логичной и правильной, по тому пути и иди.
Еще порой сильно помогает опыт. Ты натыкаешься на одну граблю и впредь поступаешь умнее.
😱 Решай проблемы.
Задача программиста не подружить PHP с GraphQL, а сделать так чтобы пользователь смог купить себе велосипед у вас на сайте. Если пользователь не может купить у вас велосипед на сайте, то он уйдет к другому продавцу, не важно как вы делаете запросы, через GraphQL или Ajax.
Как развить?
Решай проблемы клиента любыми доступными способами, и кошерными, и не кошерными если по другому никак. Иди самым очевидными и простым путем, потом оптимизируй.
#story
👍1
💤 Я немного выпал из режима на неделю и не выкладывал ничего на канале. На работе проект запузырился, идет планирование, разбивка задач и всякое такое. Нет каких-то претензий, вникаю в проект, вроде все понятно, ничего космического. Но все равно есть ощущение что я не справлюсь и получу шапалақ от начальства, поэтому надо сфокусироваться на ближайшие полгода , оставить все эти ваши инстаграмы и твиттеры 🤓.
Встретился с местными казахами. Керемет адамдар. Молодые, умные и перспективные, не то что я 😆.
🛋 Потихоньку обустраиваем дом, чиним все что сломано, берем мебель, посуду, ищем детский сад для дочери, надо еще встать на учет в больницу.
⛅️ В Лондоне потеплело, солнце, много людей на улице. Сегодня должен выступить премьер (BoJo как его тут называют) и рассказать о дальнейших планах. Есть большая вероятность что частично снимут ограничительные меры.
🎙 Зарегался в гребанный Clubhouse. Прикольное место, пообщался с чуваком который делал eGov, пообщался с чуваком который делает файловое хранилище для Google. В реальной жизни я бы вряд ли с ними так душевно потрындел.
Думал сделать комнату для подписчиков, плюсаните в комментарии если вам этот формат интересен.
📈 Биткоин растет (будет рости и дальше). S&P 500 чет буксует, но это пока.
#lifestyle
Встретился с местными казахами. Керемет адамдар. Молодые, умные и перспективные, не то что я 😆.
🛋 Потихоньку обустраиваем дом, чиним все что сломано, берем мебель, посуду, ищем детский сад для дочери, надо еще встать на учет в больницу.
⛅️ В Лондоне потеплело, солнце, много людей на улице. Сегодня должен выступить премьер (BoJo как его тут называют) и рассказать о дальнейших планах. Есть большая вероятность что частично снимут ограничительные меры.
🎙 Зарегался в гребанный Clubhouse. Прикольное место, пообщался с чуваком который делал eGov, пообщался с чуваком который делает файловое хранилище для Google. В реальной жизни я бы вряд ли с ними так душевно потрындел.
Думал сделать комнату для подписчиков, плюсаните в комментарии если вам этот формат интересен.
📈 Биткоин растет (будет рости и дальше). S&P 500 чет буксует, но это пока.
#lifestyle
👍1
Решил сделать комнату в Clubhouse и пообщаться с подписчиками. Обсудим вопросы про процесс собеседования в FAANG.
Длительность будет 30-40 минут, чтобы не тратить много вашего времени.
🗓 Feb 26 (пятница)
📍Clubhouse
Детали по ссылке:
https://www.joinclubhouse.com/event/M6gydbRV
Длительность будет 30-40 минут, чтобы не тратить много вашего времени.
🗓 Feb 26 (пятница)
📍Clubhouse
Детали по ссылке:
https://www.joinclubhouse.com/event/M6gydbRV
Я застрял 😕
Почти месяц как я присоединился к команде. Первые пару недель были заняты планированием проекта, знакомство с командой и инструментами разработки.
Последние пару недель я работаю над моей частью кода и я застрял. Я в ступоре и не могу сдвинуться. Точнее я продвигаюсь, но блин чет очень медленно.
Что случилось? 🤷♂️
Дело в том что моя часть проекта заключается в том чтобы кастомизировать существующую компоненту которая написана на собственном внутреннем движке и которая такая сложная и огромная, что есть отдельная команда которая поддерживает эту компоненту.
Я должен придумать как интегрироваться, предложить идею коллегам, обсудить идею с разработчиками этой сторонней компоненты, закодить это все дело.
Так в чем проблема сделать это все? 🤯
• Я не сразу понял как интегрироваться, и изначально пошел не в ту степь. Изучая компоненту я недооценил насколько она сложная.
• Способ интеграции включает движок который используется внутри компании. А документации и примеров кот наплакал.
• У меня ушло кучу времени чтобы понять что это за движок, как она работает и как она может быть мне полезна.
• Эта компонента настолько огромная что я даже не знаю с какой стороны подступиться и топчусь вокруг да около.
• Дизайн и ТЗ кастомизации еще не утвержден и меняется каждый день.
• Удаленка и связанная с этим сложность коммуникаций.
• Я постоянно отвлекаюсь. Нужно вызвать сантехника, нужно собрать мебель, нужно уделить время семье чтобы жена не сошла с ума ухаживая за ребенком, дочь отравилось калбасой, надо везти ее в A&E(отделение неотложной помощи), нужно оформить договор с провайдером электричества, нужно выбрать и купить стол, а то я опять слягу с протрузией(проблемы с позвонком), дочь повредила палец, надо оказать неотложную помощь, нужно зарегать семью у GP, нужно отправить письмо в администрацию района, чтобы пересчитали муниципальный налог и многое-многое другого. И со всей этой шумихой очень трудно бывает сосредоточиться на проекте.
Что говорит менеджер? 🧭
Менеджер на мое удивление говорит что я пока вписываюсь в траекторию. Ожидается что за последующие пару недель я уже начну писать код и вносить вклад в проект, а через месяц уже буду самостоятельно решать все задачи. Поскольку я старший инженер ожидания эти максимально высокие.
Как это все исправить? 🪠
Нужен план.
• Начать разговор с разработчиками компоненты как можно скорее. Надо быть более решительным и проактивным.
• Изучить как работает этот движок. Поделать примеры.
• Побольше кодить и пробовать все на практике. Не надо ждать просветления. Нужно экспериментировать с разными подходами. Нужны короткие итерации.
• Не надо ждать утверждения дизайна.
• Снизить отвлекающие факторы.
• Отдать дочь в сад.
• Купить стол чтобы было удобнее работать
• Отложить несрочные бюрократические дела на пару недель.
• Срочные дела делать после обеда или даже вечером, уделить утро кодингу (это мое самое продуктивное время).
• Выкинуть все лишние встречи и звонки.
#career
Почти месяц как я присоединился к команде. Первые пару недель были заняты планированием проекта, знакомство с командой и инструментами разработки.
Последние пару недель я работаю над моей частью кода и я застрял. Я в ступоре и не могу сдвинуться. Точнее я продвигаюсь, но блин чет очень медленно.
Что случилось? 🤷♂️
Дело в том что моя часть проекта заключается в том чтобы кастомизировать существующую компоненту которая написана на собственном внутреннем движке и которая такая сложная и огромная, что есть отдельная команда которая поддерживает эту компоненту.
Я должен придумать как интегрироваться, предложить идею коллегам, обсудить идею с разработчиками этой сторонней компоненты, закодить это все дело.
Так в чем проблема сделать это все? 🤯
• Я не сразу понял как интегрироваться, и изначально пошел не в ту степь. Изучая компоненту я недооценил насколько она сложная.
• Способ интеграции включает движок который используется внутри компании. А документации и примеров кот наплакал.
• У меня ушло кучу времени чтобы понять что это за движок, как она работает и как она может быть мне полезна.
• Эта компонента настолько огромная что я даже не знаю с какой стороны подступиться и топчусь вокруг да около.
• Дизайн и ТЗ кастомизации еще не утвержден и меняется каждый день.
• Удаленка и связанная с этим сложность коммуникаций.
• Я постоянно отвлекаюсь. Нужно вызвать сантехника, нужно собрать мебель, нужно уделить время семье чтобы жена не сошла с ума ухаживая за ребенком, дочь отравилось калбасой, надо везти ее в A&E(отделение неотложной помощи), нужно оформить договор с провайдером электричества, нужно выбрать и купить стол, а то я опять слягу с протрузией(проблемы с позвонком), дочь повредила палец, надо оказать неотложную помощь, нужно зарегать семью у GP, нужно отправить письмо в администрацию района, чтобы пересчитали муниципальный налог и многое-многое другого. И со всей этой шумихой очень трудно бывает сосредоточиться на проекте.
Что говорит менеджер? 🧭
Менеджер на мое удивление говорит что я пока вписываюсь в траекторию. Ожидается что за последующие пару недель я уже начну писать код и вносить вклад в проект, а через месяц уже буду самостоятельно решать все задачи. Поскольку я старший инженер ожидания эти максимально высокие.
Как это все исправить? 🪠
Нужен план.
• Начать разговор с разработчиками компоненты как можно скорее. Надо быть более решительным и проактивным.
• Изучить как работает этот движок. Поделать примеры.
• Побольше кодить и пробовать все на практике. Не надо ждать просветления. Нужно экспериментировать с разными подходами. Нужны короткие итерации.
• Не надо ждать утверждения дизайна.
• Снизить отвлекающие факторы.
• Отдать дочь в сад.
• Купить стол чтобы было удобнее работать
• Отложить несрочные бюрократические дела на пару недель.
• Срочные дела делать после обеда или даже вечером, уделить утро кодингу (это мое самое продуктивное время).
• Выкинуть все лишние встречи и звонки.
#career
❤1👍1
👋 Сообщение для новых ребят которое задаются вопросами о чем этот канал.
О чем канал? 🤔
Тут я рассказывал в реальном времени о том как я готовился и проходил собеседования в крупные ИТ компании, в том числе и в FAANG (Facebook, Apple, Amazon, Netflix, Google и т.д.), также делюсь полезными советами. Изначально это был своеобразный дневник где я писал свой прогресс, чтобы мотивировать себя и друзей готовиться к собеседованиям.
Завел канал в Ноябре 2019 и еженедельно писал свой процесс подготовки и прохождения собеседований. Вы можете использовать эти хештеги чтобы найти посты по определенной тематике.
• #story - Истории о там как готовился и проходил собеседования.
• #interviewtip - Советы по тому как готовиться к собеседованиям.
• #resume #algo #systemdesign #behavioral - Советы по тематикам резюме, алгоритмов, System Design и Behavioural соответственно.
• #google #facebook #amazon #outtalent - Истории прохождения собеседований в компании.
Кто ты? 🛸
Я программист с опытом 6-7 лет. Долгое время жил, учился и работал в Алматы, Казахстан 🇰🇿. Пару лет назад меня пригласили в одну крупную ИТ компанию в Польше 🇵🇱 на позицию старшего разработчика и с 2019 по 2020 находился там. Женат, есть ребенок.
Учился я в обычной сельской школе и закончил казахстанский ВУЗ по специальности ВТиПО. Никогда не занимался ACM (спортивное программирование). До 2018 года я вообще не знал ничего про алгоритмы и начал активно это наверстывать.
За год подготовки я прокачался до того что летом 2019 попал на онсайт собеседование в Google, Zurich и завалил его. Тогда я понял что попасть в компанию как Google не так уж и сложно как я думал. И я поставил себе цель сделать это через год. Тогда родилось и название канала “Хочу в Google”.
Какой статус сейчас? 🧳
В августе 2020 я получил офер от компании Facebook, London 🇬🇧 на позицию Software Engineer. В конце ноября 2020 я с семьей переехал в Лондон и уже в начале декабря был мой первый рабочий день. В данный момент я работаю над одним из продуктов компании и прохожу испытательный срок, который длиться 6 месяцев и должен завершиться в конце Мая месяца.
Полезные ссылки 🔗
Я тут начал много писать про работу и личную жизнь и меньше про процесс подготовки к собеседованиям, так как я уже прошел собеседование. Но чтобы те ребята, которые хотят узнать больше про то как я готовился к собеседованиям, не скучали я накидал ссылки на ключевые статьи на канале.
Рассказывайте о канале своим знакомым. Делитесь своими мыслями насчет канала в комментариях.
#story
О чем канал? 🤔
Тут я рассказывал в реальном времени о том как я готовился и проходил собеседования в крупные ИТ компании, в том числе и в FAANG (Facebook, Apple, Amazon, Netflix, Google и т.д.), также делюсь полезными советами. Изначально это был своеобразный дневник где я писал свой прогресс, чтобы мотивировать себя и друзей готовиться к собеседованиям.
Завел канал в Ноябре 2019 и еженедельно писал свой процесс подготовки и прохождения собеседований. Вы можете использовать эти хештеги чтобы найти посты по определенной тематике.
• #story - Истории о там как готовился и проходил собеседования.
• #interviewtip - Советы по тому как готовиться к собеседованиям.
• #resume #algo #systemdesign #behavioral - Советы по тематикам резюме, алгоритмов, System Design и Behavioural соответственно.
• #google #facebook #amazon #outtalent - Истории прохождения собеседований в компании.
Кто ты? 🛸
Я программист с опытом 6-7 лет. Долгое время жил, учился и работал в Алматы, Казахстан 🇰🇿. Пару лет назад меня пригласили в одну крупную ИТ компанию в Польше 🇵🇱 на позицию старшего разработчика и с 2019 по 2020 находился там. Женат, есть ребенок.
Учился я в обычной сельской школе и закончил казахстанский ВУЗ по специальности ВТиПО. Никогда не занимался ACM (спортивное программирование). До 2018 года я вообще не знал ничего про алгоритмы и начал активно это наверстывать.
За год подготовки я прокачался до того что летом 2019 попал на онсайт собеседование в Google, Zurich и завалил его. Тогда я понял что попасть в компанию как Google не так уж и сложно как я думал. И я поставил себе цель сделать это через год. Тогда родилось и название канала “Хочу в Google”.
Какой статус сейчас? 🧳
В августе 2020 я получил офер от компании Facebook, London 🇬🇧 на позицию Software Engineer. В конце ноября 2020 я с семьей переехал в Лондон и уже в начале декабря был мой первый рабочий день. В данный момент я работаю над одним из продуктов компании и прохожу испытательный срок, который длиться 6 месяцев и должен завершиться в конце Мая месяца.
Полезные ссылки 🔗
Я тут начал много писать про работу и личную жизнь и меньше про процесс подготовки к собеседованиям, так как я уже прошел собеседование. Но чтобы те ребята, которые хотят узнать больше про то как я готовился к собеседованиям, не скучали я накидал ссылки на ключевые статьи на канале.
• Начало • Как попасть на собеседование в FAANG (Facebook, Apple, Amazon, Netflix, Google) и завалить его. • Как я готовился? Сколько ушло времени? • Какой я бы дал совет по подготовке по алгоритмам? • Как улучшить аккуратность и скорость кодинга. • 7 техник которые помогут тебе быстрее решать задачи • Как процесс собеседования выглядит в реальной жизни • Структура собеседования по Алгоритмам. (Знакомство, Задача) • Какие алгоритмы учить? • Какие темы учить для System Design? • Математика для программистов. • Много ссылок про System Design и API Design. • Что делать если отказали?Рассказывайте о канале своим знакомым. Делитесь своими мыслями насчет канала в комментариях.
#story
Telegram
Хочу в Google
В июне 2019 года я попал на онсайт интервью в офис компании Google в Цюрихе, Швейцария. Для того чтобы попасть на онсайт я прошел собеседование с рекрутом и техническое телефонное интервью, но к сожалению завалил техническое собеседование в офисе компании…
👍6❤2🔥1🥰1😁1
Хочу в Google pinned «👋 Сообщение для новых ребят которое задаются вопросами о чем этот канал. О чем канал? 🤔 Тут я рассказывал в реальном времени о том как я готовился и проходил собеседования в крупные ИТ компании, в том числе и в FAANG (Facebook, Apple, Amazon, Netflix, Google…»
💩 Чет я всех мотивирую и мотивирую, давайте я вам дам задачу которая заставит вас почувствовать себя тупым куском говна. Я думаю это отличный план для пятницы.
Это достаточно простая задача по программированию, но которую большинство программистов не могут написать с первого раза.
Хочешь себя испытать?! Бери компьютер 💻, заведи таймер ⏱ и вперед! Пиши время за которое ты решил в голосовании ниже, ты не одинок. Решение не гуглить!
🚨 Fizz Buzz
Задача называется Fizz Buzz (тут гуру программирования закатывают глаза 🙄).
Пример:
За сколько времени ты решил? Насколько было сложно, делись в комментарии.
#algo
Это достаточно простая задача по программированию, но которую большинство программистов не могут написать с первого раза.
Хочешь себя испытать?! Бери компьютер 💻, заведи таймер ⏱ и вперед! Пиши время за которое ты решил в голосовании ниже, ты не одинок. Решение не гуглить!
🚨 Fizz Buzz
Задача называется Fizz Buzz (тут гуру программирования закатывают глаза 🙄).
• Нужно написать программу которая распечатает цифры от 1 до 100 (уже интересно). • Если цифра делиться на 3 без остатка, то нужно вывести слово “Fizz” • Если цифра делиться на 5 без остатка, то нужно вывести слово “Buzz” • Соответственно если цифра делиться без остатка и на 3 и на 5, то нужно вывести слово “Fizz Buzz”Пример:
1, 2, Fizz, 4, Buzz, Fizz, 7, 8, Fizz, Buzz, 11, Fizz, 13, 14, Fizz Buzz, 16, 17, Fizz, 19, ...
За сколько времени ты решил? Насколько было сложно, делись в комментарии.
#algo
За сколько времени ты решил Fizz Buzz?
Anonymous Poll
62%
Менее чем за 5 минут 😎
14%
Около 10 миунт 😇
3%
20 минут 😥
4%
Да ну че так сложно 💩
17%
Если вы хотите получать пользу от программирования. никогда не программируйте!
3 совета чтобы не сойти с ума при подготовке к интервью.
Тут я собрал несколько простых советов которые помогут вам не впасть в депрессию или не забросить все пока вы готовитесь к собеседованию.
🗺 Сделай план
Чтобы эффективно готовиться к собеседованию нужен фокус, чтобы иметь фокус нужен план. Вот некоторые темы которые стоит включить в свой план:
Про мой план подготовки читай в закрепленном сообщении.
🏋️ Будь постоянным
Готовиться к собеседованию это как качать мышцы. Если ты сделаешь 1000 отжиманий за один день это не сделает тебя сильным. Лучше делать по 20 отжиманий каждый день, в течении нескольких месяцев, это вот точно даст результат. Некоторым вещам нужно время. Результат дает не сколько количество задач которые ты решаешь, а насколько постоянно ты это делаешь. Сделай план и придерживайся его.
🙂 Оставайся позитивным
Отказ это не конец света. Тебя не будут добавлять ни в какие черные списки. Завалить интервью в Facebook или Google это лучше чем никогда туда не подаваться.
Я получал 20 отказов за последние 2 года, 6 из них от FAANG, в том числе и от Facebook. Я не умер, член у меня не отсох, мама от меня не отказалась, жена меня не бросила, дочь меня все еще любит. В отказах ничего страшного нет, это мега опыт. А отказы будут и их будет много.
Что с этим делать? Оставайся позитивным! Улыбайся, радуйся жизни, гуляй с семей, вкусно кушай, высыпайся блэт, езди на природу, звони родителям.
И конечно пробуй снова и снова. Как я уже говорил, многие кто работают в FAANG попали туда не с первого раза. Я попал в Facebook только со второй попытки.
#interviewtip
Тут я собрал несколько простых советов которые помогут вам не впасть в депрессию или не забросить все пока вы готовитесь к собеседованию.
🗺 Сделай план
Чтобы эффективно готовиться к собеседованию нужен фокус, чтобы иметь фокус нужен план. Вот некоторые темы которые стоит включить в свой план:
• Как ты будешь готовиться? • Какие ресурсы ты будешь использовать? • Какие темы тебе надо покрыть? • Сколько времени уйдет на каждую тему? • Сколько часов в день ты будешь уделять этому времени? • Когда ты обновишь резюме? • На какие вакансии ты будешь откликаться? • Какие компании? Какой город? • Как ты будешь получать реферал? • Когда начнешь откликаться? • Когда получишь офер?Про мой план подготовки читай в закрепленном сообщении.
🏋️ Будь постоянным
Готовиться к собеседованию это как качать мышцы. Если ты сделаешь 1000 отжиманий за один день это не сделает тебя сильным. Лучше делать по 20 отжиманий каждый день, в течении нескольких месяцев, это вот точно даст результат. Некоторым вещам нужно время. Результат дает не сколько количество задач которые ты решаешь, а насколько постоянно ты это делаешь. Сделай план и придерживайся его.
🙂 Оставайся позитивным
Отказ это не конец света. Тебя не будут добавлять ни в какие черные списки. Завалить интервью в Facebook или Google это лучше чем никогда туда не подаваться.
Я получал 20 отказов за последние 2 года, 6 из них от FAANG, в том числе и от Facebook. Я не умер, член у меня не отсох, мама от меня не отказалась, жена меня не бросила, дочь меня все еще любит. В отказах ничего страшного нет, это мега опыт. А отказы будут и их будет много.
Что с этим делать? Оставайся позитивным! Улыбайся, радуйся жизни, гуляй с семей, вкусно кушай, высыпайся блэт, езди на природу, звони родителям.
И конечно пробуй снова и снова. Как я уже говорил, многие кто работают в FAANG попали туда не с первого раза. Я попал в Facebook только со второй попытки.
#interviewtip
👍2
💸 Про деньги
Давайте поговорим о деньгах. Я расскажу сколько старший разработчик (E5) получает в Facebook.
Разумеется я не буду рассказывать сколько получаю я, так как это конфидециальная информация, и если я это раскрою меня подвесят за яйца. Поэтому я буду использовать открытые данные с сайта levels.fyi. Я все буду считать в фунтах.
👤 Пример
Скажем есть человек уровня E5, 5 лет опыта в индустрии, full stack, который только что присоединился к компании (смотрите картинку). Это примерно мой статус в момент присоединения к компании.
Судя по данным levels.fyi, такой человек будет получать:
Итог (Total Compensation): £169K (в год)
😭 Налоги
Налоги в Британии это боль. Это примерно съест 30-40% вашего дохода. Тут умные люди скажут что в Британии действует прогрессивный налог бла-бла.
£169K - налоги= £101K чистого дохода, то что ты получишь на свою банковскую карту. Это около 59 🍋 тенге в год. Это примерно 2.2 автомобилей Tesla в год? ХЗ.
Разумеется никто не даст тебе £101K сразу, так как акции даются каждые 2-3 месяца, а бонусы раз в 6 месяцев. Поэтому в основном ты будешь жить на базовый оклад. От наших £94K базового оклада мы вычитаем налоги и получаем £63K базовый оклад который ты получишь за год на свою банковскую карту. Это примерно £5200 в месяц.
Итог: £5200 на ежемесячные расходы, остальное это бонусы и акции которые ты можешь откладывать.
🏡 Жизнь
И вот так мы потратили весь наш базовый доход в £5200.
∑ Итог
Насколько этот пример точный? Я бы сказал что настоящий разработчик получает немного больше. Скажем что это нижняя планка. Но надеюсь это даст вам примерное понимание доходов и расходов разработчика в Британии.
#career
Давайте поговорим о деньгах. Я расскажу сколько старший разработчик (E5) получает в Facebook.
Разумеется я не буду рассказывать сколько получаю я, так как это конфидециальная информация, и если я это раскрою меня подвесят за яйца. Поэтому я буду использовать открытые данные с сайта levels.fyi. Я все буду считать в фунтах.
👤 Пример
Скажем есть человек уровня E5, 5 лет опыта в индустрии, full stack, который только что присоединился к компании (смотрите картинку). Это примерно мой статус в момент присоединения к компании.
Судя по данным levels.fyi, такой человек будет получать:
• Базовый оклад: $130K (в год), в фунтах около £94K. • Акции: $65K (в год), в фунтах около £47K. • Бонусы: $20K (в год), в фунтах около £14K, это обычно около 15% от базового оклада. • Еще можно выпросить sign in bonus, за присоединение к компании. Это будет еще около $20K, в фунтах около £14K.Итог (Total Compensation): £169K (в год)
😭 Налоги
Налоги в Британии это боль. Это примерно съест 30-40% вашего дохода. Тут умные люди скажут что в Британии действует прогрессивный налог бла-бла.
£169K - налоги= £101K чистого дохода, то что ты получишь на свою банковскую карту. Это около 59 🍋 тенге в год. Это примерно 2.2 автомобилей Tesla в год? ХЗ.
Разумеется никто не даст тебе £101K сразу, так как акции даются каждые 2-3 месяца, а бонусы раз в 6 месяцев. Поэтому в основном ты будешь жить на базовый оклад. От наших £94K базового оклада мы вычитаем налоги и получаем £63K базовый оклад который ты получишь за год на свою банковскую карту. Это примерно £5200 в месяц.
Итог: £5200 на ежемесячные расходы, остальное это бонусы и акции которые ты можешь откладывать.
🏡 Жизнь
• Скорее всего ты будешь снимать квартиру за £2000. • Комуслуги + муниципальный налог около £300. • Детский сад ребенку бесплатный от 3 лет, но скажем ребенку еще 2 года, отдадим его на пол дня, это примерно £1000. • Еда + карманные расходы это около £900. • Отложим оставшиеся £700 в акции или ETF, на резервный счет отложим £300. Если не отдавать детей в сад, можно сэкономить больше. И вот так мы потратили весь наш базовый доход в £5200.
∑ Итог
Насколько этот пример точный? Я бы сказал что настоящий разработчик получает немного больше. Скажем что это нижняя планка. Но надеюсь это даст вам примерное понимание доходов и расходов разработчика в Британии.
#career
👍2
🔍 Куда пропал?
Я немного выпал из реальности, мы запускали новую фичу и я был сильно занят на проекте последние несколько недель. Сейчас фича работает в бета режиме и мы допиливаем его для GA (General Availability).
В Англии длинные выходные. Я потихоньку отхожу от запуска проекта, отдыхаю и провожу время с семьей.
🪜 Про уровни и ожидания
Сегодня хочу немного рассказать про карьеру в ИТ, про то что от вас будут ожидать на разных уровнях на примере Facebook. Это отчасти напоминание для меня самого.
🐣 E3 (Junior Engineer)
🐓 E4 (Middle Engineer)
🍗 E5 (Senior Engineer)
Кажется что всего много, но не обязательно достигать всего и сразу. Но ожидается что ты будешь делать большинство того что здесь написано после того как освоишься в команде. Что касается E6+, я пока писать не буду так как для меня это темный лес. Думаю что если ты сможешь достичь уровня E5 и покрыть все ожидания то это уже будет огромным достижением в карьере.
#career
Я немного выпал из реальности, мы запускали новую фичу и я был сильно занят на проекте последние несколько недель. Сейчас фича работает в бета режиме и мы допиливаем его для GA (General Availability).
В Англии длинные выходные. Я потихоньку отхожу от запуска проекта, отдыхаю и провожу время с семьей.
🪜 Про уровни и ожидания
Сегодня хочу немного рассказать про карьеру в ИТ, про то что от вас будут ожидать на разных уровнях на примере Facebook. Это отчасти напоминание для меня самого.
🐣 E3 (Junior Engineer)
• Быстро учишься и быстро осваиваешь технологии используемые в проекте, понимаешь кодовую базу. • Работаешь над задачами самостоятельно с минимальной помощью. • Решаешь все более сложные задачи, умеешь находить проблемы и предлагать улучшения. • Работаешь и коммуницируешь с более старшими инженерами в команде и со своим менеджером. • Пишешь качественный код, покрываешь его тестами, используешь технологии к месту. • Хорошо воспринимаешь обратную связь и умеешь с ней работать. • Ожидается что ты вырастешь до E4 в течении 1-2 лет.🐓 E4 (Middle Engineer)
• Умеешь все что у умеет E3. • Работаешь над целыми фичами, средними или большими, самостоятельно и без особой помощи. • Умеешь управлять своим временем и расставлять приоритеты. • Толкаешь изменения и доводишь их до конца. • Хорошо знаком с внутренними процессами, как пушиться код, как выкатываются фичи и т.д. • Умеешь общаться и работать с другими командами. • Ожидается что ты вырастешь до E5 в течении 2-3 лет.🍗 E5 (Senior Engineer)
• Умеешь все что у умеет E4. • Владеешь какой то частью проекта полностью, и знаешь как она работает от корки до корки. • Закрываешь очень большие и сложные проекты. • Определяешь объем работ, ставишь задачи, расставляешь приоритеты. • Показываешь высокий уровень продуктивности, даже работая над несколькими проектами. • Находишь проблемы и решаешь их без какой либо помощи. • Улучаешь проект для быстрой и эффективной разработки, оптимизируешь процессы. • Помогаешь коллегам решать проблемы и ускоряешь их работу. • Умеешь управлять небольшой командой • Работаешь с другими командами и строишь хорошие отношения с ними. • Умеешь распределять задачи даже за пределами своей команды. • Самостоятельно развиваешься и улучшаешь свои навыки. • Активно просишь обратной связи и пытаешься узнать как можно стать лучше. • Умеешь давать конструктивную и полезную обратную связь коллегам. Помогаешь коллегам расти и становиться лучше. • Привлекаешь новых ребят в команду, менторишь младших коллег, проводишь собеседования. Кажется что всего много, но не обязательно достигать всего и сразу. Но ожидается что ты будешь делать большинство того что здесь написано после того как освоишься в команде. Что касается E6+, я пока писать не буду так как для меня это темный лес. Думаю что если ты сможешь достичь уровня E5 и покрыть все ожидания то это уже будет огромным достижением в карьере.
#career
👍1
Культура Facebook 🧐
Уже несколько ребят меня спрашивали насчет культуры в Facebook, в чем основное отличие от других компаний. Тут я попытаюсь об этом немного рассказать. Тут не все особенности компании, а те что я смог вспомнить на свою сонную голову.
Инженеры решаются все 🔧
Во многих компаниях основным двигателем прогресса являются всякие менеджеры, Product Manager, Project Manager, и т.д. В Facebook очень большой авторитет имеет слово инженера, и порой последнее слово делать или не делать стоит именно за инженерами. В этом случае менеджеры лишь помогают приоритизировать какие-то вещи в зависимости от нужд продукта или результатов исследований, или помогают в эскалации проблем и нахождении правильных людей.
Это налагает и колоссальную ответственность, так как ты как инженер участвуешь от планирования и дизайна, до релиза и обратной связи. Также ожидается что ты будешь двигать видение продукта в будущем, как и куда он будет развиваться в ближайшие полгода.
Тут нет начальника который будет говорить делай это или то, 99% времени у тебя будут спрашивать чем ты хочешь заниматься и какие у тебя планы.
Нет четких границ 🚧
В Facebook нет понятия мой код или твой код, мой проект, твой проект. Одновременно один код могут менять или один проект могут делать десятки команд и обязанности могут меняться и перетекать друг в друга. Раз в месяц или неделю ты меняешь код который видишь в первый раз.
Конечно же есть понятие oncall, люди которые присматривают за кодом, но не факт что они его знают хорошо, но они могут помочь с code review.
Коммуникации это все 🎙
Из за того что нет четких границ, тебе приходиться постоянно коммуницировать, знакомиться, общаться, задавать вопросы, просить посмотреть твой коммит, писать в группу чтобы найти решение бага, искать людей которые раньше делали стриминг видео и узнать почему они не доделали ту фичу.
Нужно вовлекаться, строить хорошие отношения с другой командой, спрашивать как дела, шутить, отправлять им GIFки, вместе праздновать релиз и отправлять им хорошие отзывы за то что помогли доделать проект.
Ты не можешь молча сидеть в своем коконе. Так ты никогда не доделаешь свой проект или будешь делать его очень долго.
Impact, Impact и еще раз Impact 💪
То что делаешь должно приносить Impact (влияние, позитивное изменение). Если ты делаешь то что никому ненужно, то у тебя нечего будет добавить в свой полугодовой отчет и в итоге тебя выпнут из компании. Это может быть все что угодно, новая фича, оптимизация процессов, фикс бага, написание тестов или добавление аналитики и многое многое другое. Главное чтобы это облегчало жизнь клиентам или команде. Поэтому очень важно держать руку на пульсе, то что важно сейчас завтра может быть уже никому не нужно.
Не надо заниматься одной задачей. Имей несколько задач, проектов. Если один проект провалиться, ты всегда сможешь сослаться на второй. Но в тоже время больше проектов это больше риска и больше нагрузки. Поэтому нужно искать свой баланс.
#career
Уже несколько ребят меня спрашивали насчет культуры в Facebook, в чем основное отличие от других компаний. Тут я попытаюсь об этом немного рассказать. Тут не все особенности компании, а те что я смог вспомнить на свою сонную голову.
Инженеры решаются все 🔧
Во многих компаниях основным двигателем прогресса являются всякие менеджеры, Product Manager, Project Manager, и т.д. В Facebook очень большой авторитет имеет слово инженера, и порой последнее слово делать или не делать стоит именно за инженерами. В этом случае менеджеры лишь помогают приоритизировать какие-то вещи в зависимости от нужд продукта или результатов исследований, или помогают в эскалации проблем и нахождении правильных людей.
Это налагает и колоссальную ответственность, так как ты как инженер участвуешь от планирования и дизайна, до релиза и обратной связи. Также ожидается что ты будешь двигать видение продукта в будущем, как и куда он будет развиваться в ближайшие полгода.
Тут нет начальника который будет говорить делай это или то, 99% времени у тебя будут спрашивать чем ты хочешь заниматься и какие у тебя планы.
Нет четких границ 🚧
В Facebook нет понятия мой код или твой код, мой проект, твой проект. Одновременно один код могут менять или один проект могут делать десятки команд и обязанности могут меняться и перетекать друг в друга. Раз в месяц или неделю ты меняешь код который видишь в первый раз.
Конечно же есть понятие oncall, люди которые присматривают за кодом, но не факт что они его знают хорошо, но они могут помочь с code review.
Коммуникации это все 🎙
Из за того что нет четких границ, тебе приходиться постоянно коммуницировать, знакомиться, общаться, задавать вопросы, просить посмотреть твой коммит, писать в группу чтобы найти решение бага, искать людей которые раньше делали стриминг видео и узнать почему они не доделали ту фичу.
Нужно вовлекаться, строить хорошие отношения с другой командой, спрашивать как дела, шутить, отправлять им GIFки, вместе праздновать релиз и отправлять им хорошие отзывы за то что помогли доделать проект.
Ты не можешь молча сидеть в своем коконе. Так ты никогда не доделаешь свой проект или будешь делать его очень долго.
Impact, Impact и еще раз Impact 💪
То что делаешь должно приносить Impact (влияние, позитивное изменение). Если ты делаешь то что никому ненужно, то у тебя нечего будет добавить в свой полугодовой отчет и в итоге тебя выпнут из компании. Это может быть все что угодно, новая фича, оптимизация процессов, фикс бага, написание тестов или добавление аналитики и многое многое другое. Главное чтобы это облегчало жизнь клиентам или команде. Поэтому очень важно держать руку на пульсе, то что важно сейчас завтра может быть уже никому не нужно.
Не надо заниматься одной задачей. Имей несколько задач, проектов. Если один проект провалиться, ты всегда сможешь сослаться на второй. Но в тоже время больше проектов это больше риска и больше нагрузки. Поэтому нужно искать свой баланс.
#career
👍1
Я наконец дорос чтобы работать над собственным проектам в рамках Facebook. Приходиться работать на нескольких кодовых базах и стараться ничего не сломать. Это очень сложно 😩.
Нашли мне ментора. Он учит меня как быть настоящим ФБшником, дает советы на тему как коммуницировать и как вести проекты. Это очень полезно 🤓.
На следующий неделе заканчивается мой испытательный срок. Менеджер говорит что я молодец. Коллеги говорят что я молодец. Походу меня не собираются увольнять. Это очень хорошо 😊.
Стал редко писать в канал…
О чем еще рассказать? Покидайте свои вопросы или идеи в комменты, что вам интересно?
#career
Нашли мне ментора. Он учит меня как быть настоящим ФБшником, дает советы на тему как коммуницировать и как вести проекты. Это очень полезно 🤓.
На следующий неделе заканчивается мой испытательный срок. Менеджер говорит что я молодец. Коллеги говорят что я молодец. Походу меня не собираются увольнять. Это очень хорошо 😊.
Стал редко писать в канал…
О чем еще рассказать? Покидайте свои вопросы или идеи в комменты, что вам интересно?
#career
👍1
Сложно ли работать в Facebook и как я прошел испытательный срок 💪
В четверг я получил официальное письмо от главы HR в Facebook о том что я молодец и прошел испытательный срок в компании. Испытательный срок длится 6 месяцев и считается с первого дня работы.
По статистике это не сложно, большинство проходят. Во многом я делал то что делал и в других компаниях и не испытывал сверх сложностей. Трудно было в первые месяцы когда я плохо знал проект. Иногда сидел допоздна полируя свой код и изучая проект. Дальше легче. Что надо чтобы пройти испытательный срок:
Будь хорошим парнем. Good guy. Чтобы когда кто то спросил “What do you think about Vasya?”, твой коллега сказал “Vasya? He is Good guy!”. 😊
#career
В четверг я получил официальное письмо от главы HR в Facebook о том что я молодец и прошел испытательный срок в компании. Испытательный срок длится 6 месяцев и считается с первого дня работы.
По статистике это не сложно, большинство проходят. Во многом я делал то что делал и в других компаниях и не испытывал сверх сложностей. Трудно было в первые месяцы когда я плохо знал проект. Иногда сидел допоздна полируя свой код и изучая проект. Дальше легче. Что надо чтобы пройти испытательный срок:
• Построй хорошие отношения со своим менеджером. Общаться, шутить, задавать вопросы и не быть мудаком. • Построй хорошие отношения с командой. Абсолютно то же самое. Общаться, шутить, задавать вопросы и не быть мудаком. • Потрать первую неделю на 1:1 (звонки один на один.) с коллегами. Это может быть кто угодно инженеры, менеджеры, маркетологи, тестеры и т.д. Познакомься со всеми и узнай кто что делает и как вы можете быть полезны друг другу. • Спроси своих менеджеров в чем цель проекта и какие есть ожидания от тебя. Это поможет держать фокус и ставить приоритеты. • Потрать хорошую часть времени на изучение инструментов (в нашем случае это React, Hack и всякое такое). Почитай документы, изучи базовые концепты. • Начать с малого. Не надо прыгать сразу на большие задачи. Начни с мелких багов, это поможет понять проект и узнать как он работает. Если это мелкий баг который доставляет большие неудобства, то это еще лучше. Нужны маленькие и быстрые победы чтобы заработать доверие команды. • Хорошо коммуницируй (сделаю еще отдельный пост про ведение проектов). Если застрял, то спрашивай помощи. Если проект тормозит, сообщи команде, уточни причины. Короч убедись в том что команда знает над чем ты работаешь и когда ты закончишь. Не бойся общаться. • Участвуй в обсуждениях команды и предлагай идеи. • Будь инициативным. Если коллеге нужна помощь по проекту, проект перспективный и у тебя есть время на это, то предложи помощь. Если есть вещи которые помогут ускорить работу команды и ты знаешь как быстро это сделать, то сделай. К примеру починить сломанные тесты, сделать документацию проекта, добавить логирование ошибок, создать группу для обсуждения проекта и т.д. • Помоги коллегам. • Спрашивай обратную связь. На 1:1 встречах спроси что о тебе думают коллеги и над чем тебе стоит поработать. Применяй их советы. • ABC (always be closing). Закрывай задачи. Если берёшься за задачу то будь уверен что ты его закроешь. Не бери задачи которые выше твоих возможностей, у тебя еще будет время поработать над сложными задачами. Если ты не можешь закрыть задачу, то спрашивай помощи и коммуницируй статусы. Короч ты должен закрыть большинство проектов за которые ты берешься. • Сфокусируйся на Engineering Impact (влияние как инженера ). Как инженер тебе должно быть важно прежде всего хорошее качество твоего кода и чтобы этот код решал какую либо важную проблему, без багов и костылей. Постарайся производить хороший код и как можно чаще. Все остальное идет после этого. Я делал примерно 20 коммитов в месяц. Будь хорошим парнем. Good guy. Чтобы когда кто то спросил “What do you think about Vasya?”, твой коллега сказал “Vasya? He is Good guy!”. 😊
#career
👍1
1 коммит за месяц ☝️
Прошел почти месяц как я работаю над самостоятельным проектом в рамках Facebook и за этот месяц я сделал всего 1 коммит. Один жалкий коммит. Ладно, вру, этот коммит был очень важным и фиксил баг который ломал UI. Но все же 1 коммит в месяц это очень мало. Для контекста, мои коллеги и я делали в среднем 20 коммитов в прошлые месяцы. Плюс к этому проект я еще не доставил до пользователей и я до сих пор пытаюсь закоммитить остаток своего кода в репозитории.
Об этом на еженедельном 1:1 упомянул мой менеджер. Сказал что это может стать проблемой.
Почему это проблема? 🤔
Не поймите меня неправильно, Facebook не считает количество коммитов и это далеко не показатель продуктивности. Никто не будет считать твои коммиты до тех пор покаты позитивно влияешь на развитие проекта. Но когда целый месяц ты пилишь одну фичу и сделал только 1 коммит, это как минимум странно.
Что пошло не так? 🤷♂️
Изначально я оценивал проект 2.5 недель. Сейчас заканчивается уже 4 неделя.
Параллельно произошло еще кучу штук. Мы с женой оформляли визу для приезда родителей в Лондон, потом они приехали и мы провели некоторые время с ними. Потом была запланированная поездка в Брайтон. После заболела дочь и лихорадила неделю. Короч все было сумбурно.
И вот мы тут.
#career
Прошел почти месяц как я работаю над самостоятельным проектом в рамках Facebook и за этот месяц я сделал всего 1 коммит. Один жалкий коммит. Ладно, вру, этот коммит был очень важным и фиксил баг который ломал UI. Но все же 1 коммит в месяц это очень мало. Для контекста, мои коллеги и я делали в среднем 20 коммитов в прошлые месяцы. Плюс к этому проект я еще не доставил до пользователей и я до сих пор пытаюсь закоммитить остаток своего кода в репозитории.
Об этом на еженедельном 1:1 упомянул мой менеджер. Сказал что это может стать проблемой.
Почему это проблема? 🤔
Не поймите меня неправильно, Facebook не считает количество коммитов и это далеко не показатель продуктивности. Никто не будет считать твои коммиты до тех пор покаты позитивно влияешь на развитие проекта. Но когда целый месяц ты пилишь одну фичу и сделал только 1 коммит, это как минимум странно.
Что пошло не так? 🤷♂️
Изначально я оценивал проект 2.5 недель. Сейчас заканчивается уже 4 неделя.
• 1 неделя: Начинаю определять рамки проекта, общаюсь с дизайнером и с коллегами, думаю над техническим решением. Начинаю работать над POC (proof of concept). Делаю технический документ, где описываю проблему и пути решения. • 2 неделя: Показываю свой POC бэкенда коллегам, POC для фронта еще не готов. Говорят что решение интересное, но это может вызвать технические проблемы, так как компонент который я меняю используется в 3 других проектах, где мое решение не применимо и я могу их поломать. Ухожу в технические дебри и пытаюсь понять чем эти проекты отличаются и что я могу сломать. В какой то момент понимаю что работы на бэкенде очень много и если я буду пытаться решить эту проблему то потрачу слишком много времени. Принимаю решение забить на бэкенд, и не пытаться сделать так чтобы мое решение работало на всех платформах, а хотя бы на одном. Для этого мне достаточно изменения на фронте и уже существующих API. Параллельно меня затягивают в эскалацию проблемы связанной с одним из наших клиентов. Приходиться сделать мини исследование чтобы понять кто еще столкнулся с такой же проблемой и сколько времени займет фикс. • 3 неделя: Делаю решение для фронта и для одной платформы. Показываю решение коллегам. Получаю комментарии от Web Core команды Facebook, мол я добавил новый ленивый запрос (а их там и так дофига уже), говорят это будет снижать эффективность кода, просят переделать. Коллеги пишут комментарии, я меняю код еще несколько раз. Один из старших разработчиков отвечает очень медленно, я постоянно его пинаю чтобы получить комментарии. Все идет очень медленно. Параллельно нахожу баг в компоненте которую я меняю, делаю фикс (тот самый 1 коммит). • 4 неделя: Беру 2 отпуска чтобы провести время с родителями которые приехали в гости. После возвращения на работу мне приходит письмо что мой коммит сломал продукт. Мляя... Пытаюсь найти фикс, пишу коллегам, все заняты и никто не отвечает. Поднимаю проблему на встрече, мне говорят что похожая проблема уже была. Ищу этот коммит, нашел, применил, починил. Мне пишет менеджер и говорит что я сделал всего один коммит и спрашивает в чем проблема и чем он может помочь. Я прошу его пнуть коллег чтобы те дали комментарии к коду. Через час получаю добро на свои изменения. Начинаю пушить. Пятница. Мля… Нужно подождать до понедельника чтобы запушить все остальное. Параллельно произошло еще кучу штук. Мы с женой оформляли визу для приезда родителей в Лондон, потом они приехали и мы провели некоторые время с ними. Потом была запланированная поездка в Брайтон. После заболела дочь и лихорадила неделю. Короч все было сумбурно.
И вот мы тут.
#career
❤3
Что я сделал неправильно? ❌
Какой план?
#career
• Неправильно оценил проект, не сколько по срокам, а сколько по объемам. Я пытался решит намного большую задачу и это потребовало бы больше времени. В итоге мне пришлось сократить масштаб проекта. В проекте было очень много подводных камней которые я не знал. • Слишком поздно осознал объем работ и много времени потратил на то чтобы сделать бэкенд. Мне стоило итерировать быстрее. • Слишком глубоко ушел в один проект и перестал работать над другими задачами. • Когда коллеги не отвечали, слишком долго ждал прежде чем начать эскалацию проблемы. Мне стоило попросить менеджера помочь мне. Какой план?
• Запушить остатки кода и отправить проект на тестирование. • Отсутсвие коммитов это проблема. Но я же потратил это время не впустую, а для того чтобы понять структуру проекта и определить проблему. И у меня есть технический документ который это описывает. Нужно доделать этот документ и довести его до ума. Он будет мои козырем при выпадах во время PSC(оценка продуктивности сотрудников). • Найти несколько мелких проблем, которые я могу быстро решить и добавить себе очков в копилку. К примеру я могу добавить логирование в свой проект и сделать потом аналитику насколько мой проект помог ускорить загрузку продута. • Ничего не сломать, а то это все может затянуться. • У меня 2 недели на все. На носу PSC.#career
❤1
Мини опрос пока я пилю следующий пост. Как вы относитесь к вакцинации?
Anonymous Poll
37%
Уже вакцинировался
16%
Хочу вакцинироваться, стою в очереди
30%
Сомневаюсь делать или не делать
6%
Не буду делать, так как вакцина это орудие дьявола
3%
Не могу сделать, така как есть медицинские противопоказания по здоровью
7%
У меня настолько маленький член что мне нужен пинцет чтобы пописать.
О вакцинации 💉
Интересные результаты опроса который был на канале о вакцинации. Большая часть людей либо хотят вакцинироваться или уже вакцинированы. Еще половина сомневаются. Людей которые считают что вакцина это орудие дьявола меньше чем людей с маленькими членами.
Что ты думаешь о вакцинации? 🤔
Если взять шкалу где 0 это противники вакцинации, а 10 это сторонники вакцинации, то я буду За на все 10 баллов. Аудитория которая сомневается делать вакцинацию или не делать, можете считать это знамением, поводом чтобы пойти поставить себе эту гребенную вакцину.
Сам то хоть вакцинировался? 🦠
Я получил первый компонент вакцины Файзер в субботу. Самочувствие удовлетворительное. Сегодня немного температурил, попил жаропонижающие и норм. После вакцинации будут мелкие симптомы простудных заболеваний, это длиться примерно 2-3 дня, и это абсолютно нормальная реакция на вакцину.
Почему только сейчас? ⏱
Я в Британии и следую местным нормативам. Расскажу как тут это работает. В Британии массовая вакцинация идет уже чуть больше полугода. Тут вакцинируют по очереди. Сначала стариков 60+ и key workers (врачи, учителя, пожарные и т.д.) А дальше по возрасту 50+, 40+, 30+ и т.д. Ты не можешь просто прийти в центр вакцинации и получить дозу пока не пришла твоя очередь. Так вот, с начала июня начали вакцинировать мою возрастную группу и я получил SMS с приглашением записаться на прием и получить вакцину.
Я записался на месяц позже так как члены моей семьи болели (не желательно вакцинироваться если ты контактировал с больными людьми или сам болеешь). Поэтому я решил подождать пока все поправятся и сходил на вакцинацию только на прошлой неделе.
Итоги ∑
Тут должен был быть пост про ведение проектов. Но подвернулась удачное время чтобы поговорить о вакцинации, поэтому решил об этом рассказать. Мое напутствие будет Вакцинируйтесь и не ебеите себе мозги.
#lifestyle
Интересные результаты опроса который был на канале о вакцинации. Большая часть людей либо хотят вакцинироваться или уже вакцинированы. Еще половина сомневаются. Людей которые считают что вакцина это орудие дьявола меньше чем людей с маленькими членами.
Что ты думаешь о вакцинации? 🤔
Если взять шкалу где 0 это противники вакцинации, а 10 это сторонники вакцинации, то я буду За на все 10 баллов. Аудитория которая сомневается делать вакцинацию или не делать, можете считать это знамением, поводом чтобы пойти поставить себе эту гребенную вакцину.
• Никто вас не собирается чипировать, повзрослейте уже блэт. Биллу Гейтсу на вас насрать. • Вакцина НЕ вызывает аутизм или большочление (это когда член становится большим, ну прям неприлично огромным). Это уже миллион раз доказано и передоказано. Если вы все еще верите в эту байду из прошлого века, то мне очень жаль вас и ваших детей. Тут мои полномочия уже все. • Всем в детстве делали вакцину БЦЖ (точка на твоем левом плече) от туберкулёза, вдруг это никого не удивляет. • Вакцины это однозначное добро. • Можете посмотреть тут как работают вирусы и вакцины https://www.youtube.com/watch?v=oJeyLKzRyMQ • О вакцинации простым языком https://www.youtube.com/watch?v=P9BaUITjc-o • Ну и элементарно почитайте историю вакцин и о массовой вакцинации которая помогла истребить вирус Натуральной Оспы. • Вакцинация отдельных людей не поможет победить вирус, чтобы вернуться к жизни как было до пандемии нужно вакцинировать более 60-70% людей, что поможет достичь коллективного иммунитета, что в свою очередь сильно снизит вероятность распространения и мутации вируса. • В Британии сейчас вакцинировано около 40-50% населения. • В России сейчас вакцинировано около 10-20% населения. • В Казахстане сейчас вакцинировано около 5-10% населения. Сам то хоть вакцинировался? 🦠
Я получил первый компонент вакцины Файзер в субботу. Самочувствие удовлетворительное. Сегодня немного температурил, попил жаропонижающие и норм. После вакцинации будут мелкие симптомы простудных заболеваний, это длиться примерно 2-3 дня, и это абсолютно нормальная реакция на вакцину.
Почему только сейчас? ⏱
Я в Британии и следую местным нормативам. Расскажу как тут это работает. В Британии массовая вакцинация идет уже чуть больше полугода. Тут вакцинируют по очереди. Сначала стариков 60+ и key workers (врачи, учителя, пожарные и т.д.) А дальше по возрасту 50+, 40+, 30+ и т.д. Ты не можешь просто прийти в центр вакцинации и получить дозу пока не пришла твоя очередь. Так вот, с начала июня начали вакцинировать мою возрастную группу и я получил SMS с приглашением записаться на прием и получить вакцину.
Я записался на месяц позже так как члены моей семьи болели (не желательно вакцинироваться если ты контактировал с больными людьми или сам болеешь). Поэтому я решил подождать пока все поправятся и сходил на вакцинацию только на прошлой неделе.
Итоги ∑
Тут должен был быть пост про ведение проектов. Но подвернулась удачное время чтобы поговорить о вакцинации, поэтому решил об этом рассказать. Мое напутствие будет Вакцинируйтесь и не ебеите себе мозги.
#lifestyle
YouTube
Вирусы и вакцины | РАЗБОР
🤟 Подписка! ↓ ↓ ↓
https://goo.gl/CbimGk
Сегодня мы решили разобрать как работает иммунитет, вирусы и вакцины. Также, по этой теме, мы рекомендуем следующие материалы:
Пост Максима Казарновского о типах антикоронавирусных вакцин: https://www.facebook.co…
https://goo.gl/CbimGk
Сегодня мы решили разобрать как работает иммунитет, вирусы и вакцины. Также, по этой теме, мы рекомендуем следующие материалы:
Пост Максима Казарновского о типах антикоронавирусных вакцин: https://www.facebook.co…
5 шагов по ведению проектов 🚀
На данный момент я уже участвовал в запуске нескольких больших и мелких проектов в рамках Facebook. Также мне довелось вести один проект самому, который сейчас прошел стадию тестирования и готовится в релизу.
Тут я хотел бы поделиться несколькими советами по ведению ИТ проектов, как это делается в Facebook. Это будет хорошим напоминанием для меня самого, так как впереди второе полугодие и новые проекты.
1. Определи насколько важен данный проект 🎯
Попробуй ответить на вопросы:
2. Устрани неопределенности ❓
Неопределенность это когда ты не понимаешь какова цель проекта или как это реализовать. Иметь более менее ясное видение перед началом проекта это очень важно, не обязательно чтобы это видение было доскональным на 100%. Но должны быть базовые понимания о требованиях проекта, дизайн, технические сложности и т.д.
Как избавиться от таких неопределенностей:
3. Определи объем работы 🚧
После того как мы получили более менее ясную картину проекта можно начать определять примерный объем работ. Тут не стоит уходить в дебри расписывать каждую фичу проекта подробно. Скорее стоит работать в ширь и хотя бы поверхностно описать техническую работу по всем основным частям проекта. Деталями эти описания будут обрастать походу дела, не стоит на это тратить слишком много времени.
4. Веди технический документ 📝
Как я уже писал ранее записывай результаты своих технических решений в документ. Такой документ поможет не терять фокус и видеть проблемные места заранее. Поделись с коллегами, получи обратную связь.
Подробнее смотри тут: https://www.youtube.com/watch?v=bgHL41e7vgI
5. Подели на задачи 🧹
Подели проект сначала на крупные подзадачи, тут также работай в ширь, и по мере нужды добавляй более мелкие задачи и детали. Измерять отдельные мелкие задачи будет проще. Это поможет нам потом оценить весь проект по времени.
Каждые такие крупные задачи можно сгруппировать поделить на этапы (milestone). К примеру M0, M1, M2 и т.д. Где M0 это сбор данных и устранение неопределенностей, а M1, M2 это уже работа над фичами. Каждый такой этап может длиться несколько недель в зависимости от объема работ. По завершению каждого такого этапа можно сверяться с командой и получать обратную связь.
#career
На данный момент я уже участвовал в запуске нескольких больших и мелких проектов в рамках Facebook. Также мне довелось вести один проект самому, который сейчас прошел стадию тестирования и готовится в релизу.
Тут я хотел бы поделиться несколькими советами по ведению ИТ проектов, как это делается в Facebook. Это будет хорошим напоминанием для меня самого, так как впереди второе полугодие и новые проекты.
1. Определи насколько важен данный проект 🎯
Попробуй ответить на вопросы:
• Почему нам важно сделать данный проект? Какие проблемы он решает? • Попробуй измерить масштабы проблемы в цифрах, чтобы быть наглядным. • Что будет если мы не сделаем этот проект? Какие риски? Может есть более важные проекты в которые стоит инвестировать? • Как мы сможем измерить успех этого проекта?2. Устрани неопределенности ❓
Неопределенность это когда ты не понимаешь какова цель проекта или как это реализовать. Иметь более менее ясное видение перед началом проекта это очень важно, не обязательно чтобы это видение было доскональным на 100%. Но должны быть базовые понимания о требованиях проекта, дизайн, технические сложности и т.д.
Как избавиться от таких неопределенностей:
• Поговорить с людьми. Это могут быть PM (Product Manager), дизайнер, аналитики чтобы собрать побольше данных по проекту. • Посмотреть как похожий проект работает у конкурентов. • Почитать документацию кодовой базы на которой ты будешь работать • Выделить недельку или больше и провести техническое исследование, поделать POC (proof of concept). Это поможет собрать очень много информации в техническом плане. Правда всегда в коде, поэтому не бойся нырять в код время от времени. • Запиши результаты своих исследований. Это поможет не забыть и может быть плюсом во время PSC (оценка сотрудников). • Опять же поговорить с людьми. Пообщайся с коллегами программистами, пообщайся с ребятами из смежных проектов. Расскажи им над чем ты работаешь и как ты собираешься это реализовывать. Они могут дать очень полезную обратную связь. Тут помогут твои записи, чтобы быстро поделиться контекстом проекта.3. Определи объем работы 🚧
После того как мы получили более менее ясную картину проекта можно начать определять примерный объем работ. Тут не стоит уходить в дебри расписывать каждую фичу проекта подробно. Скорее стоит работать в ширь и хотя бы поверхностно описать техническую работу по всем основным частям проекта. Деталями эти описания будут обрастать походу дела, не стоит на это тратить слишком много времени.
4. Веди технический документ 📝
Как я уже писал ранее записывай результаты своих технических решений в документ. Такой документ поможет не терять фокус и видеть проблемные места заранее. Поделись с коллегами, получи обратную связь.
Подробнее смотри тут: https://www.youtube.com/watch?v=bgHL41e7vgI
5. Подели на задачи 🧹
Подели проект сначала на крупные подзадачи, тут также работай в ширь, и по мере нужды добавляй более мелкие задачи и детали. Измерять отдельные мелкие задачи будет проще. Это поможет нам потом оценить весь проект по времени.
Каждые такие крупные задачи можно сгруппировать поделить на этапы (milestone). К примеру M0, M1, M2 и т.д. Где M0 это сбор данных и устранение неопределенностей, а M1, M2 это уже работа над фичами. Каждый такой этап может длиться несколько недель в зависимости от объема работ. По завершению каждого такого этапа можно сверяться с командой и получать обратную связь.
#career
YouTube
What Is A Design Doc In Software Engineering? (full example)
Ever wondered what a software engineering design doc is? In this video, ex-Google and ex-Facebook software engineer Clement Mihailescu explains what a design document is, how to write a design doc, and shows a Google design document example. Design docs are…
Про WLB (Work-Life balance) 🏝
Работо-Жизненный баланс это когда ты успеваешь и проект пилить на работе, и проводить время с семьей и делать какие-то домашний дела.
Нет понятия что в Facebook WLB плохой, а вот в Google хороший. Все больше зависит от проекта и от того как ты себя позиционируешь. Если ты будешь отвечать на сообщения после 18:00, то тебя будут долбить после 18:00, будь к этому готов. Твой WLB обычно в твоих руках.
Несколько правил которых я придерживаюсь 📝
⏱ В рабочее время, с 9:00-18:00, фокусируйся на работе и не отвлекайся.
🏃♀️Будь продуктивным https://t.me/hiremegoogle/78
🏖 Давай себе отдохнуть от работы в течении дня.
💻 После 18:00 закрывай комп, и не открывай его до утра следующего дня.
🏡 Старайся нерабочее время тратить не на соц сети, а на то чтобы сделать домашние дела
🚸 Старайся уделить нерабочее время семье
🍼 Если есть ребенок отдай его в детский сад или найми няню. Твоя жена тоже устает и должна отдыхать.
😎 Найди то что помогает тебя чувствовать себя хорошо.
Что помогает мне чувствовать себя хорошо 😊
Наблюдая за собой я нашел 4 компонента которые помогают мне чувствовать себя хорошо. Если мне не хватает одного или более из этих компонентов в течении дня, то меня может накрыть хандра и усталость.
Это чисто мой список. Найди что делает тебя счастливым. И делай это в течении дня.
И че работает? 🤔
У меня не всегда получается следовать этому списку. Иногда приходиться садиться за комп вечером чтобы ответить на сообщения из MPK (головной офис Facebook в США). Но это не более пары дней в неделю.
Иногда ребенок плохо спит ночью и весь день ты сидишь как зомби и все идет насмарку.
Но когда получается следовать этому списку, то я заметил что я чувствую себя удовлетворенным и счастливым к концу дня.
#career #productivity
Работо-Жизненный баланс это когда ты успеваешь и проект пилить на работе, и проводить время с семьей и делать какие-то домашний дела.
Нет понятия что в Facebook WLB плохой, а вот в Google хороший. Все больше зависит от проекта и от того как ты себя позиционируешь. Если ты будешь отвечать на сообщения после 18:00, то тебя будут долбить после 18:00, будь к этому готов. Твой WLB обычно в твоих руках.
Несколько правил которых я придерживаюсь 📝
⏱ В рабочее время, с 9:00-18:00, фокусируйся на работе и не отвлекайся.
🏃♀️Будь продуктивным https://t.me/hiremegoogle/78
🏖 Давай себе отдохнуть от работы в течении дня.
• Прогуляйся • Пообедай • Поболтай с коллегами или с семьей если ты дома. 💻 После 18:00 закрывай комп, и не открывай его до утра следующего дня.
• Не думай про рабочую рутину. Очистил голову. • Не проверяй и не отвечай на почту или сообщения. • Если будут пожары, для этого есть oncall (если ты сам не oncall 🚒) • Если ты будешь нужен срочно, то тебя наберут по телефону🏡 Старайся нерабочее время тратить не на соц сети, а на то чтобы сделать домашние дела
• Помыть посуду • Вынести мусор • Убраться в комнате • И т.д. • На это уйдет около 1-2 часа в день. 🚸 Старайся уделить нерабочее время семье
• Ужин • Прогулка • Игры • Просмотр кино • Сделай массаж жене • Сделай рельсы-рельсы шпалы-шпалы для дочери • И т.д. • На это уйдет около 2-3 часов в день. 🍼 Если есть ребенок отдай его в детский сад или найми няню. Твоя жена тоже устает и должна отдыхать.
😎 Найди то что помогает тебя чувствовать себя хорошо.
Что помогает мне чувствовать себя хорошо 😊
Наблюдая за собой я нашел 4 компонента которые помогают мне чувствовать себя хорошо. Если мне не хватает одного или более из этих компонентов в течении дня, то меня может накрыть хандра и усталость.
• Прогулка на свежем воздухе. Обычно это я совмещаю это с прогулкой с семьей. • Общение. Обычно это общение с друзьями онлайн или с семьей. • Вкусная еда. Иногда это доставка, но чаще домашняя еда. • Хороший сон. 7-8 часов в день. Это чисто мой список. Найди что делает тебя счастливым. И делай это в течении дня.
И че работает? 🤔
У меня не всегда получается следовать этому списку. Иногда приходиться садиться за комп вечером чтобы ответить на сообщения из MPK (головной офис Facebook в США). Но это не более пары дней в неделю.
Иногда ребенок плохо спит ночью и весь день ты сидишь как зомби и все идет насмарку.
Но когда получается следовать этому списку, то я заметил что я чувствую себя удовлетворенным и счастливым к концу дня.
#career #productivity
❤1