Сергей Павленко – Маленькая красная книга руководителя (страница 2)
– Максим, мы больше не можем так работать, – начал Игорь, не дожидаясь приветствий. – Мы сдаём код в срок, а они… – он кивнул в сторону тестировщиков, – они находят какие-то мелочи и возвращают всё обратно. У нас дедлайн через неделю!
– Мелочи? – Олег выпрямился. – Ты называешь «мелочью» то, что форма оплаты падает при вводе спецсимволов? Это критический баг! Клиенты не смогут оплатить!
– Это граничный случай! – взорвался Денис. – Кто вводит знак доллара в поле «Имя»? Нормальные пользователи так не делают!
– А ненормальные делают, – спокойно ответила Марина. – И потом мы получаем жалобы в саппорт. Вы хотите, чтобы я пропустила баг, а через месяц заказчик устроил скандал?
Катя, единственная, кто молчал, устало потёрла виски. Максим видел: она на грани. Ещё немного – и она напишет заявление. Третье за месяц.
– Стоп, – Максим поднял руку. – Давайте по порядку. Что именно произошло?
Игорь открыл ноутбук и ткнул пальцем в экран:
– Вот таска. Мы закрыли её в пятницу, отправили на тестирование. Сегодня утром Олег вернул её с пометкой «Не принято». Причина: «Недостаточно тест-кейсов». Максим, мы написали код! Это их работа – писать тесты!
– Нет, – Олег качал головой. – Наша работа – проверять то, что работает. А вы сдаёте код, в котором даже базовая валидация не реализована. Мы не волшебники.
Максим чувствовал, как ситуация выходит из-под контроля. Он попытался вспомнить книги по менеджменту, которые читал. Там было что-то про активное слушание, эмпатию, поиск компромисса. Но как это применить, когда обе стороны правы?
– Хорошо, – он сделал паузу. – Давайте встретимся завтра. Я подумаю, как нам выйти из этого.
Разработчики вышли, громко хлопнув дверью. Тестировщики ушли молча. Максим остался один в переговорке, уставившись в свой ноутбук.
«Я не справляюсь», – подумал он. Три недели назад его назначили руководителем проектного офиса. Тогда это казалось повышением. Сейчас – капканом.
В обед к нему зашла Лена, аналитик компании. Они вместе учились в универе, и она была одним из немногих людей, с кем Максим мог говорить откровенно.
– Видела твоё совещание через стеклянную стену, – сказала она, ставя на стол две кружки кофе. – Разработчики против тестировщиков?
– Угадала. Не знаю, что делать. Каждый прав по-своему. Игорь правда сдаёт в срок. Олег правда находит критичные баги. Но они ненавидят друг друга.
Лена задумалась.
– Ты пытаешься решить конфликт между людьми. А может, проблема не в людях?
– То есть?
– Слушай, я недавно эксперементировала с ChatGPT. Не для того, чтобы он за меня думал, а чтобы структурировать собственные мысли. Попробуй подойти к проблеме как к системе, а не как к двум группам обиженных людей.
Максим скептически поднял бровь:
– ChatGPT? Серьёзно? Я просто попрошу его: «Реши мой конфликт»?
– Нет. Ты попросишь его помочь тебе увидеть то, чего ты не видишь. – Лена открыла свой ноутбук. – Знаешь теорию про пять измерений деятельности? Функция, процесс, материал, структура и время. Любая проблема управления – это конфликт в одном из этих измерений. Или сразу в нескольких.
Максим вспомнил: что-то такое он слышал на тренинге по системному мышлению. Но тогда это казалось абстракцией.
– И что мне с этим делать?
– Опиши ChatGPT ситуацию и попроси разобрать её по этим измерениям. Не как конфликт личностей, а как конфликт в системе деятельности.
Вечером, когда офис опустел, Максим открыл ChatGPT. Он чувствовал себя немного глупо, но альтернатив не было. Он начал печатать:
Он нажал Enter и откинулся на спинку кресла. Через несколько секунд на экране появился ответ:
Анализ конфликта по пяти измерениям деятельности:
1. ФУНКЦИЯ (для чего существуют команды)
Противоречие: У разработчиков и тестировщиков разные понимания своей функции.
– Разработчики считают, что их функция – «написать код, который выполняет требования». Они измеряют успех количеством закрытых задач.
– Тестировщики считают, что их функция – «защитить заказчика от багов». Они измеряют успех качеством того, что попадает в продакшн.
Обе функции правильные, но не согласованы на уровне системы. Никто не определил: что важнее – скорость или качество? Или как их балансировать?
2. ПРОЦЕСС (как протекает работа)
Противоречие: Процесс передачи кода не формализован.
– Разработчики сдают код, когда считают, что «он работает». Критерии «работает» не определены.
– Тестировщики не знают, что именно должно быть реализовано. Они проверяют всё подряд, включая граничные случаи, о которых разработчики не думали.
Нет единого понимания «Definition of Done» – когда задача считается готовой.
3. МАТЕРИАЛ (люди и их состояние)
Противоречие: Люди находятся в состоянии стресса и взаимных обвинений.
– Разработчики чувствуют, что их работу обесценивают.
– Тестировщики чувствуют, что их не уважают.
Обе стороны защищаются, что усиливает конфликт.
4. СТРУКТУРА (как организовано взаимодействие)
Противоречие: Команды физически и организационно разделены.
– Разработчики сидят в одном углу офиса, тестировщики – в другом.
– Взаимодействие происходит через таск-трекер, а не напрямую.
– Нет общих встреч или совместной работы.
Структура создаёт эффект «мы против них».
5. ВРЕМЯ (операционное vs историческое)
Противоречие: Разработчики работают в операционном времени (дедлайны, спринты), а тестировщики пытаются войти в историческое (долгосрочное качество продукта).
– Разработчики думают: «Надо сдать сейчас, потом поправим».
– Тестировщики думают: «Если сдадим плохо, потом будет ещё хуже».
Максим читал текст и чувствовал, как что-то переключается в его голове. Он видел этот конфликт как спор двух людей – Игоря и Олега. А это был конфликт системы. Функции не согласованы. Процесса нет. Структура разделяет. Время конфликтует.
Он снова написал в ChatGPT:
Ответ пришёл быстро: