В правильной команде есть специалисты, отвечающие за какую‑то свою область. Например, продюсер отвечает за продюсирование, верстальщик отвечает за верстку, а исполнительный директор отвечает за исполнительное директорство. Если у тебя есть проблема — ты отправляешь/делегируешь вопрос соответствующему специалисту, если у него есть возможность с ней разбираться (н‑р есть время). Отправляешь мгновенно и не задумываясь. Это не твоя область ответственности. Если соответствующий специалист считает, что ты делаешь херню в его области — ты прекращаешь, спрашиваешь у него «как надо», и так делаешь.
Очень важно, чтобы в роли «соответствующего специалиста» был человек, обладающий максимальным опытом и знаниями в области. Для этого нужно регулярно ревьюить процесс и определять этих делегатов.
В нескольких академовских командах все наоборот. Людям вообще насрать на а) качество б) мнение специалистов в) схемы оптимальной эффективности
С одной стороны, разработчику это добавляет возможностей. По сути, можно делать все что угодно, пока оно укладывается в сроки. Например, можно пойти и нахерачить кода на любом языке программирования, какой нравится.
С другой стороны, это не похоже на промышленную разработку. (Имхо, например, если ты херачишь на нестандартном языке — задача техлида обычно заключается в том, чтобы объяснить ненужность и невозможность такого подхода.).
Я недавно оказался в команде как раз с такими принципами, и никак не определюсь, нравится мне это или нет.
Это не очень совпадает с моей основной ценностью, заключающейся в непрерывном улучшении и стремлении к максимальной эффективности. Это неэффективно, и это звучит как приговор.