FEDOR BORSHEV

Пишу о производстве сложных проектов, управлении продуктами, профессиональном росте программистов

FEDOR BORSHEV
Управление проектами
Подписаться
Разработчик отказывается делать фичу

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

А как вы (менеджеры и программисты) строите диалог в таких ситуациях?

FEDOR BORSHEV
Управление проектами
Подписаться

FEDOR BORSHEV
Управление проектами
Подписаться
«Ты сделал говно»

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


- это же самая обычная обратная связь. Когда коллектив видит говно, но не кричит о нём, его участники как бы соглашаются: да, у нас можно делать говно, и мы никого не будем учить делать неговно, пусть сами разбираются.

Представьте, если первоклассник принёс учителю решение, что 2 x 2 = 3, а учитель в ответ выражает просто мягкое неодобрение, но не говорит, что правильно будет 4? Математика никогда не откроется ребёнку как точная наука, скорее ощущение будет «ну, я что-то делаю, что-то, наверное, получается».

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

Важно
- именно «ты сделал говно», а не «ты
- мудак». Критиковать можно только работу, но не личность.

FEDOR BORSHEV
Управление проектами
Подписаться

#вопрос А как ты понимаешь, кому именно нужно хвастаться на ретро? Что делать, если не хватает технических знаний, чтобы понять, кто и что сделал хорошего?

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

В командах, где у меня не было технологической экспертизы (к примеру, igooods с Ruby),
- я выцеплял такие вещи через встречи с техлидами. Если техлиды сами не приносят хорошие новости, можно использовать те же самые пулл-реквесты: просто приносите на эти встречи всё, чем, по вашему мнению, можно было бы похвастаться, а ребята подскажут, что из этого действительно важно.

P. S. Вот сервис, который мы написали в ГМ, чтобы каждому участнику команды ежедневно на почту скидывался список закрытых задач. Приспособить его под дайджест закрытых пулл-реквестов
- плёвое дело.

FEDOR BORSHEV
Управление проектами
Подписаться
Жизнь без будильников Уже 6 лет я почти не пользуюсь будильником.

Конечно, будильнику не куда девается в экстраординарных ситуациях вроде странных перелётов или ранних встреч, но это
- форс-мажор: в основной жизни будильника у меня нет.

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

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

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

Парадоксальным образом мне удаётся проснуться на все встречи, которые я назначаю с утра. Мне в этом помогают большие запасы времени
- если встреча назначена на 11:00, значит, ложиться надо в 22:00, чтобы к 09:00 успеть проснуться и выполнить все утренние ритуалы.

Кстати, если интересуетесь сном, посмотрите простую ссылку fixsleep.link, там прекрасный Никита Колмогоров собрал 17 советов, которые быстро чинят сон.

Голосовалка: рассказывать ли дальше про мои утренние ритуалы или давай пиши про менеджмент?

FEDOR BORSHEV
Управление проектами
Подписаться
Не экономить на инфраструктуре

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

Вроде бы для меня всегда было очевидно, что нельзя экономить на эксплуатации
- в ГдеМатериале я всегда покупал для программистов самое лучше
- Гитхаб и Circle CI вместо Гитлаба и Жиры, gemfury вместо костыльных собственных реестров (github package тогда ещё не было), pusher.com вместо настройки вебсокетов и т. д.

Однако на себе, а особенно на своём бизнесе (ведь может не получиться же!), я привык экономить. Вместо прекрасной чатры для поддержки я настраивал какие-то мутные гугл-группы. Вместо удобного хостинга на Digital Ocean я долго думал, как безопасно разместить файлы курсов в том же бакете, где я храню свои бекапы. Хорошо хоть не додумался сам собирать сайт вместо тильды или писать парсер выписок из банка вместо выделения специальной карты для учёта расходов.

В итоге из-за тысячи рублей в месяц я потратил кучу ресурсов, которую мог бы обратить в пользу: к примеру, подготовить дополнительные 10 минут к вебинару, написать 5–6 интересных постов в канал или просто хорошо отдохнуть.

Не делайте так: лучше побольше заработать, чем поменьше потратить.

