Привет! Я Саша Ворожищев, руководитель направления Flutter/iOS в AGIMA. Сейчас у нас в компании мир и покой, но мы еще помним времена, когда проджекты и тимлиды постоянно ссорились. Ссорились, само собой, из-за работы: каждый хотел доминировать на проекте и по-своему понимал задачи. Иногда к решению конфликтов подключались буквально все — вплоть до топ-руководителей. В итоге мы придумали, как не допускать таких стычек. И я расскажу об этом подробно.

Кто эти люди и что им делить

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

Проджект-менеджер (Project Manager). Отвечает за планирование и организацию процесса. Его цель — реализовать проект за определенный срок и уложиться в определенный бюджет. Он управляет ресурсами, ставит задачи и приоритеты, работает с заказчиком. ПМ владеет навыками управления рисками и конфликтами.

Тимлид разработки (Team Lead). Он отвечает за разработчиков, направляет общие усилия в нужное русло. Тимлид отвечает за развитие команды, за стандарты разработки и архитектурную целостность продукта. Должен обладать высокими техническими навыками и помогать разработчикам решать задачи.

Главное сходство между ними: тот и другой управляют проектом. Главная разница: ПМ сосредоточен на проекте в целом, тимлид — на технической части. Обычно они работают в тандеме: вместе планируют сроки, вместе нанимают специалистов. И именно здесь плодородная почва для конфликта.

Чтобы не быть голословными, мы провели небольшое исследование. Это были опросы среди подписчиков наших телеграм-каналов для разработчиков и проджектов. Оказалось, что конфликты бывают примерно на трети проектов.

Разберем, почему они возникают, на конкретных примерах.

Кейс №1. Тимлид и проджект по-разному видят цели проекта

Срок сдачи проекта уже подходит. Заказчик давить на менеджера: хочет выкатить проект к определенной дате. Менеджер торопит команду, чтобы не нарушить обязательства. За неделю до релиза тимлид говорит: «У нас код так себе, нужен рефакторинг». Менеджер с ним спорит, времени нет. Но тимлид стоит на своем: отдавать проект со слабым кодом — плохая идея.

Как работать с проблемой:

✔️ Найти компромисс. Например, оба могут признать, что есть важная часть кода, которую нужно обернуть в Unit-тесты, а есть типовые блоки, которые не требуют тщательной проработки.

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

​​✔️ Перераспределить ресурсы. Ресурсы можно изначально  распределить так, чтобы удовлетворить всех. Например, если качество кода — главный приоритет для тимлида, то лучше сразу выделить больше ресурсов на тестирование.

Тут важно, чтобы оба человека слышали друг друга и были настроены на диалог. Если один спокойно и с аргументами объяснит свою позицию другому, они точно найдут компромисс. А чтобы избежать подобных конфликтов в будущем, проджект и тимлид могут работать над коммуникацией с самого начала: проговорить цели каждого, обязанности и место в команде.

Кейс №2. Тимлид и проджект не могут решить, кто главнее

Был у меня в практике случай, когда на одном из проектов проджект пытался руководить тимлидом. Причем это было новое направление в компании, у которого не было бэкграунда. Сначала это привело к конфликтам, тимлид пытался отвоевать пальму первенства. Потом он понял, что проджект ничего не понимает в разработке и начал вешать ему лапшу на уши: растягивал сроки и писал некачественный код. 

Многое на проекте зависит от стиля лидерства. В этом случае проблема была как раз в том, что ребята пытались управлять по-разному. Наш CTO Андрей Непряхин недавно написал о стилях лидерства подробную статью. Пересказывать ее не буду. Напомню только, что стилей 4: диктатор, формалист, либерал, демократ.


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

✔️ Обсудить различия в стиле лидерства. Руководители могут выбрать тот стиль, который соответствует интересам проекта. Можно использовать методы анализа конфликтов, такие как техника «Взвешенного среднего» или метод «Четыре столпа».

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

✔️ Назначить нейтрального посредника. Посредник поможет решить разногласия и наладить работу. Это может быть внешний консультант или управленец, у которого достаточно опыта, чтобы помочь руководителям найти общий язык.

✔️ Разделить роли и обязанности. Разделить обязанности имеет смысл таким образом, чтобы каждый из руководителей занимался задачами, которые соответствуют его стилю лидерства и компетенциям.

Кейс №3. У проджекта и тимлида разное отношение к планированию

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

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

Кейс №4. Проджект и тимлид по-разному оценивают риски

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

Такой конфликт может привести к неправильному определению приоритетов и управлению ресурсами. Тогда это затронет весь проект и может вызвать недовольство в команде. Ошибка в оценке рисков может привести к увеличению сроков, перерасходам или даже к сбою в работе проекта.

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

Кейс №5. Изначально проблемный проект

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

Тут нужно понимать, что к новому руководителю приковано внимание руководства. Значит, и ожидания высокие. Чувствуя такую ответственности, проджект/тимлид начинает давить на вторую сторону. Конфликты неизбежны, как минимум поначалу.

В этом случае проджект/тимлид должен сосредоточиться на следующих моментах:

✔️ Понять ситуацию. Разобраться в причинах, понять, какие меры помогут эти причины устранить. Проджект/тимлид должен провести анализ проекта и выявить проблемные области, чтобы разработать стратегию работы.

✔️ Установить приоритеты. Лучше сосредоточиться на задачах, которые имеют наибольшую значимость для проекта.

✔️ Общаться. Проджект должен строить открытую коммуникацию с командой проекта и заказчиком. Процесс должен быть прозрачным, чтобы все видели прогресс проекта и его проблемы.

✔️ Руководить командой. Тимлид должен убедиться, что каждый член команды понимает свою роль в проекте и знает, что от него требуется. Он должен мотивировать и поддерживать команду, чтобы достичь целей.

✔️ Проявлять гибкость. Проджект/тимлид должен быть гибким и готовым менять стратегию, если текущая не работает.

✔️ Управлять рисками. Проджект/тимлид должны определить риски, каждый со своей стороны, и разработать стратегию для управления ими. Нужно сразу наметить план действий, если ситуация пойдет по негативному сценарию.

✔️ Установить реалистичные ожидания. Проджект/тимлид должны определить, чего реально достичь в оставшееся время. Заказчик должен понимать, что проект можно завершить только в определенных параметрах и с учетом рисков.

Итого: основные причины конфликтов

  1. Человеческий фактор.

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

  2. Разные подходы и методики работы.

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

Что помогает решать конфликты

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

Очевидно, что проджект должен понимать базовую логику работы продукта. Иначе он просто не сможет выстраивать процесс разработки и объяснять технические нюансы заказчику. Но и проверять кодовую базу он, конечно, тоже не должен.

Тимлиду пригодится умение общаться: с командой и с заказчиком. Еще один важный навык — тайм-менеджмент. Ему приходится распределить задачи по уровню срочности и иногда не на одном проекте.

Что на эту тему почитать проджекту:

  • Deadline. Роман об управлении проектами. Том ДеМарко.

  • Цель. Процесс непрерывного улучшения. Элияху М. Голдратт.

  • Искусство управления IT-проектами. Скотт Беркун.

Что на эту тему почитать тимлиду:

  • Как пасти котов. Наставление для программистов, руководящих другими программистами. Рейнвотер Дж. Ханк.

  • Семь навыков высокоэффективных людей. Стивен Кови.

  • Практика лидерства. Питер Ф. Друкер.

Какой конфликт считать здоровым

Разберемся, что такое «адекватный конфликт» — это конфликт, при котором проект не страдает ни в финансовой части, ни в части качества кода. Что-то вроде конфликта интересов.

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

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

Когда эскалировать конфликт руководству

  1. Когда конфликт влияет на бюджет или сроки проекта. Например, если тимлид отказывается работать с менеджером — это явно серьезная проблема.

  2. Когда конфликт влияет на качество работы. Например, если менеджер не согласен с решениями тимлида и это приводит к переработкам и выгоранию команды.

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

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

Если даже после эскалации решить вопрос не удается, лучше развести ребят по разным проектам. Ситуации бывают разные.

Подводим итоги: как не допустить конфликтов между тимлидом и проджект-менеджером

  1. Установить ясные роли и обязанности. Проджект и тимлид должны понимать, какие задачи им предстоит выполнять и как их работа взаимосвязана друг с другом.

  2. Определить ясные цели и ожидания. При определении целей проекта и ролей проджекту и тимлиду необходимо ясно определить ожидания руководства и заказчика, а также предупредить об опасностях и рисках, связанных с проектом.

  3. Создать коммуникационный план. Необходимо разработать план коммуникации, который определит частоту и формат взаимодействия между менеджером и тимлидом. Этот план должен учитывать разные каналы связи и быть связанным с целями проекта.

  4. Определить и настроить процессы управления проектом. Нужно определить единый процесс управления проектом, который поможет понять, как они должны работать вместе, чтобы достичь общих целей.

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

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

Расскажите, как обстоят дела у вас. Тимлид и проджект ругаются? Или в основном они лучшие друзья? И если есть проблемы, как вы их решаете?

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

Что еще почитать про управление разработкой:

