Рубрика «командная работа»

Подводя итоги второго десятка лет программирования на плюсах в самых разных областях, от гидроакустики и систем контроля доступа, до игр и разработки классического игрового ИИ, оглядываюсь назад и в памяти всплывают разные смешные и не очень истории из жизни, иногда глупые и смешные, иногда пугающие и мистические. Но всегда настолько запоминающиеся, что их цвета не поблекли за давностью лет и сейчас. Сам удивляюсь, как у рядового программера набралось их так немало. Не знаю куда положить эти истории, хаба юмор не нашел, так что пускай будут в истории IT, это ведь тоже IT.

Читать полностью »
Вы приступаете к чтению статьи с высокой концентрацией советов. Учиться у предшественников – хороший способ добиться успеха, но здесь мы часто забываем о важной оговорке. Практически любой совет работает только в определенном контексте, но дается обычно без каких-либо указаний на него.

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

Без понимания контекста советы теряют смысл или, хуже того, приносят вред. Если бы люди из примеров выше последовали своим собственным советам в начале пути, то, вероятно, пожалели бы этом. Этой ловушки сложно избежать. Мы представляем собой кульминацию своего опыта, но при этом смотрим на него через призму настоящего.
Читать полностью »

Как выбрать для новичка такой проект, чтобы он уволился - 1

У вас возникал синдром «сожалений специалиста по найму»? Это когда вы жалеете о том, что наняли кого-то сразу после того, как он начал работать. Может быть, вам не нравится внешность новичка, а может вы просто желаете погрузить мир в хаос. Или, хуже того, он как-то упомянул, что любит джаз. Какой бы ни была причина, этот пост поможет вам заставить его уволиться самостоятельно, выбрав для него худший первый проект.

Не ждите, пока он обустроится

Ему всё ещё не выдали монитор? Менеджер проекта так и не добрался до него, чтобы познакомить с продуктом, над которым работает команда? Его бейдж не работает и ему приходится просить коллег провести его в туалет? Это самое подходящее время встретиться с ним и объяснить все подробности нового проекта. Есть какой-то компонент, который он пока не освоил? Сэкономьте своё время и пока не объясняйте его — пусть разберётся самостоятельно после завершения проекта.
Читать полностью »

Совместная игра в Factorio — лучшее техническое собеседование, что мы проводили - 1В последнее время много копий сломано вокруг технических собеседований. Очевидно, что инвертирование двоичного дерева на доске практически никак не связано с практическими навыками реального программиста. Примитивный Fizzbuzz по-прежнему остаётся самым эффективным тестом. Как следствие, выросло внимание к опенсорсным проектам, но оказалось, что это тоже не очень хороший показатель, потому что у большинства профессионалов нет на них времени.

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

Все эти методы интервью не сравнятся с очень простой метрикой: совместная игра в Factorio. Прохождение всего цикла Factorio — практически идеальный показатель, насколько хорошо человек решает общие технические проблемы. Можно даже настроить прохождение игры на основе будущей должности, чтобы лучше понять, как кандидат справится со своей ролью.
Читать полностью »

Договариваемся об эффективном и удобном общении при удалённой работе (и не только)

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

Правила чатов - 1
Читать полностью »

К моей прошлой статье был такой комментарий:

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

Как-то раз я отсутствовала, мою роль лида замещал коллега, и у нас получилась следующая переписка:

Роман: Тяжело это — руководить людьми).
Поставил вполне простую задачу, в итоге все трое сделали по-разному, и ни один не сделал так, как написано в задаче (написано, не устно сказано, а написано)) )…
Надежда: Ахах
Надежда: Вооот
Надежда: Я вот иногда руками сама ничего не делаю, но так за день устаю, что думаю: лучше бы сидеть и делать точечную задачу.
Роман: Ну да, синхронизировать сложно.
И сложно не ставить задачу, а убедить и уяснить, что все её хотя бы правильно прочитали, правильно поняли. Мне, например, кажется очевидным несколько раз прочитать что тебе написали, и, если есть сомнения, спросить. Но как можно сделать не так как написано и ответить о выполнении мне не понятно). И тут самоё сложное в работе руководителя — реагировать на это неадекватно адекватно.

Все это натолкнуло меня на мысль о новой статье.
Читать полностью »

Дж. Х. Рейнвотер «Как пасти котов»: не надо так, или негативные паттерны в руководсте - 1

Мы подходим к заключительным частям цикла статей по книге Рейнвотера для разработчиков, мутирующих в руководителей отдела. До сих пор речь шла о том, как все должно быть в идеальном мире; теперь пришло время обратить взгляд на то, как обстоят дела в прозаической реальности. Рейнвотер посвящает целую главу разбору порочных, разрушительных стратегий, которые лидеры-новички часто выбирают по наитию – почему они появляются, чем чреваты и, как собственно, действовать, если уже встал на кривую дорожку.
Читать полностью »

Дж. Х. Рейнвотер «Как пасти котов» (часть вторая): все, что предстоит освоить техлиду - 1

Продолжаем делиться выдержками из руководства по выживанию для начинающих техлидов от Дж. Х. Рейнвотера. В первой серии мы рассказывали, с какими породами разработчиков руководителю обычно приходится работать; теперь попытаемся понять, что делать со всем этим зоопарком. Организационную деятельность в технической команде можно условно поделить на две части – более-менее родные вещи (вроде обзоров кода и управления архитектурой) и все то, к чему жизнь программиста не готовила – то есть управление людьми и процессами. Разберемся сначала с незнакомым.
Читать полностью »

Дж. Х. Рейнвотер «Как пасти котов»: породы программистов и особенности их разведения - 1

Об управлении людьми в целом на сегодняшний день сказано уже немало (по мнению многих, более чем достаточно). Об управлении программистами с учетом специфики их задач, организации работы и внутренних отношений в команде – в разы меньше. Любая попытка обобщить и проанализировать свой опыт от человека, который варился в IT-среде и как разработчик, и как управленец, имеет особую ценность для тех, кто готовится пройти тем же путем и ломает голову, как приложить общеуправленческие теории к программистским реалиям.

Дж. Ханк Рейнвотер, программист старой закалки, относится к числу людей, которые знают все топкие места в роли технического лидера наперечет, потому что сами в них плавали. Его книга «Как пасти котов» подкупает своей предметностью: здесь описываются конкретные, хорошо всем знакомые ситуации, разбираются по косточкам разные составляющие и условия работы команды, даже приводятся авторские технологические решения (к сожалению, уже устаревшие). В небольшом цикле статей мы планируем осветить все, что нам показалось наиболее полезным и актуальным в книге – от типологии сотрудников до рекомендаций по общению с другими командами.
Читать полностью »

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

Полезные советы для интеграции в новые проекты - 1
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js