FEDOR BORSHEV
Управление проектами
Подписаться
Вход рубль, выход — два

Вход рубль, выход
- два

В любом, даже самом молодом продукте, новую фичу запилить легче, чем её выпилить. Вот представьте, что вы сделали у себя в магазине, скажем, поддержку промокодов. Это затрагивает код для создания заказа, веб, два мобильных приложения, а ещё на бекенде появляется какое-нибудь поле «скидка по промокоду», которое заполняется автоматически для выгрузки заказа в бухгалтерию.

Теперь представьте, что вы прикинули стоимость поддержки этой фичи и решили свои промокоды выпилить.

Вам нужно точно так же, как в начале, скоординировать три или четыре команды: чтобы фронты сначала убрали промокод у себя, прежде чем его выпилят с бека. Вам нужно предупредить бухгалтерию, что поле «скидка по промокоду» пропадёт из выгрузки в какой-то момент. Вам нужно рассказать тому десятку веб-мастеров из партнёрки, в которую вы вписались, что ваши промокоды больше не работают. Вам нужно объявить в базе все колонки, которые хранили промокоды как легаси. Скорее всего, на беке вы будете выпиливать её в два или три этапа
- сначала просто отключите функциональность, потом начнёте выпиливать код, потом через пару лет (финансы же)
- чистить данные.

Ответственный за выпиливание менеджер может просто забить на любом этапе
- вряд ли с него на квартальном планировании кто-нибудь спросит за выпиленные фичи. Если менеджер забьёт, код так и останется висеть мёртвым грузом, а значит, жрать деньги на свою поддержку.

FEDOR BORSHEV
Управление проектами
Подписаться
Всегда очень нервничаю перед такими анонсами, но всё же:

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

А ещё остаётся набрать меньше 20 подписчиков, чтобы сделать закрытый ламповый уютненький патронский чатик в дискорде.

FEDOR BORSHEV
Управление проектами
Подписаться
Вышел новый совет:

Вышел новый совет: как и о чём поговорить с руководителем, который ведёт себя некомпетентно

FEDOR BORSHEV
Управление проектами
Подписаться
Ищем React Native разработчика в OctaZone

#вакансия

OctaZone
- мобильное iOS приложение для тренировок дома, на улице или в зале. Приложение разрабатывается в партнёрстве с двукратным чемпионом мира UFC Хабибом Нурмагомедовым. Пользователь получает персональную программу тренировок и тренируется вместе с профессиональным спортсменом. До конца года мы запустим маркетинг и получим первую тысячу пользователей. Наша амбиция
- в следующем году войти в TOP 5 приложений категории Health &
Fitness в США, Канаде, Британии и Австралии.

Это стартап. Основатель
- предприниматель с бекграундом в веб разработке и маркетинге
- Арсен Ибрагимов. Инвестор
- FunBox, с деньгами проблем нет. В команде сейчас 6 человек, двое из них разработчики. Есть понятный план роста и директор по маркетингу который этот рост сделает.

Приложению 3 месяца от роду, легаси нет. Сейчас только iOS-приложение на react native, на бэкенде php, api с документацией. Большим плюсом будет знание бэкенда на php, чтобы сделать фичу целиком, а не только в приложении.

Работа удаленная, фултайм. Мы работаем из Киева, Москвы, Петербурга и Бишкека. Встречаемся в Zoom, ведём задачи в Jira, переписываемся в Telegram. Зарплата 100
- 200 тыс руб.

Пишите @iamarsenibragimov в телегу. После знакомства мы дадим доступ к коду и предложим сделать небольшую фичу (за деньги). Если мы друг другу понравимся
- начнём работать фултайм.

FEDOR BORSHEV
Управление проектами
Подписаться
Сдавать с первого раза

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

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

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

Я говорю о простых случаях, которые может заметить кто угодно, банальном «нажимаю на кнопку
- получаю ошибку». Непосредственных причин такой хуйни может быть много
- CI упал, код не прошёл валидацию\тесты, программист забыл сделать git push.

