Как уменьшить количество кликов в зуме
После вынужденного перехода на удалёнку до меня стало долетать гораздо больше страданий, связанных с ужасным UI зума. Он на самом деле ужасный — требует не меньше трёх кликов, чтобы зайти на каждую встречу. Делюсь советом, который экономит целый клик (Самат, спасибо!).
Нужно купить Choosy — это такая утилитка, которая в зависимости от кликнутого урла запускает нужный браузер: можно, к примеру, фигму открывать в хроме вместо сафари, чтобы меньше жрать памяти. Для зума это тоже работает — добавляете ссылки на зум, и в следующий раз, когда в телеге кликаете на ссылку, у вас открывается не браузер, а сразу зумовский клиент.
P.S. Ещё это работает для ноушена — по умолчанию электроновское приложение ноушена не открывает ссылки notion.so, поэтому вы постоянно оказываетесь с двумя ноушенами вместо одного — в браузере и в электроне.
После вынужденного перехода на удалёнку до меня стало долетать гораздо больше страданий, связанных с ужасным UI зума. Он на самом деле ужасный — требует не меньше трёх кликов, чтобы зайти на каждую встречу. Делюсь советом, который экономит целый клик (Самат, спасибо!).
Нужно купить Choosy — это такая утилитка, которая в зависимости от кликнутого урла запускает нужный браузер: можно, к примеру, фигму открывать в хроме вместо сафари, чтобы меньше жрать памяти. Для зума это тоже работает — добавляете ссылки на зум, и в следующий раз, когда в телеге кликаете на ссылку, у вас открывается не браузер, а сразу зумовский клиент.
P.S. Ещё это работает для ноушена — по умолчанию электроновское приложение ноушена не открывает ссылки notion.so, поэтому вы постоянно оказываетесь с двумя ноушенами вместо одного — в браузере и в электроне.
Не продавливать по срокам
Неопытные менеджеры часто строят разговоры с программистами на давлении. Начиная от банального «5 дней, говоришь? А может, давай за 4, но без тестов?» и заканчивая манипулятивными просьбами расписать подробную смету по часам на каждое требование.
Это — ошибка: даже если программист под давлением пообещает срок меньше, результат от этого не приблизится. Во-первых, программист будет помнить, что срок назвал не он сам, а менеджер, а значит, если этот срок проебать, то уже не так и стыдно. Во-вторых, количество работы всё равно не уменьшается — если сделать пятидневную задачу за три дня, то оставшиеся два (а может, и больше) попадут в техдолг и выстрелят через пару месяцев.
Ну и, конечно, такие менеджеры не ценят своё время: гораздо проще получить предсказуемый результат через 5 дней, чем непредсказуемый через 3, но с риском потратить ещё 5 на исправление последствий техдолга или отношений с заказчиком.
Единственный нормальный способ уменьшить названный программистом срок — это спросить у него совета, какое требование из задачи выкинуть, чтобы стало легче работать. Все остальные — манипуляции, которые не приведут ни к чему, кроме сорванных дедлайнов.
Неопытные менеджеры часто строят разговоры с программистами на давлении. Начиная от банального «5 дней, говоришь? А может, давай за 4, но без тестов?» и заканчивая манипулятивными просьбами расписать подробную смету по часам на каждое требование.
Это — ошибка: даже если программист под давлением пообещает срок меньше, результат от этого не приблизится. Во-первых, программист будет помнить, что срок назвал не он сам, а менеджер, а значит, если этот срок проебать, то уже не так и стыдно. Во-вторых, количество работы всё равно не уменьшается — если сделать пятидневную задачу за три дня, то оставшиеся два (а может, и больше) попадут в техдолг и выстрелят через пару месяцев.
Ну и, конечно, такие менеджеры не ценят своё время: гораздо проще получить предсказуемый результат через 5 дней, чем непредсказуемый через 3, но с риском потратить ещё 5 на исправление последствий техдолга или отношений с заказчиком.
Единственный нормальный способ уменьшить названный программистом срок — это спросить у него совета, какое требование из задачи выкинуть, чтобы стало легче работать. Все остальные — манипуляции, которые не приведут ни к чему, кроме сорванных дедлайнов.
Рассказал в новом совете про CI\CD на простом языке — что это такое и зачем нужно.
Покажите это своему менеджеру и дизайнеру, и скорее внедряйте.
Покажите это своему менеджеру и дизайнеру, и скорее внедряйте.
Ремоут- и неремоут люди
Бывают ребята, работать с которыми удалённо просто невыносимо. Это чуваки, которые не умеют выражать свои мысли письменно. В офисе это прекрасные люди, с которыми приятно работать и поговорить за пивом, но на удалёнке вся приятность куда-то пропадает.
Это от них вместо развёрнутых запросов приходят сообщения в слэк вроде «привет, у нас корзина не работает». И не важно, что корзина ломается, только если положить в неё 150 товаров с мобильного интернета — ты, обеспокоенный, лезешь проверять мониторинг и метрики, а потом уже, увидев, что всё в порядке, начинаешь задавать вопросы.
Корни у неумения письменно общаться идут из детства. Ещё в школе нас приучают, что все сидят в одном кабинете, а если над заданием должно поработать пять школьников — они встают из-за парт и садятся в сторонке. Задачи в школе либо ставят устно, либо берут заранее заготовленные задачи из учебников — во времена, когда проектировали школьное образование, никому в голову не приходило, что в мире появится хоть что-либо, похожее на скайп, и люди смогут взаимодействовать, ни разу друг друга не увидев.
В неумении общаться удалённо нет ничего страшного — карантин уже заканчивается, вещи потихоньку возвращаются на место. Если вы всё ещё вынуждены работать на удалёнке с «офисными» ребятами, попробуйте пожёстче внедрить ежедневные встречи, когда вся команда собирается с видео и проговаривает все мантры из стандартного скрамовского дейли: вчера я сделал X, сегодня сделаю Y, беспокоит меня Z — обычно помогает.
Бывают ребята, работать с которыми удалённо просто невыносимо. Это чуваки, которые не умеют выражать свои мысли письменно. В офисе это прекрасные люди, с которыми приятно работать и поговорить за пивом, но на удалёнке вся приятность куда-то пропадает.
Это от них вместо развёрнутых запросов приходят сообщения в слэк вроде «привет, у нас корзина не работает». И не важно, что корзина ломается, только если положить в неё 150 товаров с мобильного интернета — ты, обеспокоенный, лезешь проверять мониторинг и метрики, а потом уже, увидев, что всё в порядке, начинаешь задавать вопросы.
Корни у неумения письменно общаться идут из детства. Ещё в школе нас приучают, что все сидят в одном кабинете, а если над заданием должно поработать пять школьников — они встают из-за парт и садятся в сторонке. Задачи в школе либо ставят устно, либо берут заранее заготовленные задачи из учебников — во времена, когда проектировали школьное образование, никому в голову не приходило, что в мире появится хоть что-либо, похожее на скайп, и люди смогут взаимодействовать, ни разу друг друга не увидев.
В неумении общаться удалённо нет ничего страшного — карантин уже заканчивается, вещи потихоньку возвращаются на место. Если вы всё ещё вынуждены работать на удалёнке с «офисными» ребятами, попробуйте пожёстче внедрить ежедневные встречи, когда вся команда собирается с видео и проговаривает все мантры из стандартного скрамовского дейли: вчера я сделал X, сегодня сделаю Y, беспокоит меня Z — обычно помогает.
Стрим без темы
А давайте в этот понедельник в 19:00 соберёмся на ютубе? Будет не обычный образовательный стрим — в этот раз мы просто поболтаем в свободной форме. Темы общения задаёте вы сами — заходите на https://app.sli.do/event/d33ahdeg и задавайте вопросы, или голосуйте за уже заданные.
Это — эксперимент: я целиком отдаю вам решение о том, что будет. Подойдёт что угодно: если принесёте код на джанге — сделаю ревью, если попросите рассказать, как планировать спринты так, чтобы всё успевать — поговорим об этом.
А давайте в этот понедельник в 19:00 соберёмся на ютубе? Будет не обычный образовательный стрим — в этот раз мы просто поболтаем в свободной форме. Темы общения задаёте вы сами — заходите на https://app.sli.do/event/d33ahdeg и задавайте вопросы, или голосуйте за уже заданные.
Это — эксперимент: я целиком отдаю вам решение о том, что будет. Подойдёт что угодно: если принесёте код на джанге — сделаю ревью, если попросите рассказать, как планировать спринты так, чтобы всё успевать — поговорим об этом.
Тупое правило менеджера: не написано, значит, не было
Тупое правило, которое здорово помогает менеджеру во всех спорных ситуациях.
Программист не сдал задачу вовремя, потому что не знал? Покажи, где это было написано. Если не нашёл — значит, дедлайна не было.
На встрече договорились что-то сделать и не записали? Значит, никому не надо.
Правило «не написано, значит, не было» здорово мотивирует писать минутки ко всем встречам и поддерживать актуальность задачников. Если тебе что-то от кого-то нужно, значит, ты сядешь и напишешь задачу с дедлайном — иначе тебя пошлют нафиг и будут правы.
#тупое_правило: Не написано, значит, не было.
Тупое правило, которое здорово помогает менеджеру во всех спорных ситуациях.
Программист не сдал задачу вовремя, потому что не знал? Покажи, где это было написано. Если не нашёл — значит, дедлайна не было.
На встрече договорились что-то сделать и не записали? Значит, никому не надо.
Правило «не написано, значит, не было» здорово мотивирует писать минутки ко всем встречам и поддерживать актуальность задачников. Если тебе что-то от кого-то нужно, значит, ты сядешь и напишешь задачу с дедлайном — иначе тебя пошлют нафиг и будут правы.
#тупое_правило: Не написано, значит, не было.
Что я делаю, когда простудился
Друзья, стрима сегодня не будет — я простудился. Новую дату напишу до конца недели, а пока, пользуясь случаем, расскажу что я делаю, когда заболел.
Для меня любое недомогание — это сигнал от организма, который нельзя игнорировать. Не важно, чем вызван этот сигнал — может я много работал или мало спал, может неправильно питался или просто подхватил вирус: при первых же признаках недомогания я бросаю все запланированные дела и уделяю своему организму максимум внимания. Я остаюсь дома, на целый день отключаюсь от работы и других дел — просто читаю книжки, смотрю фильмы и ничего не делаю.
Это может показаться нечестным — ведь я же могу работать, пусть и менее эффективно, зачем терять время? Но усталость, увы, имеет свойство накапливаться. И если организм накопил столько усталости, что оказался не в состоянии сопротивляться простейшей инфекции, то вряд ли у него хватит сил на нормальную когнитивную деятельность. Максимум, на что я способен в простуженном состоянии — быть реагирующим менеджером: просто обрабатывать внешние раздражители, не производя никакой ценности. Гораздо выгоднее для всех, если я за пару дней выберусь из такого состояния, чем буду в бесполезном состоянии обманывать всех, имитируя деятельность.
Возможно, именно благодаря этому подходу за последний год у меня случилось всего два таких дня.
Друзья, стрима сегодня не будет — я простудился. Новую дату напишу до конца недели, а пока, пользуясь случаем, расскажу что я делаю, когда заболел.
Для меня любое недомогание — это сигнал от организма, который нельзя игнорировать. Не важно, чем вызван этот сигнал — может я много работал или мало спал, может неправильно питался или просто подхватил вирус: при первых же признаках недомогания я бросаю все запланированные дела и уделяю своему организму максимум внимания. Я остаюсь дома, на целый день отключаюсь от работы и других дел — просто читаю книжки, смотрю фильмы и ничего не делаю.
Это может показаться нечестным — ведь я же могу работать, пусть и менее эффективно, зачем терять время? Но усталость, увы, имеет свойство накапливаться. И если организм накопил столько усталости, что оказался не в состоянии сопротивляться простейшей инфекции, то вряд ли у него хватит сил на нормальную когнитивную деятельность. Максимум, на что я способен в простуженном состоянии — быть реагирующим менеджером: просто обрабатывать внешние раздражители, не производя никакой ценности. Гораздо выгоднее для всех, если я за пару дней выберусь из такого состояния, чем буду в бесполезном состоянии обманывать всех, имитируя деятельность.
Возможно, именно благодаря этому подходу за последний год у меня случилось всего два таких дня.
Даже в чатах можно общаться нормально, если писать длинные сообщения
Важное открытие последних месяцев — оказывается, общаться в слаке бывает просто невыносимо, а бывает чуть менее невыносимо.
Просто невыносимо — это когда по работе ты общаешься так же, как с друзьями договариваешься пойти пиво в пятницу вечером: перекидываешься короткими сообщениями, а компьютер (и телефон!) постоянно пиликает уведомлениями, и вообще происходит всё то же, что я описывал в старом посте про слак и продуктивность.
Чуть менее невыносимо — это когда ты общаешься так же, как в почте: развёрнутыми понятными письмами с драматургией и колл-ту-экшенами, только письма эти пишешь в чате, а не в почте. Возьмите на вооружение, если цените своё внимание, но попали в команду, которая использует слак вместо электронной почты.
Важное открытие последних месяцев — оказывается, общаться в слаке бывает просто невыносимо, а бывает чуть менее невыносимо.
Просто невыносимо — это когда по работе ты общаешься так же, как с друзьями договариваешься пойти пиво в пятницу вечером: перекидываешься короткими сообщениями, а компьютер (и телефон!) постоянно пиликает уведомлениями, и вообще происходит всё то же, что я описывал в старом посте про слак и продуктивность.
Чуть менее невыносимо — это когда ты общаешься так же, как в почте: развёрнутыми понятными письмами с драматургией и колл-ту-экшенами, только письма эти пишешь в чате, а не в почте. Возьмите на вооружение, если цените своё внимание, но попали в команду, которая использует слак вместо электронной почты.
Forwarded from запуск завтра
Мы с Федей ищем технического директора в igooods себе на замену.
igooods — это доставка продуктов из гипермаркетов. Сотни тысяч клиентов, тысячи заказов в день, миллиард оборота в месяц. 36 городов России. В партнерах — Метро, Лента, Призма, Вкусвилл, Ашан, Глобус, Карусель, Окей.
Техническая команда — 31 человек. Под капотом рельса и реакт, нативные мобильные приложения для iOS и Android.
Вы заберёте разработку, которая находится в процессе трансформации от небольшой уютной тусовки к машине по зарабатыванию денег. За последние полгода производство стало работать чётче, но до швейцарских часов ему пока далеко — много вещей делаются на ручном контроле. Вам предстоит выстроить QA, доукомплековать продуктовые команды, до конца перейти на сервисную архитектуру (цель — через полгода перестать писать код в монолит) и создать систему управления техдолгом.
Вторая задача — подчинить разработку бизнесу, работая бок о бок с CPO. Каждый джуниор-фронтендер должен знать, на какую метрику повлияет задача, которую он сейчас делает, а любая гипотеза про деньги должна проверяться не дольше трёх недель.
Мы с Федей запустили эти процессы, но чтобы завершить работу, нужно жить в Питере.
Команда прекрасная, но это не значит, что вам не придется много работать руками. Оно того стоит — вы выстроите первоклассную разработку в одном из крупнейших сервисов доставки продуктов в России.
Офис в Питере, помощь с переездом. Подчинение напрямую владельцу бизнеса; основной рабочий партнер — CPO Андрей Родин.
Пишите краткий рассказ о себе мне в личку или на s@samat.me.
igooods — это доставка продуктов из гипермаркетов. Сотни тысяч клиентов, тысячи заказов в день, миллиард оборота в месяц. 36 городов России. В партнерах — Метро, Лента, Призма, Вкусвилл, Ашан, Глобус, Карусель, Окей.
Техническая команда — 31 человек. Под капотом рельса и реакт, нативные мобильные приложения для iOS и Android.
Вы заберёте разработку, которая находится в процессе трансформации от небольшой уютной тусовки к машине по зарабатыванию денег. За последние полгода производство стало работать чётче, но до швейцарских часов ему пока далеко — много вещей делаются на ручном контроле. Вам предстоит выстроить QA, доукомплековать продуктовые команды, до конца перейти на сервисную архитектуру (цель — через полгода перестать писать код в монолит) и создать систему управления техдолгом.
Вторая задача — подчинить разработку бизнесу, работая бок о бок с CPO. Каждый джуниор-фронтендер должен знать, на какую метрику повлияет задача, которую он сейчас делает, а любая гипотеза про деньги должна проверяться не дольше трёх недель.
Мы с Федей запустили эти процессы, но чтобы завершить работу, нужно жить в Питере.
Команда прекрасная, но это не значит, что вам не придется много работать руками. Оно того стоит — вы выстроите первоклассную разработку в одном из крупнейших сервисов доставки продуктов в России.
Офис в Питере, помощь с переездом. Подчинение напрямую владельцу бизнеса; основной рабочий партнер — CPO Андрей Родин.
Пишите краткий рассказ о себе мне в личку или на s@samat.me.
А какую я добавил ценность?
Хороший менеджер задаёт этот вопрос во время каждой своей активности.
Какую ценность я добавил, когда сходил на встречу? Был ли полезен, принёс что-то новое или тупил в фейсбук?
Какую ценность я добавил, когда ответил на письмо? Легче ли стало совершить следующий шаг по проекту?
Какую ценность я добавил, когда поговорил с программистом? Стало ли ему понятнее, что и как делать на проекте?
Какую ценность я добавил за неделю руководства отделом? А за месяц?
Если нечего ответить, значит пора переставать заниматься деятельностью, которая не приносит ценности: отказаться от встреч с командой, которой ты не нужен, не слать пустые отписки на письма, не отвлекать программистов. Или просто отдохнуть.
Хороший менеджер задаёт этот вопрос во время каждой своей активности.
Какую ценность я добавил, когда сходил на встречу? Был ли полезен, принёс что-то новое или тупил в фейсбук?
Какую ценность я добавил, когда ответил на письмо? Легче ли стало совершить следующий шаг по проекту?
Какую ценность я добавил, когда поговорил с программистом? Стало ли ему понятнее, что и как делать на проекте?
Какую ценность я добавил за неделю руководства отделом? А за месяц?
Если нечего ответить, значит пора переставать заниматься деятельностью, которая не приносит ценности: отказаться от встреч с командой, которой ты не нужен, не слать пустые отписки на письма, не отвлекать программистов. Или просто отдохнуть.
#вопрос Реально ли стартануть в качестве начинающего программиста в 50 лет?
У меня, к сожалению, нет успешных историй на эту тему, но мне кажется, что вполне реально. Всё, что нужно, чтобы стать программистом, лежит на поверхности: интерпретатор ставится за 5 минут на любой компьютер, а книги по-прежнему продаются в интернет-магазинах.
Я не вижу ни одного препятствия, чтобы выполнить 5 из 6 пунктов из моего списка как вкатить в программирование. Предположу, что проблема будет только с шестым пунктом — найти команду с высокой инженерной культурой: эйджизм, сексизм и кучу других -измов никто не отменял.
Единственный вариант, который я вижу, — повысить свою ценность до устройства на работу. Попробуйте сделать такое крутое портфолио, которое только можете, — много наконтрибьютьте в опенсорс или напишите какой-нибудь большой сложный проект, больше чем стандартный todo-mvc. Это тяжёлый путь: пойти джуном в нормальную компанию гораздо легче. Зато этот путь зависит целиком от вашего желания, а не от предрассудков окружающих.
Надеюсь, у вас всё получится!
У меня, к сожалению, нет успешных историй на эту тему, но мне кажется, что вполне реально. Всё, что нужно, чтобы стать программистом, лежит на поверхности: интерпретатор ставится за 5 минут на любой компьютер, а книги по-прежнему продаются в интернет-магазинах.
Я не вижу ни одного препятствия, чтобы выполнить 5 из 6 пунктов из моего списка как вкатить в программирование. Предположу, что проблема будет только с шестым пунктом — найти команду с высокой инженерной культурой: эйджизм, сексизм и кучу других -измов никто не отменял.
Единственный вариант, который я вижу, — повысить свою ценность до устройства на работу. Попробуйте сделать такое крутое портфолио, которое только можете, — много наконтрибьютьте в опенсорс или напишите какой-нибудь большой сложный проект, больше чем стандартный todo-mvc. Это тяжёлый путь: пойти джуном в нормальную компанию гораздо легче. Зато этот путь зависит целиком от вашего желания, а не от предрассудков окружающих.
Надеюсь, у вас всё получится!
Цель встречи
Отличный способ сэкономить время на любой встрече — это писать её цель. Типа «я сейчас иду к заказчику, чтобы договориться об изменении вот этих требований: раз, два, три». Или «я выступаю перед командой, чтобы донести вот эти, эти и эти мысли». Или «Я созваниваюсь 1:1, чтобы узнать, насколько мой сотрудник чувствует себя счастливым в рамках текущего проекта».
Цель — это не агенда: скорее это внутренняя задача, не достигнув которой со встречи лучше не уходить.
Такая внутренняя цель здорово сокращает время: имея перед глазами конкретную задачу, вы будете меньше отклоняться от повестки. А ещё, чётко сформулировав цель, иногда понимаешь, что встречу лучше не проводить или проводить в другом формате. К примеру, понимаешь, что вместо того, чтобы посадить двух человек в одну комнату, занимаешься челночной дипломатией, договариваясь с каждым в отдельности, или созываешь встречу на тему, на которую лучше написать письмо.
Дополнение от Марьяны Онысько: «А еще, когда ты прописываешь цель встречи, то становится понятно, нужна ли она вообще. Иногда вопрос решается просто парой сообщений в чате»
Отличный способ сэкономить время на любой встрече — это писать её цель. Типа «я сейчас иду к заказчику, чтобы договориться об изменении вот этих требований: раз, два, три». Или «я выступаю перед командой, чтобы донести вот эти, эти и эти мысли». Или «Я созваниваюсь 1:1, чтобы узнать, насколько мой сотрудник чувствует себя счастливым в рамках текущего проекта».
Цель — это не агенда: скорее это внутренняя задача, не достигнув которой со встречи лучше не уходить.
Такая внутренняя цель здорово сокращает время: имея перед глазами конкретную задачу, вы будете меньше отклоняться от повестки. А ещё, чётко сформулировав цель, иногда понимаешь, что встречу лучше не проводить или проводить в другом формате. К примеру, понимаешь, что вместо того, чтобы посадить двух человек в одну комнату, занимаешься челночной дипломатией, договариваясь с каждым в отдельности, или созываешь встречу на тему, на которую лучше написать письмо.
Дополнение от Марьяны Онысько: «А еще, когда ты прописываешь цель встречи, то становится понятно, нужна ли она вообще. Иногда вопрос решается просто парой сообщений в чате»
#вакансия
Продакт и проджект в igooods
Мы ищем двух менеджеров:
— Продакт на поиск и сервис рекомендаций
— Проджект в команду ритейла
Работа в офисе в Питере. Денег — норм, офис отличный, коллектив — огонь, остальные подробности — по ссылкам.
Продакт и проджект в igooods
Мы ищем двух менеджеров:
— Продакт на поиск и сервис рекомендаций
— Проджект в команду ритейла
Работа в офисе в Питере. Денег — норм, офис отличный, коллектив — огонь, остальные подробности — по ссылкам.
FEDOR BORSHEV
#вакансия Продакт и проджект в igooods Мы ищем двух менеджеров: — Продакт на поиск и сервис рекомендаций — Проджект в команду ритейла Работа в офисе в Питере. Денег — норм, офис отличный, коллектив — огонь, остальные подробности — по ссылкам.
Упс, ссылка на продакта неправильная, правильная — http://bit.ly/igooods-product-fix
igooods on Notion
Продакт-менеджер в Поиск | Notion
Кто нам нужен
Эволюция парольных менеджеров
Моим первым менеджером паролей был KeePassX. Гиковская штуковина — пароли хранятся в локальном файле, файл можно синхронизировать чем угодно, к примеру Dropbox или ownCloud, если вы параноик.
Потом было два года Dashlane — красивого монстра со встроенным VPN и мониторингом дарквеба. К сожалению, за красотой скрывалась очень кривая реализация: автозаполнение (главная функция парольного менеджера) иногда просто переставало работать. Больше всего меня бесил театр безопасности, когда меня просили ввести цифры с картинки, чтобы «авторизовать» браузер. При этом, если цифры не вводить, всё продолжало работать.
В какой-то момент я настолько начал страдать от Dashlane, что всерьёз рассматривал переход на Bitwarden — кто не знает, это такая система хранения паролей для собственного сервера.
В итоге после очередной перезагрузки из-за зависшего менеджера паролей я перешёл на 1Password: менее красивый, но надёжный как топор. Автозаполнение работает везде, кроме сайта Тинькофф, синхронизируется моментально, не зависало вообще ни разу. Уже третий год на нём, очень советую.
Моим первым менеджером паролей был KeePassX. Гиковская штуковина — пароли хранятся в локальном файле, файл можно синхронизировать чем угодно, к примеру Dropbox или ownCloud, если вы параноик.
Потом было два года Dashlane — красивого монстра со встроенным VPN и мониторингом дарквеба. К сожалению, за красотой скрывалась очень кривая реализация: автозаполнение (главная функция парольного менеджера) иногда просто переставало работать. Больше всего меня бесил театр безопасности, когда меня просили ввести цифры с картинки, чтобы «авторизовать» браузер. При этом, если цифры не вводить, всё продолжало работать.
В какой-то момент я настолько начал страдать от Dashlane, что всерьёз рассматривал переход на Bitwarden — кто не знает, это такая система хранения паролей для собственного сервера.
В итоге после очередной перезагрузки из-за зависшего менеджера паролей я перешёл на 1Password: менее красивый, но надёжный как топор. Автозаполнение работает везде, кроме сайта Тинькофф, синхронизируется моментально, не зависало вообще ни разу. Уже третий год на нём, очень советую.
#вопрос Стоит ли менять работу, если уже порядком поднадоело, но есть новые проекты и в целом хоть какой‑то прогресс ощутим?
В бюро вышел мой новый совет — рассказываю про FOMO при смене места работы.
В бюро вышел мой новый совет — рассказываю про FOMO при смене места работы.
Самат сделал классный обзор инструментов для рисования диаграмм и рассказал, как мы применяем их в разработке igooods.
Накидаете в комментах своих инструментов?
Накидаете в комментах своих инструментов?
vc.ru
С помощью диаграмм можно объяснить что угодно. Тем более для этого есть классные инструменты — Сервисы на vc.ru
Язык коммуникации, о котором все забывают.
#вопрос Я руководитель web-разработки и собираюсь перейти в другую компанию, где будет другая команда и другие проекты. Как можно смягчить и сделать этот переход наиболее комфортным с точки зрения стресса?
Кажется, самый большой источник фрустрации для руководителя, который приходит в новую команду, — это сама команда. Люди ставят не те статусы в жире, пишут код по airbnb вместо standard, беспокоятся о непривычных проблемах, а по пятницам пьют стауты вместо IPA. Самое главное — не начать судорожно это всё менять.
Вот представьте сами — команда привыкла к трёхнедельным спринтам, а вы такой на белом коне, вооружившись словами вроде «декомпозиция», меняете спринты на недельные. И уже потом выясняете, что спринты такие длинные потому, что команда пилит только большие задачи, а на срочные и мелкие есть отдельная линия саппорта, которая вообще работает по канбану.
Или ещё хуже — команда работает по трёхнедельным спринтам, а вы привыкли к недельным, но менять боитесь (как бы чего не вышло) и страдаете.
Первый шаг в новой команде — это привыкнуть: не пытаться что-то поменять в первую же неделю, а понять и с уважением принять текущий процесс и привычки. То есть сначала научиться играть по их правилам, а потом уже внедрять свои. Если у вас нет аллергии к русскому селф-хелпу, почитайте на эту тему 45 татуировок менеджера — там есть целая глава про это.
Кажется, самый большой источник фрустрации для руководителя, который приходит в новую команду, — это сама команда. Люди ставят не те статусы в жире, пишут код по airbnb вместо standard, беспокоятся о непривычных проблемах, а по пятницам пьют стауты вместо IPA. Самое главное — не начать судорожно это всё менять.
Вот представьте сами — команда привыкла к трёхнедельным спринтам, а вы такой на белом коне, вооружившись словами вроде «декомпозиция», меняете спринты на недельные. И уже потом выясняете, что спринты такие длинные потому, что команда пилит только большие задачи, а на срочные и мелкие есть отдельная линия саппорта, которая вообще работает по канбану.
Или ещё хуже — команда работает по трёхнедельным спринтам, а вы привыкли к недельным, но менять боитесь (как бы чего не вышло) и страдаете.
Первый шаг в новой команде — это привыкнуть: не пытаться что-то поменять в первую же неделю, а понять и с уважением принять текущий процесс и привычки. То есть сначала научиться играть по их правилам, а потом уже внедрять свои. Если у вас нет аллергии к русскому селф-хелпу, почитайте на эту тему 45 татуировок менеджера — там есть целая глава про это.
Обойти сбоку
Когда мы запускали UIG, я потратил 4 часа на одну простую задачу — закрыть демосайт на Basic-авторизацию. Дело в том, что у нас внутри уже был свой механизм авторизации на JWT, и фронтенд слал эти самые JWT прямо в HTTP-хедере Authorization. Basic-авторизация точно так же использует этот хедер, посылая там логин и пароль, которые вы вводите в стандартное окно. Получился конфликт: фронтенд хочет послать один заголовок Authorization, а браузер — другой. Вылезла куча проблем — то сайт отваливался на мобилках, то бекенд отвечал 403 при SSR.
Я попробовал кучу разных вариантов, от установки nginx (которого изначально в архитектуре не было) и до того, что написал прослойку для express, которая вырезала хедер Authorization так, чтобы его видел только стоящий выше traefik. В итоге, потратив 4 часа, я предпочёл объяснить заказчику, что сайт мы, скорее всего, закрыть не сможем — так и забили, висели с открытой демкой.
А потом пришёл Самат и за 5 минут прямо на встрече предложил сделать дополнительную авторизацию не Basic, а просто на куках: всех дел на 15 минут.
В этой ситуации я повёл себя как плохой программист: увидел проблему (два хедера Authorization) и пошёл её решать, размахивая всеми инструментами, которые только знаю. Самат повёл себя как менеджер: не владея горой инструментов, он просто обошёл проблему сбоку.
Когда в следующий раз код, который вы пилите, покажется вам сложным или решения вашей проблемы не будет на первой странице гугля, подумайте — а то ли вы вообще делаете? Может, можно обойти сбоку? Поступаете ли вы как плохой программист или как хороший менеджер?
Когда мы запускали UIG, я потратил 4 часа на одну простую задачу — закрыть демосайт на Basic-авторизацию. Дело в том, что у нас внутри уже был свой механизм авторизации на JWT, и фронтенд слал эти самые JWT прямо в HTTP-хедере Authorization. Basic-авторизация точно так же использует этот хедер, посылая там логин и пароль, которые вы вводите в стандартное окно. Получился конфликт: фронтенд хочет послать один заголовок Authorization, а браузер — другой. Вылезла куча проблем — то сайт отваливался на мобилках, то бекенд отвечал 403 при SSR.
Я попробовал кучу разных вариантов, от установки nginx (которого изначально в архитектуре не было) и до того, что написал прослойку для express, которая вырезала хедер Authorization так, чтобы его видел только стоящий выше traefik. В итоге, потратив 4 часа, я предпочёл объяснить заказчику, что сайт мы, скорее всего, закрыть не сможем — так и забили, висели с открытой демкой.
А потом пришёл Самат и за 5 минут прямо на встрече предложил сделать дополнительную авторизацию не Basic, а просто на куках: всех дел на 15 минут.
В этой ситуации я повёл себя как плохой программист: увидел проблему (два хедера Authorization) и пошёл её решать, размахивая всеми инструментами, которые только знаю. Самат повёл себя как менеджер: не владея горой инструментов, он просто обошёл проблему сбоку.
Когда в следующий раз код, который вы пилите, покажется вам сложным или решения вашей проблемы не будет на первой странице гугля, подумайте — а то ли вы вообще делаете? Может, можно обойти сбоку? Поступаете ли вы как плохой программист или как хороший менеджер?
Запись стрима в прошлый понедельник
У меня наконец дошли руки добавить тайм-кодов, так что ловите запись.
Вот, что было интересного:
02:53 Как работаешь с техдолгом в команде?
08:50 Как планировать спринты, чтобы всё успевать?
11:01 Как выращивать людей в команде?
14:31 Что делать с легаси? Пример igooods
20:45 Как разработчику увеличить свой доход в 10 раз?
26:42 Получилось ли с Саматом заработать кучу денег?
27:04 Когда лучше брать джунов,
31:19 Как архитектурно правильно начинать новый проект?
37:24 Как следишь за производительностью программистов в команде?
40:41 Как видишь перспективы развития no-code?
45:54 Как понять, что у проекта исчерпывающая документация?
47:23 Где искать мотивацию работать, когда начинаешь ненавидеть проект?
51:44 Нет хобби кроме работы
52:24 Что значит взять на себя ответственность? Как и чем отвечать за неудачу?
57:46 Что будет с фронтендом и бекендом через 20–30 лет?
59:52 Куда лучше пойти джуну — на галеру или в стартап?
01:02:22 Переквалифицироваться в программисты после 40, миф или реальность?
01:05:36 Как тимлиду правильно устроить процесс делегирования задач, чтобы самому всё не контролировать?
01:08:45 Как развиваться project-менеджеру? Будет ли профессия актуальна в будущем?
01:10:29 Как продакту понять, о чём говорят разработчики?
01:12:16 Как думаешь, схлопнется ли скоро пузырь AI и ML?
01:14:30 Как совмещать семью и работу?
01:15:54 Как лучше учиться фундаментальным знаниям? Посоветуешь доступные гуманитарию книги и курсы?
01:18:18 Как найти и распознать техлида, способного лидить бек, фронт и тест-активности?
01:21:45 Важна ли декомпозиция задач, или это вмешательство в художественный процесс разработки?
01:25:19 Куда и как развиваться синьёру (в техническом плане)?
01:26:45 Инвестириуешь? Через какого брокера? В кого?
01:28:10 Что делать, если понимаешь, что коллеги технически не растут?
01:30:29 Как ты повышаешь у разработчиков ответственность за задачи?
01:32:39 В чём тебе стоило бы улучшить свои навыки? Какие области роста видишь у себя?
01:36:27 Как онбордить новых разработчиков, если документации и сервисов с интеграциями очень много?
01:37:20 Резко упало качество и скорость разработки, выросла сложность задач. Что делать?
01:39:08 Девопс в команде. Дань хайпу или есть польза?
01:41:20 Какие технические знания не устареют через 10 лет?
01:42:14 Есть ли жизнь без скрама и спринтов?
01:43:21 Как проджект-менеджеру перейти во фронтенд? Может сначала в QA?
01:44:11 Как ты вёл два беклога, для бизнеса в трелло, а для команды — в гитхабе?
01:46:53 Что такое высокая инженерная культура и как её распознать?
01:49:52 Как выбираешь на чём сфокусировать команду в устаревающем проекте на саппорте?
01:50:34 Как приучал себя к регулярным повторяющимся активностям, таким как блог или телеграм?
01:51:41 Можно ли долго вести проект без код-ревью? Как уменьшить временные затраты на этот этап?
01:53:44 О чём писать в блоге разработчика?
Честно говоря, я крайне не доволен стримом — пересматривая запись я понимаю, что мог бы ответить гораздо полнее и интереснее. Ну, ничего страшного — теперь я знаю, как готовиться, поэтому через пару недель устроим ещё один.
Ну и спасибо всем, кто пришёл!
У меня наконец дошли руки добавить тайм-кодов, так что ловите запись.
Вот, что было интересного:
02:53 Как работаешь с техдолгом в команде?
08:50 Как планировать спринты, чтобы всё успевать?
11:01 Как выращивать людей в команде?
14:31 Что делать с легаси? Пример igooods
20:45 Как разработчику увеличить свой доход в 10 раз?
26:42 Получилось ли с Саматом заработать кучу денег?
27:04 Когда лучше брать джунов,
31:19 Как архитектурно правильно начинать новый проект?
37:24 Как следишь за производительностью программистов в команде?
40:41 Как видишь перспективы развития no-code?
45:54 Как понять, что у проекта исчерпывающая документация?
47:23 Где искать мотивацию работать, когда начинаешь ненавидеть проект?
51:44 Нет хобби кроме работы
52:24 Что значит взять на себя ответственность? Как и чем отвечать за неудачу?
57:46 Что будет с фронтендом и бекендом через 20–30 лет?
59:52 Куда лучше пойти джуну — на галеру или в стартап?
01:02:22 Переквалифицироваться в программисты после 40, миф или реальность?
01:05:36 Как тимлиду правильно устроить процесс делегирования задач, чтобы самому всё не контролировать?
01:08:45 Как развиваться project-менеджеру? Будет ли профессия актуальна в будущем?
01:10:29 Как продакту понять, о чём говорят разработчики?
01:12:16 Как думаешь, схлопнется ли скоро пузырь AI и ML?
01:14:30 Как совмещать семью и работу?
01:15:54 Как лучше учиться фундаментальным знаниям? Посоветуешь доступные гуманитарию книги и курсы?
01:18:18 Как найти и распознать техлида, способного лидить бек, фронт и тест-активности?
01:21:45 Важна ли декомпозиция задач, или это вмешательство в художественный процесс разработки?
01:25:19 Куда и как развиваться синьёру (в техническом плане)?
01:26:45 Инвестириуешь? Через какого брокера? В кого?
01:28:10 Что делать, если понимаешь, что коллеги технически не растут?
01:30:29 Как ты повышаешь у разработчиков ответственность за задачи?
01:32:39 В чём тебе стоило бы улучшить свои навыки? Какие области роста видишь у себя?
01:36:27 Как онбордить новых разработчиков, если документации и сервисов с интеграциями очень много?
01:37:20 Резко упало качество и скорость разработки, выросла сложность задач. Что делать?
01:39:08 Девопс в команде. Дань хайпу или есть польза?
01:41:20 Какие технические знания не устареют через 10 лет?
01:42:14 Есть ли жизнь без скрама и спринтов?
01:43:21 Как проджект-менеджеру перейти во фронтенд? Может сначала в QA?
01:44:11 Как ты вёл два беклога, для бизнеса в трелло, а для команды — в гитхабе?
01:46:53 Что такое высокая инженерная культура и как её распознать?
01:49:52 Как выбираешь на чём сфокусировать команду в устаревающем проекте на саппорте?
01:50:34 Как приучал себя к регулярным повторяющимся активностям, таким как блог или телеграм?
01:51:41 Можно ли долго вести проект без код-ревью? Как уменьшить временные затраты на этот этап?
01:53:44 О чём писать в блоге разработчика?
Честно говоря, я крайне не доволен стримом — пересматривая запись я понимаю, что мог бы ответить гораздо полнее и интереснее. Ну, ничего страшного — теперь я знаю, как готовиться, поэтому через пару недель устроим ещё один.
Ну и спасибо всем, кто пришёл!
YouTube
Fedor Borshev Live — Стрим без темы #1
Общаемся на свободные темы.
02:53 Как работаешь с техдолгом в команде?
08:50 Как планировать спринты, чтобы всё успевать?
11:01 Как выращивать людей в команде?
14:31 Что делать с легаси? Пример igooods
20:45 Как разработчику увеличить свой доход в 10 раз?…
02:53 Как работаешь с техдолгом в команде?
08:50 Как планировать спринты, чтобы всё успевать?
11:01 Как выращивать людей в команде?
14:31 Что делать с легаси? Пример igooods
20:45 Как разработчику увеличить свой доход в 10 раз?…