Архив недели @ruggerprogrammr
Понедельник
Привет! На этой неделе с вами Тимур Валиев @ruggerprogrammr из Facebook.
Я не мобильный разработчик, но близок - делаю для них DevTools.
Чуть больше двух лет живу в Лондоне, до этого 3 года прожил в Китае - работал в Alibaba, видел смог и 996.
И еще я играю в регби!
О чем поговорим:
Знакомство - расскажу чем занимаюсь сейчас и как все начиналось
Как я оказался в фб и про собеседования, куда без них
Про Китай и Алибабу
Custom DevTools
Работа в гигантах - pros & cons
Куда и как расти (как инженер) - что же там выше сеньоров и сеньорит ->
Выходные:
Saturday is rugby day!
Путешествия и переезды
Чего ждать не стоит: обсуждение новых (да и старых) мобильных фреймворков и библиотек, я, к сожалению, вообще не в теме. Но обязательно поговорим про Software Engineering в целом
А еще буду рассказывать как идет жизнь в Лондоне под конец локдауна - у нас весна, так что будут фотки 💚
Вот прям прям сейчас я, как почти каждое утро уже год, выхожу за кофе - кофейни были открыты на вынос весь локдаун и это стало ритуалом. Частенько мы гуляем утром с @lightdelay, вкатываемся в работу, но не сегодня - мне нужно подрезать микрофон у ещё одного друга живущего рядом
микрофон мне нужен, чтобы записать доклад на конференцию - я никогда этого не делал вне фейсбука и алибабы, и локдаун выглядит как отличный шанс попробовать. Посмотрим что из этого выйдет :) про конференции и способы узнавать новое поговорим тоже
10 утра по Лондону - время ещё одного ритуала локдауна. Почти каждый рабочий день мы созваниваемся командой на coffee chat и стараемся не говорить про работу. Не думал, что продержимся год, хотя усталость наваливается. А вы делаете что-то похожее?
Ожидания: запишу доклад с красивым фоном💚
Реальность: фон слишком яркий 😭
Обратите внимание, что в основе доклада лежат глубокие знания об iOS, Android и законах вселенной (нет)
Разобрался с OBS - программа для записи экрана и себя, можно настроить всё на свете. Для внутренних докладов я обычно обхожусь встроенным screen capturing и превью quick time movie recording для говорящей головы.
P. S. Не для такого экстрима я gopro покупал 😭
Пока собираются проекты, расскажу как начал программировать и как продолжил. TLDR: мне очень повезло людьми вокруг - родители, учителя и друзья + мне с самого начала было интересно само программирование, и интересно до сих пор. И еще были олимпиады в школе и немного в универе.
С олимпиадами связано много теплых воспоминаний, это было основным занятием с 7 по 11 классы. Звезд с неба не хватал, но что-то получалось. Олимпиады, пожалуй, помогли на некоторых этапах в работе, но они точно не являются ни необходим, ни достаточным условием успеха.
Какие-то навыки пригождаются до сих пор: оценка сложности решений, быстро писать прототипы, объяснение идей(из командных олимпиад по математике и информатике), поиск багов.
Но что-то точно стоит оставить там: одноразовый код, избыточная оптимизация и немасштабируемость решений
С чем олимпиады точно помогли, так это с поступлением в универ. Я закончил ВМК МГУ, и это довольно точно описывает мой опыт. Сейчас понимаю, что и я мог взять, и универ мог дать намного больше. И я не один такой. Хотя мозг понапрягать пришлось, особенно на первых 2-3 курсах.
Интересное началось на 3 и 4 курсах - я начал учиться в ШАДе (школа анализа данных яндекса) и школе HeadHunter. Обе по своему круты, ШАД, как я понимаю, вырос в гигантскую образовательную инициативу, хотя тогда все было довольно камерно и лампово :)
ШАД с глубокой теорией, очень крутыми преподавателями и очень жесткими код-ревью (интересно, в яндексе в среднем так же?) я не закончил, не доучился один семестр, но отпечаток точно остался, рад что был там.
Что сейчас с школой hh я не знаю, но именно там я узнал о ”настоящей” разработке - что же происходит за пределами олимпиад и задачек в вакууме. Сначала был вводный курс в технологии, а потом, для тех кто прошел во второй блок, в командах делали вполне себе реальные проекты
Огромное спасибо @tru_pablo за школу хх, это было прям круто! 2011/12 если я правильно считаю :)
Но ни в яндекс, ни в hh я не пошёл. Моей первой работой стала заказная/контрактная разработка, я работал в команде делавшей движок для автоматизации процессов, было интересно! Был хороший баланс между research & работой над конкретными задачами.
Проработав год я пошел на стажировку в маленькую (тогда) компанию Aim Tech aimtech.com
Там работал мой друг и товарищ по олимпиадам, да и вообще туда хантили олимпиадников и выпускников мгу/физтеха - мы торговали на бирже, high frequency trading.
Стажировка была интенсивной - нам сняли огромный дом в поселке в Подмосковье, условия шикарные, только делать кроме программирования особо не чего - вот мы и фигачили. По итогам стажировки решил присоединиться к ребятам
Там я и начала делать свои первые DevTools для “ресерчеров” - тех, кто придумывает стратегии. Сейчас, задним умом, я понимаю что можно было коллаборировать куда эффективнее и что были ошибки со стороны "сеньоров", но это были общие ошибки.
За два с небольшим года мы перебрались из жопы мира на Коровинском шоссе в крутой офис на Белой площади, пугая своим видом сотрудников Delloite в лифтах. А дальше началась не то чтобы скука, но будто хотелось чего-то нового. А с менеджерами я тогда разговаривать не умел
В итоге, после проваленного онлайн интервью в гугл, @lazy_lantern увидела вакансию в Алибабу. И понеслась! Но об этом мы поговорим отдельно :)
А теперь вопрос к вам, может подскажете. Что сейчас по Server Driven UI модного происходит и как это дело удобно тестировать? А то снова велосипед писать придется.
Пишешь ты код на сервере, что-то на клиенте происходит, а E2E тесты на 'языке/семантике' сервера можно написать?
В JetBrains скоро стартует набор стажеров на лето. А если интересно не только программировать, но и проводить всякие пользовательские исследования – у нас впервые появились проекты для начинающих продактов. Подключайтесь! habr.com/ru/company/Jet…
Стажировки - хорошо, JetBrains - вообще отлично! twitter.com/igrekde/status…
Вторник
Это Durdle Door (Jurassic Coast, Dorset), пара часов на поезде от Лондона. Ездили с палатками в прошлом июле - красиво, но море холодное. Но, возможно, другого моря в этом году мы не увидим
Ханчжоу -> Лондон (Алибаба -> Фейсбук): провел больше недели в воздухе за год, потренировался с регбистами в Барселоне и Амстердаме, получил оффер не написав кода, прошел 8 onsite собеседований за 8 рабочих дней в 5 разных странах, и в оказался в Лондоне. vas3k.club/post/2309/
Доброе утро! Сегодня буду поводить первое System Design, до этого были только Coding. Так что предлагаю поговорить о собеседованиях и поиске работы - между алибабой и фейсбуком я хорошо так узнал про это и написал заметку о своих приключениях twitter.com/ruggerprogramm…
Многое сегодня от меня будет из этой истории, а вы делитесь своими! А я пошел за кофе :)
Краткий пересказ (потом обсудим детали):
Весной 2018, после полугода работы в режиме 996, я решаю увольняться из алибабы. Без оффера, но с четким желанием перебирать я в Европу, а точнее в Амстердам. Открываю резюме на Linkedin и довольно быстро на меня выходят рекрутеры букинга
Одновременно с Букингом начинаю общаться с компанией Bestseller, у них большой офис в Амстердаме. Онлайн собеседования прохожу из Китая в июне, в свой последний месяц в Алибабе. С 1 июля я свободен, переезжаю в Шанхай, в конце июля лечу на онсайты в Амстердам
Параллельно начинаю думать о запасном варианте, попался Toptal (в итоге так ничего там и не сделал, хотя собеседования прошел). Для подготовки к behavioural части в Букинг пошел к карьерному консультанту, Ольга из dreamcatchme.ru, одно из лучших вложений средств в итоге.
В букинг я не прохожу (не понравилась Coding секция), оффер из Bestseller я не принял по финансовым условиям + не очень понимал, будет ли там интересно
В начале августа я возвращаюсь в Шанхай к жене и коту без работы, без оффера, но со стратегией, которую собираюсь придерживаться
Если в мае - июле я контактировал с 3 компаниями, то вот так выглядел мой календарь в сентябре. В августе мне пришлось работать над ошибками, сейчас расскажу о них
Ошибка 1: очень мало вариантов. Один сорвался, другой не понравился - в итоге все начинай сначала. + выбирать даже из 2 офферов может быть не очень интересно
Ошибка 2: я заранее привязался, прикепел к Амстердаму и уже представлял как буду на велике или пешком ходить в офис и играть в регби в Амстелвеене. Было довольно больно отказываться
Ошибка 3: интервью в Букинг, который был основной ставкой, было одним из первых за несколько лет и, вполне ожидаемо, я не справился. К сожалению, прохождение интервью - это навык, который нужно и можно прокачать
Ха, ха. 😂😂😂 В календаре перелёты. И оффсайт интервью. После ковида, никто такой чепухней заниматься не будет. Весь процесс будет онлайн twitter.com/mobileunderhoo…
В некоторых случаях я настаивал на том, чтобы прилететь в офис и познакомиться с командой, хотя предлагали все сделать онлайн. Такие перелеты оплачивал сам
Все будет зависеть от того, вернутся компании в офисы года через 2 или нет. Если да, то я хочу увидеть место и людей вживую twitter.com/vit_ius/status…
И если нужно много таких людей - начинаются либо попытки сделать "идеальный собес" - привет FAANG - это всегда провал, либо нанимать как в средневековье - люди на местах, в командах, думают "о, вот я с тем чуваком работал, он шарит, позову его сюда"
Такс такс, очень вовремя 😈
FAANG не пытается сделать идеальный собес. Им нужен процесс, который масштабируется на тысячи и десятки тысяч людей с максимально стабильным сигналом на выходе. Огромная ошибка приносить этот процесс в стартап из 5 человек twitter.com/DeepSchneider/…
В августе я серьезно и географию поисков (Нидерланды, Германия, Швейцария, Франция, Северная Европа, ЮК), и начал общаться с куда большим количеством компаний одновременно
Стоит отметить, что август не очень хороший месяц для поиска работы - очень много людей в отпусках. В начале сентября стало куда больше контактов
Вести параллельно несколько таких процессов сложно, сложнее чем обычная работа:
Очень много общения, устаешь говорить и физически, и морально. Предупредите близких и друзей, что сократите социальное взаимодействие
На каждом интервью или созвоне нужно выкладываться на 100%. Нет смысла проходить интервью вполсилы - я обжегся, отправив не очень хорошее тестовое из-за того что был в перелетах, и получил оффер на джуниорскую зп
Сложная логистика - хочется максимизировать количество офферов на руках в довольно короткое окно в 1-2 недели, многие компании не готовы ждать больше
В итоге, я рад что что делал это все не работая фуллтайм, это было бы нереально. При условии, что работая фуллтайм сложно привести себя в форму для интервью (как бы грустно это не звучало, но это нужно), то продолжи я работать в алибабе, то в Лондон вряд ли перебрался бы
В итоге мои онлайн собеседования вылились в 8 онсайтов в 5 городах, которые я запланировал на 8 рабочих дней: Женева, Амстердам, Берлин, Лондон, Париж. Отели и диваны у друзей, самолеты и поезд - было весело, но тяжело. Результат - 7 офферов, было из чего выбирать :)
Обидно было, что не получил оффер в Sonarsource в Женеве, очень понравилось, что они делают. Они не были уверены, что мне понравится в Швейцарии и у них и решили не рисковать
В итоге выбор стоял между Лондоном, Берлином, Амстердамом и Парижем. Лондонские офферы очень выбивались по зп от континентальных, а фб еще и предлагал настоящие акции и очень хорошую релокацию + было супер интересно что же там внутри (интересно до сих пор)
Добавим, что в Лондоне не нужно учить язык для полноценной (не просто комфортной) жизни, если оставаться надолго. И много, очень много регбийных клубов💚 Так что зимой 2019 мы перебрались сюда и пока никуда не собираемся :)
Теперь про сами собеседования, что же с ними не так (или так). Об этом я тоже писал заметку, можно почитать что Тимур из 2019 думал об этом medium.com/@zloi.timur/fr…
Идеальных интервью не существуют. Что вы не любите больше всего? Я, например, вряд ли ввяжусь в тестовое, особенно не оплачиваемое, еще раз
Пока вы выбираете нелюбимые секции я расскажу про хорошие техники, которые мне встречались. И про плохие странные :) А вы добавляйте!
Класс: вот тебе технология (что-то типа etcd), вот документация, вот время на ознакомление, обрати внимание на вот эти API. Через какое-то время нужно написать кусочек системы (было leadership election) использую этот api
Отстой: бесконечные (десятки и сотни вопросов) опросники для составления "психологического портрета" и "IQ тесты" - почему-то это очень любят в Северной Европе
В Лондоне сегодня вот так, а значит нужно брать себя, кольца и скакалку и идти в Regents Park на физкультуру - работу можно и потом поработать 💚
Класс: попросить провести код ревью. Это та часть работы, которую легко воспроизвести и от которой многое зависит + можно получить много сигналов. Сам не сталкивался, но выглядит хорошо. Привет @evilmartians_ru
Точно отстой: копировать подходы faang в небольшой компании. Процессы в гигантах оптимизированы на потоки в тысячи кандидатов, часто это вынужденные компромиссы
Странно: дважды меня просили написать эссе на тему почему я хочу работать в [неизвестной] компании и почему я люблю functional programming
Класс: давай обсудим задачу, дальше сиди за своим ноутом сколько нужно, пользуйся чем хочешь, потом обсудим решение. И вид на ввп женевского аэропорта и горы ❤️
Странно: забыть проверить умею ли я писать код. 2 часа мы поговорили по скайпу и 3 часа в офисе с СТО стартапа и его замом в Берлине. Такое behavioural X system design на 5 часов
@mobileunderhood А в чем состоит подготовка к интервью? Это конкретные знания по конкретным технологиям или что-то ещё?
Как бы сломаны не были интервью, к ним можно (и стоит) готовиться. Для кого-то покажется удивительным, но проще всего понять как готовиться к интервью в FAANG&co (не значит, что просто пройти). twitter.com/algridmd/statu…
Про FAANG:
В сети куча материалов для подготовки и описания процесса. Да и сами компании рассказывают чего ждать и как готовиться.
Вот, к примеру, фб подробно рассказывает, там внутри еще и пдф на 11 страниц.
facebook.com/careers/swe-pr…
Среда
Для подготовки к System Design (не уверен что это супер-релевантно мобильным разработчикам) лучше книги @intensivedata (Designing Data Intensive Applications, она же книга с кабаном) я не знаю. И вообще книга хорошая, вот ее я прочитал
А это Lake District, национальный парк на севере Англии,чуть не доезжая Шотландии. Там самые высокие горы в Англии, про одну из них ещё расскажу :)
И это Lake District 💚 Можно очень хорошо похайкать, с хайкингом в ЮК всё хорошо
@mobileunderhood С технической частью более менее понятно, а как готовиться к behavior-интервью? Есть ли какие-то материалы-рекомендации?
Сорян, я спал, а потом работал (такое тоже бывает). Отличный и сложный вопрос - как готовиться к Behavioral секциям, которым можно закрыть тему интервью (если не появятся новые вопросы у вас)
twitter.com/sclownmk/statu…
Главный совет - готовьте истории о себе и упаковывайте их так, как их хочет слышать другая сторона. Многие вопросы спрашивают почти на каждом интервью и гиганты, и стартапы: конфликты, успехи, провалы. Ну и самый первый вопрос - расскажите о себе
Старайтесь брать инициативу в свои руки - чем больше вы будете говорить о том, что знаете, в чем разбираетесь и к чему готовились тем меньше времени на то, что вы не любите
Есть техника STAR, которая поможет структурировать истории - situation, task, action, and result. Не обязательно использовать явно, но так или иначе истории будут неполными если убрать что-то из этого списка
Не врите и не придумывайте того, чего не было - интервью и так стресс, не усугубляйте его. При этом одну и ту же историю можно рассказать по-разному. Попробуйте понять, что услышит интервьюер
Потренируйтесь на друзьях/близких. Это не обязательно делать на айтишниках, многие истории должны быть понятны без технических деталей.
Если интервью на английском, учите английский. Освободите свой мозг от синхронного перевода, он жрет очень много ресурсов
Узнайте о культуре компании. Возможно вы не захотите там работать :) А если хотите, то сверьте компасс и адаптируйте истории чтобы они смотрели в ту же стороне
Как узнать про культуру компаниии: с гигантами проще - книги, подкасты, статьи, записи с конференций. Вот подборка подкастов про фб, и было бы круто знать о них до выхода в фб. Мне повезло что нравится, но решение могло быть осознанным t.me/ruggerprogramm…
С небольшими компаниями, особенно которые не пиарят сябя, сложнее. Но можно поискать что-то на glassdoor + я искал всякие финансовые отчеты (если есть). Компании приятно удивляются, когда ты знаешь сколько пользователей и сколько они приносят денег
Сегодня No Meeting Wednesday, полуофициальная традиция, так что сегодня у меня всего два созвона и одно интервью. За пустые блоки в календаре нужно бороться, и чем больше твои проекты, чем выше ты метишь, тем сложнее это делать
Предлагаю сегодня поговорить о работе в фб и росте
Расскажу, что происходит после найма (bootcamp), как люди без мобильного бэкграунда начинают работать в этой области, про велосипеды и non-transferable skills, и как расти не уходя в менеджеры и тимлиды (спойлер - сам пытаюсь понять)
В фб, в большинстве случаев, вы не знаете над чем и в какой команде вы будете работать. Первые 5-8 недель занимает bootcamp: вы пытаетесь понять что происходит и найти команду
У каждого буткэмпера есть ментор, в первые две недели именно он подсовывает задачи и объясняет что к чему. Задачи, с самого начала, реальные, их в специальный пул кидают команды. В первые 2-3 недели задачи из совершенно разных областей и на разных технологиях
Дальше начинается поиск команды-есть список открытых позиций, команды делают презентации. Ты судорожно ищешь полузнакомых и спрашиваешь что и где есть. Начиная с четвертой недели сидишь с командами, смотришь как и что делают
Я сидел с тремя, общался ещё с несколькими. Предыдущий опыт может быть плюсом, но бывает и кардинальная смена курса - всё равно изучать кучу велосипедов
Четверг
Что-то меня вчера вырубило работой, сейчас постараюсь кратко дорассказать про мою работу в фб, а потом про рост внутри компании
Долгий onboarding. Чем выше уровень, тем больше времени уходит на то, чтобы выйти на ожидаемую продуктивность. Я только через 3-4 месяца начал понимать что к чему end-to-end и начал делать первые большие проекты.
Присоединился я к команде Facebook Lite PRE (Performance, Reliability & Efficiency) и на третью неделю полетел в командировку в Тель Авив - fb lite в основном разрабатывают там. Командировок очень не хватает сейчас(
Начал я с server side performance, улучшал трейсинг (на java) - логичное продолжение того, что я делал в Алибабе (системы мониторинга и масштабирования микросервисов). Но через пару месяцев понял, что нам не хватает хороших dev tools, чтобы кататься на велосипедах продуктивно
Узнал про @flipper_fb и понял, что это хорошая платформа для custom dev tools - начал разбираться, область была совершенно новая для меня. Но в фб это нормально - главное польза, которую ты приносишь (об этом чуть ниже)
Cейчас, спустя полтора года, я процентов 70-80 делаю dev tools уже для всех в фб, не только для lite. Выучил react & typescript (flipper на них), пишу и трогаю, или хотя бы читаю, код на Java/TS/Python/ObjC/Hack (это свой php на стероидах) и иногда Kotlin, привет @lightdelay
Остальные 20-30 процентов времени занимают созвоны, планирование, roadmapping и прочее веселье :) Пойду за кофе и на два созвона, stay tuned!
В Лондоне цветут магнолии❤️
Как же устроена работа в фб? Ответ: нет одного ответа. Какдая команда, каждый отдел (org) да и каждый разработчик сами решают как работать. Наверное, кто-то использует agile, кто-то трекает задачи, кто-то все держит в голове. Главное - чтобы ваши партнеры и "клиенты" были в курсе
Добавим к этому огромные monorepos и отсутствие строгого code ownership, культуру move fast и довлольно большую свободу и автономность (уже почти два года мне не ставят задач, я ищу проблемы), открытость к идеям и культурой быстрого фидбэка
Получаем довольно хаотичную систему с не очень понятными (особенно по началу) границами и каркасом
Но есть и команды где все более структурировани, где есть дедлайны и очень четко очерченные проекты
Как же работать в таком бардаке?
люди открыты к общению, новым идеям и cross-teams collaborations
культура давать и просить фидбэк
система противовесов в виде довольно тяжелого планирования полугодий и полугодовых performance review
Подробнее👇🏻
По ощущениям (no science here) в фб инженеры очень открыты к общению, в том числе синхронному (сейчас это видео связь). Асинхронное общение тоже есть, его много, особенно между разными часовыми поясами, но несколько часов в неделю я говорю вживую и мне это нравится
До ковида было довольно много командировок. Их очень легко согласовать (эй, я лечу в Сиэттл на неделю - ок), они очень помогали. Особенно крутые поездки в Тель Авив: люди, море, еда. Удаленная оммуникация до и после того, как общался вживую - две большие разницы
Как давать, просить и принимать фидбэк. Один из ключевых навыков для работы в несктуктуриванной и хаотичной среде. Я применяю фреймворк COIN, но можно запаковать и по-другому.
Context, Observations, Impact, Next steps. Если что-то выкинуть, то работать будет хуже
Context - расскажите, что о чем речь. Даже если только что был митинг, напишите ключевые моменты - коллега может вернуться к этому через несколько дней и не знать/забыть детали. Работает в обе стороны (ask/give)
Observations - старайтесь использовать объективные факты и наблюдения, а не субъективные оценки. Пример: из-за отсутствия интег. тестов приложения начали падать после изменения на сервере, а не "этот подход к тестированию - говно".
Impact - почему это важно. "Из-за ошибок на клиенте мы теряем Х% пользователей". "Это архиктурное решение поможет сэкономить 5% размера приложения -> исследования показали, что это сдвинет другие метрики". Не очень хочется просить/давать фидбэк не понимая, насколько он важен
Next steps - что вы ожидаете от получателя/что планируете делать с полученым фидбэком. Предлагаю обсудить и решить проблему с ошибками на клиентах, хотелось бы видеть план через 2 недели и начать внедрять через 2 месяца/Ваш фидбэк поможет приоритезировать работу над проектом
Этот фреймворк масштабируется и на небольшие проблемы/идеи, и на проекты на несколько месяцев. Работает и с технической работой, и с коммуникацией.
Как получать фидбэк: always assume good intentions. Особенно когда фидбэк письменный и вы не слышите интонаций/не видите лица. Не обязательно соглашаться с фидбэком, но стоит понять, почему он кажется важным для дающего (impact).
И еще: давайте положительный фидбэк! Это здорово помогает и морально, и когда дело доходит до оценки работы. Можно лично, можно написать менеджеру. Мне очень приятно работать в среде, где принято благодарить за работу
Пока собирается приложение, а я пытаюсь избежать созвона, расскажу о болях работы из дома (но полностью в офис я уже не вернусь): заточенная под офис инфраструктура, zoom fatigue, стирание границы между работой и домом, отсутсвие плюшек офиса (наименее критичное лично для меня)
Огромные монорепы и распределенные системы сборки работали нормально (приемлемо) в офисных сетях, желательно с ethernet кабелем. Из дома по впн, в доме без оптоволокна, счет минимум на 10-15 минут, а иногда час и больше
Усталость от видеозвонков. Как бы я не любил общаться с людьми, 3D люди лучше 2D. Иногда голосом действительно быстрее, и в офисе мы привыкли рисовать на стенах. Сейчас приходится перестраиваться на async взаимодействия, особенно с west coast
Границы между работой и домом - наверное самое тяжелое. Моя кровать сейчас за мной, ладно хоть я смотрю в окно. Все точно стали работать больше, тот час комьюта ушел в работу
Офисы фаанга непросто так такие классные, компаниям выгодно, чтобы вы там тусили больше. Кому-то этих плюшек не хватает больше, мне скорее не хватает внезапного обсуждения идей и четкой границы с домом
Какие плюсы работы в большой компании (с подвохами)
1.Есть возможность сфокусироваться только на том, что интересно и копать вглубь. Интересно мне делать dev tools/ui frameworks/code analysis/compilator plugins все время - есть такая возможность.
Подвох - возможность, не гарантия
Вполне возможно вы ошибетесь с командой или решите приоритезировать другие области (зп/повышение vs интерес). + нужно доказать, ваша невероятно интересная работа важна
Доступ к экспертам мирового уровня, тем кто делает условный реакт. Ноль гарантий, что вы будете работать вместе, но шансы есть
Подвох: большая часть людей работает над другим, и на внутренних технологиях, которые могут быть крутыми, но эти навыки не очень применимы снаружи
Комфорт. Платят хорошо, заботятся тоже, когда офисы открыты - там есть очень многое (особенно в hq в долине)
Подвох: сидя в золотой клетке можно потерять связь с внешним миром.
Не плюс и не минус: в масштабах компании сложно быть/стать незаменимым. Есть safety net, обычно меньше жестких дедлайнов. Но иногда хочется сильнее влиять на происходящее вокруг (относительно компании, не абсолютно)
Что вы думаете по поводу гигантов (давайте сюда включим яндекс, мейл, сбер и другие большие компании)/небольших компаний (в опросе "стартап" чтобы влезло)?
Пятница
@mobileunderhood Да это реально работа мечты какая то
Чтобы всё не свалилось в хаос и написание не нужных красивых велосипедов есть система противовесов, компенсирующих автономность и свободу выбора работы: performance review и планирование. twitter.com/50megatonn/sta…
Работаем полугодиями, в начале каждого планируем большие проекты и общие направления, пытаемся ставить цели и ориентиры. Но главное - сверить компасы с паронерами, выяснить чего хотят клиенты и понять, никто ли вас не заблокирует. Это планирование заняло два месяца.
В конце каждого полугодия происходит perf review - каждый пишет обзор на себя, просит тех, с кем работал дать фидбэк и даёт фидбэк другим. На неделю работа встаёт точно, а дальше менеджеры проводят калибровку - пытаются поставить справедливую оценку. На пару недель менеджеров нет
Базовая оценка - meets all expectations, выше: exceeds, greatly exceeds, redefine. Ниже: meets most, meets some & meets none. От оценки зависит бонус, раз в год (по итогам двух циклов) ещё и прибавка к зп + акции (refreshers)
Оценки, хоть и коррелируют с повышениями, но не являются достаточными условиями для них. Можно несколько полугодий получать exceeds/GE, и не повысится. Контринтуитивно, сейчас объясню
В фб используют trailing promos - нужно стабильно перформить на уровень выше, чтобы тебя повысили. Понижений обратно нет, так что компания хочет быть уверенной, что вы справитесь там
Что значит перформить на уровень выше? Тут вспоминаем названия оценок - соответствуети ли вы ожиданиям. И ожидания отличаются от уровня к уровню, меняется не просто количество пользы, но и тип работы
@sagus_helgy @mobileunderhood Алгоритмические задачи бывают с «мобильным контекстом», например реализовать алгоритм поиска первого общего superview у двух uiview. Или дан uiview с кучей сабвьюх и точка на оси координат и нужно найти первую сабвьюху в которую попадает эта точка.
Так, тут настоящая мобильная разработчица (а не я сбоку) рассказывает что к чему на алгоритмических секциях бывает у мобильщиков. Такие задачи часто встречаются в реальной работе: деревья обходить приходится часто twitter.com/bobkovams/stat…
Уровни нумеруются, джун - е3, миддл - е4, сеньор - е5. Я точно знаю, что бывают е9, но е6 и выше в компании около 10%, е7 и выше совсем немного. Лестница у инженеров идет параллельно менеджерской. Е6 == м1(engineering manager в обычной команде), е8 = директор
Зп и всё остальное очень похожи, главное отличие - инженеры остаются IC, individual contributors, под ними нет команды. При этом (за редким исключением) проекты у Е6+ такие, что одному не вытянуть. В итоге нужно создавать возможности другим помочь тебе. И при этом самому фигачить
Это Peak District, пиков тут нет, в отличии от Lake District, зато и ехать ближе. Где-то в этих краях тусовался Робин Гуд
Ездили с палатками, жили через каменный забор от двух пони. Эти фотки на плёнку 💚
Ещё немного контекста:
Е5 - терминальный уровень, то есть можно всю жизнь остаться на нем (и если получать хорошие оценки, то жить можно хорошо). А вот от Е3 и Е4 (джуны и миддлы) есть ожидания, что они повысятся за определенный срок (вроде это 2 и 3 года)
Соответственно путь Е3/Е4->Е5 куда более частый и понятный
А вот универсальной стратегии роста на Е6 нет, почти каждая история уникальна, не говоря уже о Е7+
Сложности добавляют высокие требования на Е5 (сложно физически делать больше руками) и другой тип работы на Е6 (часто это много общения и влияние/помощь другим) - в итоге выбор: высокие оценки сейчас или работа над повышением, не всегда понятно как совместить
После обеда будет Китай и алибаба, но перед этим давайте поговорим про получение/обновление знаний и поиск идей/вдохновения. Ваш любимый формат:
Ну и какой разговор о знаниях без обмена? Кидайте в реплаи любимые доклады, книги, подкасты и кого стоит читать в твиттере :)
Я пошёл за кофе, а потом тоже покидаю
Так, похоже я на стороне аутсайдера - я сильно подсел сначала на подкасты, а потом на аудиокниги.
Бумажные/kindle книги я тоже читаю, но в основном это худ. литература, вот прочитал 2.5 книги Дюны, привет @shuvalov_js!
В один момент захотелось меньше напрягать глаза + я люблю долго гулять, так что воткнул наушники и пошел слушать. За прогулку выпуск подкаста, за неделю - толстую книгу. Понятно, что совсем хардкор так не получится слушать, но и тут я иногда исхитряюсь
В youtube premium есть режим "радио" - блокируешь телефон, а звук от видео идет. Очень много докладов с конференций можно слушать в таком режиме, иногда включая видео чтобы посмотреть диаграммы/код :)
@itunderhood Запуск завтра, @PodlodkaPodcast, Software engineering Radio @seradio, Software Engineering Daily @software_daily, The Changelog, Tech Meme Ride Home @TechmemePodcast , @UnderJS, CoRecursive: Coding Stories @corecursive
Подкасты, которые я слушаю twitter.com/ruggerprogramm…
Отдельное место в моем сердце у @radioimmigrant ❤️ Был в гостях (они часто зовут гостей), но и выпуски только с ведущими огонь
radioimmigrant.com/episodes/2019-…
Сейчас слушаю автобиографию Кевина Митника, Ghost in the Wires, интересно! Хакерство ради хакерства, явно не хватало performance review c вопросами про impact :)
Подряд послушал три книги с разных сторон смотрящие на культуру компаний и в it/долине в частности
No Rules Rules - про очень жесткую культуру в нетфликсе
The Culture Map - must read если вы работаете с людьми из разных культур
Disrupted: My Misadventure in the Start-Up Bubble
No Rules Rules написана ко-фаундером Нетфликса и Erin Meyer, она же написала The Culture Map. Полезно почитать если есть идти в big tech или нет. В нетфликсе многие вещи уходят в экстрим, включая культуру top performers: готовы платить по верху рынка, но хотят тоже многого
Там же рассказывают про подход, что рабочий коллектив это не семья, а спортивная команда. Привет фильму Moneyball. Честный, но жесткий подход. Отсутствие бонусов и оценок - интересно, но по сути ваша оценка бинарна - оставят или уволят, сложно скейлить усилия
Автор Disrupted высмеивает современную культура долины, стартапов и всего такого - it журналист, который в 53 решил пойти работать в startup/scale up. Интересно слушать и узнавать многие проблемы :)
Лайфхак: если вы делаете что-то визуальное (UI приложения или в моем случае dev tools) - записывайте и прикладывайте демо видео в описании коммита. Еще я записываю видео с "говорящей головой" когда хочу объяснить идею - чаще это проще чем текст
Making life better with custom DevTools - stay tuned for a talk @MobiusConf, April 15th. @mweststrate and I will share challenges we face in Facebook and how @flipper_fb helps us. Ideas I'll share aren't bound jsut to Flipper though! mobius-piter.ru/en/2021/spb/ta… #mobiusconf
Мой доклад выложили на сайт конференции, пути назад нет, кто будет на @MobiusConf - заглядывайте, я буду в комментариях, Q&A и вообще я всегда рад пообщаться! twitter.com/ruggerprogramm…
Will talk about Kotlin adoption at Scale with my partner in Android crime @colriot Want to know how Kotlin is doing at Facebook? Join us at @MobiusConf 16th April mobius-piter.ru/en/2021/spb/ta… #kotlin #android
Там же будут соседи по этажу в офисе и соседи в реальной жизни: два Серёжи @lightdelay & @colriot будут рассказывать про Kotlin at large scale
twitter.com/lightdelay/sta…
Про конференции: кидайте любимые доклады в реплаи, а я расскажу про свой опыт посещения конференций (его почти нет!). Ну и опрос: ваш любимый тип докладов.
Если выбирать один доклад, то это Hammock Driven Development от @richhickey. Мне хочется чтобы доклад повлиял на меня, чтобы я что-то вынес. Это тот случай. И ни остутвие мемов, ни 360p на ютубе, ни шум из зала никак не влияют на крутость
youtube.com/watch?v=f84n5o…
Немного спойлеров :)
Этот доклад точно из серии философских рассуждений, которые скорее всего проиграют :)
Но решать проблемы (а потом учиться искать их), а не пилить фичи - норм стратегия роста (надеюсь)
Пальцев на руках хватит чтобы посчитать оффлайн коференции и митапы на которых я был. Сначала школы яндекса и hh_ru были источниками практических знаний. Потом была специфичная работа с биржей - там не делятся знаниями
Потом я улетел в Китай, и оттуда я слетал два раза в Европу - в Берлин на @microXchg и в Барселону на @spring_io. Вроде я люблю общаться, но из нетворкинга получилось только потренироваться с местными регбистами
Потом я переехал в Лондон и в первый год было не до конференций, а потом ковид. Так что онлайн конференции, нравятся они или нет, единственный вариант. Из плюсов конечно логистика, из минусов - живое общение. Зато все в равных условиях: и люди в Долине, и где-то далеко от нее
А у вас есть истории классных знакомств на конференциях? Нетворкинг является для вас ключевым фактором?
Не обязательно быть на конференции, чтобы пообщаться со спикером😈 Полтора года назад был пересаживался в СПБ и увидел что Josh Long @starbuxman (hey Josh, it's Timur @ruggerprogrammr from London here) выступает на Joker<?> и выловил его на чашку пива. Знакомы мы с Алибабы
Work-life ballance сам себя не поправит, так что закончу работать пораньше. Work-life ballance был одной из причин уехать из Китая и уйти из Алибабы
Тред о том, как я сорвался в Китай, стал первым разработчиком не говорящим по-китайски в алибабе и выгорел в режиме 996
Начало 2015, рубль куда-то летит, офис переезжает с окраины в центр Москвы, на работе становится немного скучно, шило зовёт, но собеседование в гугл по телефону провалено. И тут @lazy_lantern (китаист) видит в фб вакансию: aliexpress ищет русскоговорящего разработчика в Китай
Офис алибабы в России тогда состоял из трех человек - директор и бизнесс-девелопервы. С CTO aliexpress мы встретились в лобби гостиницы в пяти минутах от работы, поговорили про жизнь (по сути это было behavioral интервью). Пара созвонов с попыткой провести техническое интервью:
В алибабе почти все на java (точнее jvmс приходом kotlin), много спринга. К тому моменту я этот стек не трогал уже два года, но смог убедить что разберусь и вернусь в форму. Дальше несколько созвонов с эйчарами. Главный вопрос - не свалю ли я через полгода назад
Очень правильный вопрос с их стороны, на кандидата делали ставку и ошибка стоила бы дорого. Оффер я получил в начале лета и сказал, что мне нужно несколько месяцев на сборы - передать дела на работе. И главное - жениться ❤️
30 октября - свадьба в Москве (в семейном кругу, большая была позже, летом), 3 ноября я впервые в жизни оказываюсь в Китае.
Тогда я честно пытался вести медиум, думаю лучше почитать Тимура из 2015 о первой неделе в Китае
medium.com/%D1%82%D0%B0%D…
Да и вообще я старался писать, чтобы не упустить ничего, надо перечитать :)
medium.com/@zloi.timur
А вот про трудовые будни через полгода. Статую голого мужика, еда в столовке спящие в обед коллеги
medium.com/travelru/%D1%8…
Пошел гулять, продолжу вечером :)
Обстановка в Лондоне
Hampstead heath & Parliament hill
Hampstead RFC's training grounds are at photo n.1
Заключительный матч Кубка Шести наций 🔥 Франция принимает Шотландию, и от этого матча зависит судьба турнира 👀 Смотрим: amp.gs/ce1j https://t.co/qL2xVA6rot
Извините, но на сегодня я потерян. Завтра тоже будет про регби (Saturday is rugby day!) и про Китай - я руководил регбийным клубом Hangzhou Harlequins 2 года
И если у вас нет планов на вечер - включайте регби, матч должен быть огонь! Трансляция будет тут vk.com/rugby twitter.com/RugbyRussia/st…
Сейчас я создам zoom ребятам со всего света - мы играли вместе в Китае. До сих пор поддерживаем связь и даже иногда видимся. Регби сближает!
Суббота
Продолжу про Китай, доброе утро!
Как я уже писал, в Китае я до переезда не был. Из знаний были истории от @lazy_lantern, википедия и какие-то стереотипы. Еще я нагуглил местную регбийную команду, Hangzhou Harlequins, связался с ними и стало поспокойнее
Китайского я не знал, да и сейчас знаю на уровне "заказать еду и пиво и объяснить таксисту, где повернуть и кивать его шуткам о холоде и водке в России". Честно пытался учить, брал 1:1 уроки полгода, но решил прекратить. Домашняя работа - вроде это планы на выходные :)
Главная проблема в изучении китайского - пока ты не выучишь иероглифы ты не выучишь иероглифы. Невозможно, как в условной Германии, прочитать слово не понимая его. Ты не начнешь узнавать слова на улице. В итоге, нужно иметь плоскую жопу и учить, учить, учить.
Можно было бы поставить цель и все свободное время после работы год-полтора толькои учить язык, но я подумал что есть дела поинтереснее - поездки по стране и регби
Без китайского можно и жить (даже не в Шанхае/Пекине), и работать, но очень много возможностей теряешь. О полном погружении можно забыть, хотя жить в пузыре я не стремился: жил в обычных квартирах, ходил в обычные больницы
Я уже писал, что был первым разработчиком в Alibaba, не знающим китайского. Я очень благодарен сокомандникам, которые почти полностью перешли на английский, но все равно было сложно. Документация, инструменты, процессы, даже комментарии в коде - все на китайском
Google translate как-то помогал, но не всегда. Верстка едет, что-то не переводится, а еще почему-то любили прислать скриншот с текстом/таблицей. Но самое сложное - вокруг тысячи коллег, которых ты не понимаешь. Часто ты доставляешь неудобства, но многие старались
Так или иначе ты оказываешься в пузыре - разговоры в столовке и у куллера - мимо. Случайная идея/митинг - мимо. О росте через влияние на других можно забыть
Work-life ballance сам себя не поправит, так что закончу работать пораньше. Work-life ballance был одной из причин уехать из Китая и уйти из Алибабы Тред о том, как я сорвался в Китай, стал первым разработчиком не говорящим по-китайски в алибабе и выгорел в режиме 996
О работе в Алибабе. Жизнь в Китае четко поделилась на первые два года нормальной жизни vs. полгода в режиме #996 и увольнение. О том, как я сорвался в Китай не зная китайского тут:
twitter.com/mobileunderhoo…
996 = работа с 9 до 9, 6 дней в неделю. Популярная практика в Китае, где-то неофициально, в моем случае это было официально на полгода, хотя первые два года меня это не касалось
github.com/996icu/996.ICU
И хотя официально такой режим вводили только на важные проекты, культура переработок есть. Не перерабатываешь - лох. Слово 加班 (jiaban, переработки) как привет и пока. Это было очень заметно по очередям на бесплатное такси бесплатные снеки после 9 вечера
cnbc.com/2019/04/15/ali…
При этом физически невозможно работать продуктивно, сфокусированно и не сгореть. Так что после походов на обед все гуляют по парку внутри кампуса, а потом полчасика можно вздремнуть. Вечером порубиться в онлайн игру с сокомандниками после ужина. Моя сиеста на улице:
Я, как laowai (иностранец), не был частью игры и редко перерабатывал, за редким исключнием, когда были созвоны с Москвой. Да и вообще был огражден от корпоративных штук (типа жестких ревью)
Первые два года я занимался очень крутыми проектами. Мы делали инфраструктуру для микросервисов поверх Spring (boot & cloud), я делал системы мониторинга и масштабирования. Было реально интересно, многому научился, многое сделал
А потом меня позвали на срочный проект - Алибаба купила Лазаду (привет @shuvalov_js!), с большим офисом в Москве, да и в Азии работали русскоязычные ребята. Кому-то пришла в голову идея переписать весь бэкэнд лазады на стек алибабы за полгода (а скорее к perf. review)
Несколько сотен инженеров с обеих сторон с языковым барьером, жесткие сроки, абсолютно разные стеки (лазада сама переезжала с PHP на Go, а тут java). Давайте всех заставим работать 996 - может получится?
Почему я согласился работать в таком режиме? Я о нем узнал на третью неделю и мне не хватило мозгов отказаться. Сейчас это классный опыт, но повторять никому не советую. Даже прибавка к зп не соответсвовала доп. часам - возможно я дурак :)
Каждое утро мой тимлид забирал меня на своей тесле или бмв в 8 утра и мы час ехали на другой конец города - снимал квартиру рядом со "своим кампусом", а Ханчжоу огромный, примерно как Москва. В 9 вечера я либо с ним, либо на такси ехал назад, чтобы в 10 вечера начинать отрубаться
В итоге я просто начал снимать еще одну студию ближе к офису. Единственное, что я выбил - раз в неделю я уходил в 6 чтобы пойти на регбийную тренировку - я продолжал руководить клубом. Иногда играл в хоккей (начинали в 10 вечера)
При этом работа была интересной - мы старались сделать инфраструктуру для переезда на Java, делали фреймворки поверх spring boot, я делал курсы для новых коллег, чтобы им было проще влиться. Был своим среди чужих, чужим среди своих.Через пару месяцев,к новому году,батарейки сели
Дотянул до китайского нового года в феврале, слетал в отпуск - не помогло. Добавился непонятный кашель - была аномально холодная зима и сильный смог. Кашель прошел, когда я на три недели слетал в Европу в мае :)
Почти каждые выходные (точнее выходной) я ездил в Шанхай - мы жили на два города. В один момент субботу сделали до 4 дня - спасибо. Час в такси до вокзала, час час в поезде (300км/час), час до дома в Шанхае. На ревью мне сказали, что нужно было меньше ездить и больше отдыхать
После этого я начал собираться в Европу. О жизни вне работы в Китае и о путешествиях поговорим завтра, а пока вот вам статуи из кампусов алибабы. Гребцы в разные стороны, заебавшиеся работники и здоровый голый мужик
О работе в Алибабе. Жизнь в Китае четко поделилась на первые два года нормальной жизни vs. полгода в режиме #996 и увольнение. О том, как я сорвался в Китай не зная китайского тут: twitter.com/mobileunderhoo…
Продожнение тут - о работе в алибабе и о 996
twitter.com/mobileunderhoo…
Пока, Алибаба. Классный опыт, который круто иметь, но лучше не повторять. Я точно не жалею, что поработал там и точно поехал бы снова в 2015.
Были ошибки, была обида, но было и много крутого.
Воскресенье
Регби! Пожалуй, лучший коммандный спорт😈
Главное моё увлечение, для меня это больше чем спорт - это способ знакомиться и сохранять дружбу, адаптироваться к новым местам и узнавать про них, часто это причина путешествовать и отличный способ отвлечься от работы! #rugbyfamily
Как и в моих любимых докладах, я попытаюсь рассказать так, чтобы вы смогли применить идеи без привязки к технологии (в данном случае регби) - есть много других классных хобби! Рассказывайте о них в реплаях, а я начну
Регби - коммандный, контактный и очень социальный спорт. Есть несколько разновидностей, мы будем говорить о Rugby Union, или Rugby-15. Регби-7, с похожими правилами, но на поле не 15, а 7 человек - олимпийский спорт. youtube.com/watch?v=3nZcht…
О регби я узнал довольно поздно, в 20 лет, чуть более 9 лет назад. Это был 4й курс универа, я как и все, играл в футбол, но все жаловались что я толкаюсь. С бокса я ушел после года занятий на втором курсе. Случайно увидел тренироку РК МГУ и понеслось.
С тех пор я играл, тренировался и смотрел регби в России,Китае,Англии,Новой Зеландии,Японии, Ирландии, Франции, Германии, Нидерландах, Испании, Грузии, Индонезии, Гонконге, Беларуси, Грузии. Играл и в -25, и в+35, и на снежном поле в Вологде, и в портовом городке в Новой Зеландии
Первое, что я нагуглил о Ханчжоу - есть ли там регби. Жизнь в Китае точно была бы другой без этого, а может я и не поехал бы. Через полгода в команде наш президент решил уехать в Шанхай, и меня номинировали на голосование. Это точно повлияло на мою жизнь
Был менеджером Hangzhou Harlequins & Harlequeens два года - искал спонсоров, поля для тренировок, помогал студентам из Зимбабве и Папуа Новой Гвинеи смотреть Китай, нашел друзей со всего света, научился дизайнить форму и общался с заводами
В 2017 мы заняли третье место в итоговом турнире Китае (любители), уступив только богатому Шанхаю и полупрофи с севера. В основном мы играли с такими же экспатами, регби не очень популярно у местных, а если и играют, то в "олимпийской системе", не касаясь любителей.
Прощальный для меня ужин после сезона 17/18. Через неделю я уехал из Ханчжоу. Мы до сих пор на связи, кто-то живет в Лондоне, кто-то остался в Китае, кто-то уехал домой. За этот год мы смотрели регби по зуму раз 5 :)
Сейчас играю в одном из самых старых клубов Лондона - Hampstead Rugby Football Club, помогаю как могу
Немного скучаю по "семейности" регби в Китае и России - там это маленький спорт и объединяет он очень сильно. Командное фото и ужин на Рождество в Ханчжоу
За что же я так люблю регби?
Регби - для всех. И для Томми из Англии весом в 160кг и 51 размером ноги, и для Оберта из Зимбабве, который тонкий, как спичка, но быстрый, зараза.
Для Люси из Франции, и Анны из Папуа Новой Гвинеи.
Есть регби-тач, если не хотите контакта :)
Регби - очень социальный спорт. Два тайма на поле, третий тайм в пабе. Обе команды и судьи всегда идут общаться (чаще всего с пивом) после игры. Общение вне поля и тренировок - основа клубов. 100% способ завести знакомства после переезда
Уважение к судье и соперникам. С судьей не спорят - в лучшем случае передвинут штрафной на 10 метров ближе, а скорее попросят отдохнуть 10 минут. Про общение после игры я уже писал :)
"This is not soccer".
youtube.com/watch?v=RXoBNF…
По-настоящему командный спорт с разными ролями. Невозможно вытащить игру одному.
Знаете откуда пошло слово Scrum? Это схватка в регби.
P. S. Мой любимый баян про то, что настоящий скрам я видел только на регбийном поле :) Я довольно долго играл на позиции Scrum half
Способ быстро познакомиться с местными в поездках. Когда я ездил на собеседования в Амстердам я тренировался с Amstelveen RFC. А потом шел в паб и спрашивал про жизнь - вдруг перееду?
Просто пишете местным регбистам в фб - и вас всегда с радостью встретят. Я так делал по всему свету от Новой Зеландии до Берлина. А во время конференции в Барселоне я просто увидел тренировку, сбегал в декатлон за бутсами и присоединился :) Сделаю паузу, но завтра продолжу
Ну и конечно я скучаю по самой игре. Тяжелая физически, сложная тактически, нельзя играть вполсилы - все оставляешь на поле. От работы отвлекает отлично и на тренировках, и в выходные :)
Вот нашел видео на десятилетие клуба в Ханчжоу, хорошо получилось
youtube.com/watch?v=JWFqVn…
Воскресенье, сегодня главное случайно не начать работать. Ушёл гулять подальше от ноутбука :)
Выпью кофе с другом, потренируюсь и после обеда расскажу про интересные путешествия и про жизнь в Китае. А ещё я совсем не рассказал про Flipper fbflipper.com
Flipper - Extensible mobile app debugger. It's a platform for debugging iOS, Android and React Native apps. Visualize,inspect,and control your apps from a simple desktop interface. Use it as is or extend it
@flipper_fb fbflipper.com
Кто использует?)
London, Swiss Cottage
Подборка книг от @jitbit, похоже пора расчехлять audible. Кто в Хампстеде жил, тот плохого не посоветует 😈
t.me/devfounder/96
London, Chalk Farm
@mobileunderhood @flipper_fb Использую для ReactNative. Даже написал плагин для работы с mobx/mobx-state-tree. github.com/khorark/mobx-f…
Hey @mweststrate, look at this beautiful crossover of @flipper_fb and #mobx for @reactnative!
P. S. It's Timur @ruggerprogrammr under the hood 🦊 twitter.com/AKhoroshikh/st…
London, Camden Town
London, Primrose Hill & West Hampstead
@mobileunderhood @flipper_fb а в чём профит от вашего флипера, почему стоит попробовать?
Похоже, о флиппере не знают. TLDR: это десктоп приложение которое подключается к вашим дебаг сборкам в эмуляторах/физических девайсах. Идет обмен данными и флиппер их визуализирует.
twitter.com/gordinmitya/st…
Ключевая концепция - плагины, что-то идет из коробки: логи, layout, network, images. Но главное - очень легко писать плагины для себя, для своих велосипедов и бизнес логики.
Плагин обычно состоит из двух частей: "фронт" на TypeScript + React живет в флиппере, принимает данные и показывает UI; "бэк" живет в вашем приложении и написан на вашем нативном языке поверх flipper api. О транспорте заботятся библиотеки на фронте и бэке (json over rscockets)
Много стадартных UI компонентов доступно из коробки (таблицы, просмотр JSON, поиск, деревья), но можно подключать любую js библиотеку для сложных штук
Подводные камни: любая debug интеграция не бесплатна, помните об этом. И точно следите, чтобы это не шло в prod builds.
Про эмиграцию в Китай и иммиграцию в Лондон.
Я очень рад, что мы сорвались в Китай когда нам было 25. 4 чемодана вещей, (включая бумажные книги!), любопытство и готовность к новому. Не думаю, что было бы так же легко сорваться, останься мы еще на 2-3 года в Москве.
В Китае много объективных недостатков, но было очень интересно. Но главное, что я увез, это понимание что есть разные пути, разные люди и нужно быть открытым новому. Даже если тебе что-то не нравится, можно разобраться почему так происходит и чему-то научиться не ломая себя
Главный недостаток (не считая жесткой корпоративной культуры) - экология. От смога не уберегут деньги. Носишь маски, в которых сложно дышать, дома фильтры, но это проникает в тебя. Где-то смог очень жесткий (север), где-то полегче (горы/юг на море), но он есть. Кто-то игнорирует.
При этом быт в Китае может быть невероятно комфортным в крупных городах и если ты готов тратить деньги. Мгогие экспаты полностью живут в пузырях. Я к этому не стремился, но полного погружения без китайского не получилось. Хотя в моем дворе сушили гусей и рыбацкие сети
Наверное я просто покидаю фоток :) Ханчжоу, город где я прожил 32 месяца, одна из бывших столиц Китая, один из крупнейших городов мира в 14-16 веках.
Прямо в городе, недалеко от центра Ханчжоу, на западном берегу Си Ху (Западного Озера), чайный плантации Лунцзин. Природа в Китае и Ханчжоу 💚
Шанхай, до сих пор один из любимых городов. Огромный? Да. При этом можно часами гулять по старому центру с французской концессией, на паромчике перебраться к небоскребам и прогуляться по набережной.
При этом в самом центре мегаполиса идет спокойная, почти деревенская жизнь. Скучаю по этой простоте
При этом, если вы хотите хипстерской жизни или вдруг захотели luxury - the sky is the limit. Выставки, бутики, рестораны. В Лондоне, например, намного сложнее найти хороший кофе, чем в Шанхае - удивительно, но в среднем кофе в Лондоне так себе.
Не Китай, но очень близко - Гонконг. Точно один из любимых городов, ментальный мост для нас из Азии в Лондон. Были несколько раз, играли и смотрели регби. В последний (пока) раз на обратном пути из Японии с кубка мира. Очень очень советую побывать
В HK все очень хорошо с регби - один из лучших турниров по регби-7 и неделя любительских турниров вокруг. Надеюсь через годик получится уже приехать :)
Пеерезд в Лондон был куда более осознанным шагом - из Шанхая уезжал уже контейнер вещей и Финик.
В Лондоне мы похоже надолго :)
Пора прощаться, мне очень понравилось, хотя было немного сумбурно :)
Под этим твитом я соберу в кучу разные треды, а вы подписывайтесь на @ruggerprogrammr - я всегда рад пообщаться, прогуляться по Лондону💚
P. S. Простите, что про мобильную разработку было совсем мало
Пока собираются проекты, расскажу как начал программировать и как продолжил. TLDR: мне очень повезло людьми вокруг - родители, учителя и друзья + мне с самого начала было интересно само программирование, и интересно до сих пор. И еще были олимпиады в школе и немного в универе.
Знакомство, как начал программировать, олимпиады, как учился в МГУ и ШАДе, первые работы twitter.com/mobileunderhoo…
Доброе утро! Сегодня буду поводить первое System Design, до этого были только Coding. Так что предлагаю поговорить о собеседованиях и поиске работы - между алибабой и фейсбуком я хорошо так узнал про это и написал заметку о своих приключениях twitter.com/ruggerprogramm…
Как я устраивался в ФБ и научился проходить собеседования - их было много в Европе twitter.com/mobileunderhoo…
Теперь про сами собеседования, что же с ними не так (или так). Об этом я тоже писал заметку, можно почитать что Тимур из 2019 думал об этом medium.com/@zloi.timur/fr…
2.1 И еще про собеседования twitter.com/mobileunderhoo…
Как узнать про культуру компаниии: с гигантами проще - книги, подкасты, статьи, записи с конференций. Вот подборка подкастов про фб, и было бы круто знать о них до выхода в фб. Мне повезло что нравится, но решение могло быть осознанным t.me/ruggerprogramm…
2.2 И еще twitter.com/mobileunderhoo…
Сегодня No Meeting Wednesday, полуофициальная традиция, так что сегодня у меня всего два созвона и одно интервью. За пустые блоки в календаре нужно бороться, и чем больше твои проекты, чем выше ты метишь, тем сложнее это делать Предлагаю сегодня поговорить о работе в фб и росте
О работе в ФБ - начало
twitter.com/mobileunderhoo…
Что-то меня вчера вырубило работой, сейчас постараюсь кратко дорассказать про мою работу в фб, а потом про рост внутри компании
3.1 Продолжение о работе в ФБ
twitter.com/mobileunderhoo…
Как же устроена работа в фб? Ответ: нет одного ответа. Какдая команда, каждый отдел (org) да и каждый разработчик сами решают как работать. Наверное, кто-то использует agile, кто-то трекает задачи, кто-то все держит в голове. Главное - чтобы ваши партнеры и "клиенты" были в курсе
3.2 Хаотичная работа работа
twitter.com/mobileunderhoo…
Как давать, просить и принимать фидбэк. Один из ключевых навыков для работы в несктуктуриванной и хаотичной среде. Я применяю фреймворк COIN, но можно запаковать и по-другому. Context, Observations, Impact, Next steps. Если что-то выкинуть, то работать будет хуже
3.3 Как просить и давать фидбэк
twitter.com/mobileunderhoo…
Пока собирается приложение, а я пытаюсь избежать созвона, расскажу о болях работы из дома (но полностью в офис я уже не вернусь): заточенная под офис инфраструктура, zoom fatigue, стирание границы между работой и домом, отсутсвие плюшек офиса (наименее критичное лично для меня)
3.4 Боли работы из дома
twitter.com/mobileunderhoo…
Какие плюсы работы в большой компании (с подвохами) 1.Есть возможность сфокусироваться только на том, что интересно и копать вглубь. Интересно мне делать dev tools/ui frameworks/code analysis/compilator plugins все время - есть такая возможность. Подвох - возможность, не гарантия
3.5 Плюсы и подвохи работы в гиганте
twitter.com/mobileunderhoo…
Чтобы всё не свалилось в хаос и написание не нужных красивых велосипедов есть система противовесов, компенсирующих автономность и свободу выбора работы: performance review и планирование. twitter.com/50megatonn/sta…
3.6 Противовес хаотичной работа - Performance review. Тут можно разговаривать бесконечно
twitter.com/mobileunderhoo…
После обеда будет Китай и алибаба, но перед этим давайте поговорим про получение/обновление знаний и поиск идей/вдохновения. Ваш любимый формат:
4 Кто как получает знания - я вот люблю подкасты и слушаю аудиокниги
twitter.com/mobileunderhoo…
Про конференции: кидайте любимые доклады в реплаи, а я расскажу про свой опыт посещения конференций (его почти нет!). Ну и опрос: ваш любимый тип докладов.
4.1 Про конференции и как так получилось, что я почти не бывал на них(
twitter.com/mobileunderhoo…
Про конференции: кидайте любимые доклады в реплаи, а я расскажу про свой опыт посещения конференций (его почти нет!). Ну и опрос: ваш любимый тип докладов.
4.2 Минутка рекламы - я буду на конференции Mobius рассказывать о Custom Dev Tools в общем и Flipper в частности
twitter.com/mobileunderhoo…
Work-life ballance сам себя не поправит, так что закончу работать пораньше. Work-life ballance был одной из причин уехать из Китая и уйти из Алибабы Тред о том, как я сорвался в Китай, стал первым разработчиком не говорящим по-китайски в алибабе и выгорел в режиме 996
5 Alibaba - как меня занесло в Китай
twitter.com/mobileunderhoo…
О работе в Алибабе. Жизнь в Китае четко поделилась на первые два года нормальной жизни vs. полгода в режиме #996 и увольнение. О том, как я сорвался в Китай не зная китайского тут: twitter.com/mobileunderhoo…
5.1 Темная сторона работы в Алибабе - 996
twitter.com/mobileunderhoo…
Регби! Пожалуй, лучший коммандный спорт😈 Главное моё увлечение, для меня это больше чем спорт - это способ знакомиться и сохранять дружбу, адаптироваться к новым местам и узнавать про них, часто это причина путешествовать и отличный способ отвлечься от работы! #rugbyfamily
Saturday is rugby day!
twitter.com/mobileunderhoo…
Flipper - Extensible mobile app debugger. It's a platform for debugging iOS, Android and React Native apps. Visualize,inspect,and control your apps from a simple desktop interface. Use it as is or extend it @flipper_fb fbflipper.com Кто использует?)
Немного про Flipper, попробуйте, если что пишите о проблемах или можете контрибьютить (пинайте меня, если вас игнорируют лол)
twitter.com/mobileunderhoo…
Про эмиграцию в Китай и иммиграцию в Лондон. Я очень рад, что мы сорвались в Китай когда нам было 25. 4 чемодана вещей, (включая бумажные книги!), любопытство и готовность к новому. Не думаю, что было бы так же легко сорваться, останься мы еще на 2-3 года в Москве.
Про переезды и жизнь в Китае и Лондоне
twitter.com/mobileunderhoo…
Еще раз спасибо, на связи тут @ruggerprogrammr
И иногда пишу тут t.me/ruggerprogramm…
До вечера поотвечаю на вопросы, если есть и сдам пост!
Совсем забыл - это все open source, локально собрать флипер занимает минуты две. Пишите плагины, делитесь ими :) github.com/facebook/flipp…
Бонус-трек - Шотландия. Тут самые красивые места в UK и очень переменчивая погода 🌈
Поезд из Гарри Поттера
Офис @mobileunderhood в Инвернессе
Today's rain is tomorrow's whisky
Isle of Jura - 200 человек, вискокурня и огромный остров без людей
Немного магии на Isle of Skye
Немного ветра и укрытие
Надежный друг
Спокойной ночи!