А вот фундаментальная причина одна, и ее легко исправить
- это непонимание definition of done. В случае бага все просто
- баг не воспроизводится на продакшене. В сложных фичах приходится задавать вопросы
- что постановщик ожидает получить от фичи? Какие самые частые сценарии использования? В каком виде лучше показывать результат?

Самое лучшее средство от непонимания definition of done
- всегда подкреплять свои слова доказательством. Пофиксил баг
- приложи скриншот. Выкатил фичу
- запиши видосик.

Если не понимаешь, что скриншотить/записывать
- иди за пониманием задачи к тимлиду или менеджеру.

FEDOR BORSHEV
Управление проектами
Подписаться
Главный принцип найма самостоятельных людей

Когда мы нанимаем человека на должность, которая подразумевает много самостоятельности (а я на другие стараюсь не нанимать), на собеседовании нужно определить, собственно, его уровень самостоятельности. Сделать это точно без испытательного срока мне кажется невозможным, но зато я знаю классный способ как минимум отсеять тех, кто к самостоятельной работе не готов совсем.

Самостоятельного человека всегда что-нибудь парит. Самостоятельного программиста может парить говнокод, самостоятельного менеджера
- бардак в продуктовых процессах или неспособность бизнес-заказчика договариваться. Когда человека что-то парит, он с этим что-то делает. Если парит говнокод
- программист сам потихоньку рефакторит код и помогает коллегам. Парит то, что бизнес-заказчик не смотрит в цифры,
- менеджер сам их собирает и носит одновременно заказчику и его начальнику или начальнику его начальника.

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

FEDOR BORSHEV
Управление проектами
Подписаться
Курс «стать тимлидом» идёт уже 13 часов и 40 минут, но пока ещё можно успеть.

Курс «стать тимлидом» идёт уже 13 часов и 40 минут, но пока ещё можно успеть.

Первая неделя посвящена переговорам. Завтра участники получат учебные материалы, а в среду придут на выступление Юли Максиной
- директора по б2б-продажам в МИФе, в копилке которой такие клиенты как Мейл.ру, Сбер и Ростелеком.

На каждой из 5 недель мы рассмотрим один из основных навыков тимлида
- переговоры, найм\увольнение, настройку процессов, управление продуктом и работу с техдолгом. Места с поддержкой уже закончились, но пока ещё можно купить самостоятельное участие. Там всё то же самое, доступны даже домашки
- только вот проверить их мы не сможем. Зато, вместо этого сможете обсудить любой вопрос в чатике с другими участниками.

Если вам очень нужно оплатить по безналу от имени компании
- тоже можно успеть: напишите нам в чат на сайте и мы добавим вас авансом.

А ещё в ближайшие пару недель на канале будет чуть тише, чем обычно
- контент для курса поедает очень много времени.

FEDOR BORSHEV
Управление проектами
Подписаться
Еженедельная рефлексия

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

Просто открываете редактор и пишете в свободной форме, что случилось за неделю. Один проект
- один файл. Если рассказать вдруг нечего
- это причина подумать: нужен ли вам такой проект, по которому за неделю ничего не случилось? Или, может, это самый важный проект и надо выкинуть все другие, чтобы его делать?

Если, наоборот, текст получается длинным
- тоже повод задуматься: а не многовато ли времени вы уделяете конкретно этому проекту? Не надо ли отдать побольше времени другим?

Если нет времени рефлексировать
- тоже повод задуматься: а всё ли у вас в порядке с тайм-менеджментом, если вы не можете найти сраных 10 минут, которые радикально улучшат вашу работу на следующей неделе?

FEDOR BORSHEV
Управление проектами
Подписаться

На курсе «Стать Тимлидом» остаётся всего 9 мест с поддержкой
- больше мы физически не потянем. В поддержку входит проверка домашки и 30-минутная встреча со мной и Марьяной. Мест без поддержки ещё много
- там точно такой же контент, просто без личной обратной…

Рейтинг авторов

  • "Записки Дизайнера" (про дизайн и только про него 157 157 157
  • (Не) только немецкий 157 157 157
  • #анямастерконтента 157 157 157
  • #Фудтех 157 157 157
  • 10 идей и трендов дня 157 157 157
Показать весь рейтинг
Загрузка ...