Комментарии (13)


  1. ruomserg
    14.08.2023 18:21

    Я бы еще сказал что на таком уровне становится необходим кросс-тренинг. Невозможно жить устойчиво в ситуации, когда PM/деливери тянет одеяло в одну сторону, а техлид/тимлид в другую. Заставляйте менеджерскую и техническую сторону читать не только свои книжки, но и книжки друг друга. Лид должен понимать ограничения внешней среды, которые персонифицируются в проекте его ПМ-ом. Проджект должен понимать технические и организационные ограничения, которые персонифицирует тимлид. Плюс должна быть открытая и честная обстановка на проекте. Если менеджмент хочет отманипулировать лидом, не раскрывая причин желаемых изменений, или наоборот — лид хочет манипулировать менеджером скрывая проблемы в команде или в процессе — это ни к чему хорошему не приводит.


    В операционной есть хирург, и есть анастезиолог-реаниматолог. Они отвечают за разные части процесса, но жизненно (для пациента!) важно, чтобы они имели одно и то же базовое видение того, чем они заняты — и понимали проблемы и сложности друг-друга.


    В ведении проекта — ровно то же самое: обеспечивайте общее базовое образование и понимание проектной деятельности, убирайте стимулы и KPI которые стимулируют перепихивание ответственности, заставляйте лидов участвовать (хотя бы слушать) решение бизнесовых вопросов, а менеджеров разработки — аналогично в технических. Это не быстрый процесс, но постепенно ситуация должна улучшаться...


    1. WizAlx Автор
      14.08.2023 18:21

      Да, все верно тут написано. У нас есть практика обмена опытом между PM и TL. Они не просто учат друг друга, но и, действительно, становятся единым центром управления с пониманием подкапотной деятельности - перехода от "что от меня просят" к "почему меня просят"


  1. Yuri_nedre
    14.08.2023 18:21

    Надо начинать с четкого разделения обязаностей, ответственности и полномочий. Хотя бы простая RACI матрица, которая со всеми сторонами согласованна.


    1. ruomserg
      14.08.2023 18:21

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


      1. Yuri_nedre
        14.08.2023 18:21

        Сори, но не согласен. Любые правила, в том числе и кто за что отвечает - должны быть зафиксированны. Отсутствие таких фиксаций и ведет к конфликтам, так как каждый решает, что это его право/привелегия/обязаность/долг принять решение.
        На примере, который описан в статье: проджект говорит, что надо катить продукт на прод, а тимлид, что надо рефакторить. Из-за того, что непонятно, кто решает, едет ли релиз и возникает конфликт. А было бы зафиксированно, что (условно) ПМ принимает решение о выкатке релиза на продакшен, то вся ответственность на нём. Он должен выслушать аргументы тимлида на счет рефакторинга, взвесить риски и принять решение - катим или нет. Упадет прод - виноват и отвечать будет ПМ.


        1. ruomserg
          14.08.2023 18:21

          Это довольно типичный для экс-СССР взгляд на проблему, где назначением ответственного история как-бы заканчивается. Как говорил Лазарь Моисеевич — у любой аварии есть фамилия, имя и должность.


          Теперь давайте посмотрим на вопрос шире. Допустим, вы дали клеточке с надписью PM право решать, выкатывать релиз или нет. Как вы собираетесь искать людей в эту клеточку, чтобы они принимали безошибочные решения? Трагедия управленческой традиции экс-СССР заключается в безоговорочной уверенности что назначенные решать люди — обладают сакральным знанием и сверхспособностями только потому что их назначили ответственными. В то время, как в реальности этого не наблюдается.


          Следующий момент — допустим, выкатили релиз в прод под ответственность PM, а он упал. Можете сколько угодно делать ответственным PM, но он сам релиз не поднимет и не откатит — это должна делать команда. И тогда в чем скакральный смысл делать PM ответственным за выкат релиза — если реальную ответственность (в смысле устранять последствия, а не получить выговор на бумажке или снятие с должности) несет не он ?


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


          1. WizAlx Автор
            14.08.2023 18:21

            Все еще зависит от стилей управления одного и второго + взаимодействия с заказчиком. Регламенты, которые четко разделяют роли должны быть, но, кмк, на каждом из проектов и ПМ и ТЛ должны в тч проявлять гибкость, но только, если эта гибкость будет согласована между ними.


          1. Yuri_nedre
            14.08.2023 18:21

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

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

            В реальной ситуации, без ответственного человека, всё это работает в утопическом Скраме самоорганизованной команды. А реальности (я такое видел), когда ПМ и Маркетинг говорили, что надо катить скорее, QA лид просил провести очередной регресс, тимлид хотел переписать очередную библиотеку, дизайнер изменить фронт на более классный, в результате ничего никуда не ехало и клиент рвал и метал, так как не понятно было, кто за что отвечает и все давили своим авторитетом и что записано у них в должностной инструкции.



            1. ruomserg
              14.08.2023 18:21
              +1

              Проблема заключается в том, что в вашей технологии управления — кого выгнать, а кого нет — это пост-знание. Оно появляется тогда, когда событие уже случилось (или наоборот, не случилось). Допустим в конкретном случае решили что лид перестраховался и его выгнали. Как вы собираетесь искать нового человека под должность лида, и как вы собираетесь гарантировать что он будет принимать правильные решения? "Перебдеть в обратную сторону" очень легко. Забиваем на рефактор, удовлетворяем желания PM. Потом код начинает разваливаться — техдолг и все такое. Снова уволим лида? Но код-то от этого лучше не станет!


              Я не понимаю, почему в советских управленческих кейсах мораль истории заканчивается на том, что кого-то уволили (в зависимости от эпохи, вариант — расстреляли). Ну хорошо, для уволенного она закончилась — но для предприятия-то нет! Теперь надо откуда-то брать ресурсы и людей, чтобы исправлять проблемы...


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


              1. Yuri_nedre
                14.08.2023 18:21

                вы опять очень близко примеряете выдуманный кейс к реальности.
                И ПМ, который не слушает советов и в одиночку решает катиться на прод, и тимлид, который делает 25-й рефакторинг, до своих должностей просто не дойдут в нормальных адекватных компаниях.
                Такие проблемы не появляются из ничего, всегда есть более мелкие предпосылки, которые отсеивают некомпетентных людей.


                1. ruomserg
                  14.08.2023 18:21

                  Это был бы хороший ответ, если бы как во времена СССР примерно большинство начинали с должности рабочего, и постепенно двигались наверх. По факту, на рынке ИТ уже который год дефицит высококвалифицированных кадров. Предложите методику, как с рынка нанимать PM и Lead которые бы занимали позиции "под личную ответственность" и принимали бы правильные решения ?


          1. Yuri_nedre
            14.08.2023 18:21

            ой, дублированный комент отправил


  1. Batalmv
    14.08.2023 18:21

    Мне кажется в статье сразу чуток неверно выставлены акценты. Начнем с ответственности. ПМ отвечает за проект в целом. За все. Бюджет, риски, сроки, качество ... за любой фейл ПМ может получить втык. И поэтому, так как отвечает за все - он главный.

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

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

    Это важно, потому на одной доске они могут стоять только в чем-то маленьком и малоинтересном :)

    Чтобы понять, откуда могут быть конфликты, надо понять что кому надо. Тут все в реале просто. Тимдид возглавляет команду, которая дает оценки и закрывает тикеты, делая изменения в коде. Для ПМа причина конфликта может быть либо в срыве сроков, либо в плохом качестве решения (большое число багов, переоткрывающиеся баги, ...). Тут человечество вроде как нашло способ. Делаем root cause анализ и после локализации исправляем. Иногда вплоть до выбрасывания кого-то за борт. Насколько ПМ может выполнить и/или делегировать эту задачу зависит от его квалификации.

    В обратную сторону ... а с чего. ПМ не репортит лиду от слова совсем. Сорян, не по чину и позиции :)

    Теперь по примерам.

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

    Второе. Главнее ПМ. Точка. Но лид может иметь вес в организации, поэтому это проблема ПМ в данном случае. Как в паре режиссер-главный актер. Отношения строим сразу и до конца проекта. Можно и иногда нужно для начала конкретно посраться. Если лид не "звезда" - смотри первое предложение.

    Третье. Они планируют разные работы. Если потом оценки тимлида сильно отличаются от реальности - разбираемся. Возможно неверно оценен весь прлект, кртвая архитектура или слабый агалитик. Надо искать причину. А конфликта тут в целом нет вообще. Либо ПМ слабо понимает, что такое планирование проекта.

    Четвертое. Риски все на ПМ. Но по каждому риску он обращается к экспертам. ПМ не эксперт и не его задача спорить с экспертами. Сорян, тут не конфликта. ПМ не должен на себя брать функции эксперта. Это не его зона ответственности

    Пятое. Вообще нет причин для конфликта. Спокойно учимся, набираемся опыта и всего, чего можна унести. В конце либо надо свинтить, если проект мертвый. Потому что если ПМ делает мертвый проект - он идиот :) Если не мертвый - ну так берем и делаем

    P.S. В целом ощущение, что автор имеет опыт работы в мини проектах. И только :(