Над в твиттере Кто-то спросил, должен ли это обязанность разработчика программного обеспечения, чтобы исправить производственные ошибки как можно скорее, и не хватает профессиональной приверженности, если они этого не сделали.
Я проходил через повороты по вызову, и его призваны по воскресеньям, чтобы исправить ошибки, как в качестве того, что делает фиксацию, так и в качестве человека, который должен был позвонить разработчику на выходных. Мне нужно много сказать по этому вопросу, и это сложная тема.
Я считаю, что ошибки в производственном кодексе частично вопросом менеджмента технического управления. Это не обязательно ошибка программиста, хотя это очень зависит от ситуации. Однако, независимо от того, на чьей вине это, если на месте не существует на вызове, это не должно быть бремя программиста для ползания с постели в 4 утра в воскресенье, чтобы исправить проблему; И это, безусловно, не должно рассматриваться как отсутствие профессиональной приверженности, если они этого не сделали. Во всяком случае, программисты должны быть вознаграждены, если они решили сделать это.
Именно поэтому многие компании там, кажется, посуду наказания, когда это происходит, вероятно, связано с динамикой власти между программистами и их менеджерами. Проще говоря, менеджеру проще винить ошибки на плохом программировании, чем для них, чтобы принять неисправность для неправомерного управления проектом, а затем заставить Devs починить его в страхе потерять работу (и давайте не будем в себе, говоря Исправьте это или не хватает профессионального обязательства «это кодовые слова для« исправить это, в противном случае это будет выглядеть плохо для вас и ваша продолжение работы с нами »).
Вот почему ошибки в производстве могут быть неисправности менеджеров: менеджеры в конечном итоге были те, кто устанавливает бюджет и временные шкалы для проектов. Это ответственность менеджера за то, чтобы проект был достигнут с командой, время, и бюджет, который доступен. Это также ответственность менеджера, чтобы нанять нужных людей для команды, тренировать команду и защитить команду против ненужных внешних отвлекающих факторов.
- Если время, разрешенное для проекта, было слишком коротким. Это ответственность менеджера.
- Если команда для проекта была слишком маленькой. Это ответственность менеджера.
- Если были отвлечения и изменения плана. Это ответственность менеджера.
- Если возникла ожидание для поддержания времени работы в производстве. Это также ответственность менеджера.
Все вышеперечисленные предметы являются обязанностями менеджера. И когда я говорю «менеджер», я на самом деле имею в виду те, кто в лидерстве. Это может быть целая управляющая команда. Ни один из вышеперечисленных элементов не являются индивидуальными программистами, указывающими на себя в одиночку, все они случаются на уровне команды или выше.
Последний пункт является ключом: если необходимо сохранить время заработки, что любая ошибка в производстве должна быть зафиксирована как можно скорее. Тогда обязанность руководства по обеспечению того, чтобы расписание на вызове создан, что разработки согласованы, чтобы они заранее знают, что есть возможность того, что им нужно ответить и может планировать свою жизнь вокруг него. Если ошибка происходит в производстве, и команда не была адекватно подготовлена к ней ответить, то менеджеры буквально не выполняли работу, которую им нужно было сделать. Это не просто не хватает профессиональной приверженности; Менеджер, который не мог сделать это, не хватает профессиональной компетенции!
Что касается самих ошибок. Да, программисты — это те, кто написал код, и есть процессы, чтобы найти ошибки и исправить их, прежде чем они достигли производства. Также есть процессы для постоянного рассмотрения эффективности процессов — ретроспективах в Agile, ISO 9001 в более крупных организациях. Угадай, кто устанавливает эти превью и обрабатывает? Менеджеры.
Что касается программистов, которые делают много ошибок и вводят ошибки? Наверняка существуют экземпляры невнимательности, которые могут вызвать ошибки, которые случайно пропускаются любым просмотром и тестирующим процессом, который был создан. Угадай, кто несет ответственность за найму правильных людей, коучинг и обеспечение доступа к обучению и продолжению прогрессирования карьеры, а в худшем случае стреляет в эти программисты? Менеджеры.
Таким образом, мы видим вверх и вниз по цепочке причина/эффекта, которые приводят к ошибке, попадающей в производство, задача программиста является только частью этого. Ответственность и виновность ошибок в производстве почти всегда делится между программистами и менеджерами. Или короче говоря:
Чтобы неожиданно вызвать программист из рабочих часов, чтобы исправить ошибку в производстве, принял несколько неудач управления, но только один провал программатора.
Однако это не вся история. К сожалению, ни одна компания не может позволить себе потратить навсегда создание идеального продукта, потому что это будет как убыточным, так и неконкурентным. Должны быть приняты соответствующие компромиссы. Достижение нулевых ошибок не разумно, но и не являются неопределенными задержками для выпуска или плохого пользовательского опыта. Этот баланс — самая большая проблема в бизнесе. Нет правильных ответов, и не все согласятся с компромиссами, которые должны быть сделаны.
Лучшее, что мы можем сделать, это быть открытым и гуманным на всех уровнях компании и признать наши собственные ошибки, когда они случится, а не обвинять людей, которые имеют наименьшую силу, чтобы спорить.
Обложка Фото Пабло Варела на Бессмысленно
Оригинал: «https://dev.to/meseta/are-bugs-your-manager-s-fault-2m1l»