IT и покер. Часть 10: Работа с неполной информацией
Есть у меня один знакомый. Большую часть карьеры проработал архитектором. Зовут его Марат. Мужик с двадцатью годами опыта, седой уже наполовину, и вот этот самый Марат однажды сказал фразу, которую я запомнил навсегда. Мы сидели в прокуренной ужасной курилке (тогда ещё были курилки прямо в здании на этаже, с дрянными вытяжками, которые не справлялись и ужасный запах сигарет въедался прямо в кожу), пили мерзкий кофе из автомата, и он, глядя куда-то в стену, произнёс: - Знаешь, в чём разница между плохим архитектором и хорошим? Плохой знает всё. Хороший - знает, чего он не знает.
Я тогда сказал, что-то про Декарта, кивнул, допил кофе, пошёл дальше воевать с бэклогом. А через пару лет до меня дошло. Медленно так дошло, как до жирафа. Потому что я сам был тем самым плохим архитектором. Ну, в смысле, менеджером. Который знает всё.
Это очень удобно, знаете ли. Знать всё. Сидишь такой на планёрке, и у тебя на любой вопрос есть ответ. Сроки? Да, три месяца. Риски? Да какие риски, мы же всё продумали. Архитектура? Выдержит, я гарантирую. Пользователи? Ну а куда они денутся. А потом - бац. И выясняется, что пользователи денутся. И архитектура не выдержит. И сроки - это не три месяца, а «когда-нибудь, наверное». И ты сидишь, такой весь из себя знающий, и пытаешься понять, где именно ты наврал. Себе. Команде. Заказчику.
Ответ простой: ты наврал тогда, когда сказал «я знаю». Потому что не знал. И не мог знать. И вместо того, чтобы честно это признать — построил замок из песка и назвал его стратегией.
В покере есть одна вещь, которую новички не понимают категорически. Вот смотрите. Новичок садится за стол и думает: «У соперника тузы». Или: «У соперника ничего». Одна конкретная рука. Он строит всю свою игру вокруг этой одной руки.
Профи так не делает. Профи думает: «У соперника может быть туз-король, может быть пара восьмёрок, может быть мусор вроде семёрки-двойки, но тогда он бы так не ставил». Не одна рука... Набор. Диапазон. И играет он не против конкретной руки, а против всего диапазона. Потому что конкретики у него нет. И не будет. До вскрытия.
В IT ровно та же история. Только вместо рук, риски, требования, поведение пользователей, сроки, бюджеты. Всё это и есть диапазоны. И если вы думаете, что «стабильные требования» существуют в природе, то я вам сочувствую. Вы ещё не встречали заказчика, который через месяц после подписания ТЗ говорит: «Слушайте, а давайте всё переделаем».
Требования - диапазон. Сроки - диапазон. Бюджет - диапазон. Команда - диапазон. Все - диапазон... да-да, тот самый разработчик, который «точно никуда не уйдёт», может уйти через неделю, и вы ничего не сделаете. И ваша задача как менеджера - не сузить этот диапазон до одной точки (это невозможно), а правильно с ним работать.