Ответ
Решение конфликтов строится на принципах открытости, фокусе на проблеме, а не на личности, и совместном поиске оптимального решения для проекта.
Структурированный подход:
- Выявление и анализ: Даю высказаться всем сторонам, чтобы понять не только позиции, но и интересы и стоящие за ними опасения (например, спор об архитектуре может скрывать беспокойство о поддерживаемости кода или сроках).
- Фокусировка на цели: Напоминаю об общей цели проекта и команды. Предлагаю оценивать варианты по объективным критериям: производительность, поддерживаемость, сроки реализации, соответствие требованиям.
- Поиск решения:
- Технический диспут: Организую обсуждение с представлением аргументов "за" и "против", возможно, с написанием прототипов или spike-решений.
- Компромисс: Ищу вариант, который частично удовлетворяет интересы всех сторон.
- Эскалация: Если консенсус не достигнут, привлекаю тимлида или технического лида для принятия финального решения, которое команда обязуется поддержать.
Пример: Конфликт из-за выбора библиотеки для сети. Решением стало: 1) Сравнение по критериям (размер, активность поддержки, удобство API). 2) Создание двух простых тестовых модулей для оценки на практике. 3) Совместное голосование на основе собранных данных.
Важно: Поддерживать уважительную атмосферу, не допускать перехода на личности и рассматривать конфликт как возможность найти лучшее решение, а не как проблему.