Давайте узнаем, что такое профессиональный программист от БОССа Дяди Боба

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

  • Если вы профессионал, то вы несете ответственность за свою карьеру. Вы несете ответственность за чтение и обучение. Вы несете ответственность за то, чтобы быть в курсе последних событий в отрасли и технологиях. Слишком многие программисты считают, что их обучение — это работа их работодателя. Извините, это просто неправильно. Как вы думаете, врачи так себя ведут? Как вы думаете, юристы так себя ведут? Нет, они тренируются в свое свободное время и за свои копейки. Они проводят большую часть своего нерабочего времени за чтением журналов и принятием решений. Они держат себя в курсе. И мы тоже должны. Отношения между вами и вашим работодателем четко прописаны в вашем трудовом договоре. Вкратце: они обещают вам платить, а вы обещаете хорошо выполнять свою работу.
  • Профессионалы несут ответственность за код, который они пишут. Они не выпускают код, если не знают, что он работает. Подумайте об этом на минуту. Как вы можете считать себя профессионалом, если готовы выпускать код, в котором не уверены? Профессиональные программисты ожидают, что QA ничего не найдет, потому что они не выпускают свой код, пока не проведут его тщательное тестирование. Конечно, QA найдет некоторые проблемы, потому что никто не идеален. Но как профессионалы, мы должны относиться к этому так, что мы ничего не оставим QA.
  • Профессионалы – это командные игроки. Они берут на себя ответственность за результат всей команды, а не только за свою работу. Они помогают друг другу, учат друг друга, учатся друг у друга и даже прикрывают друг друга, когда это необходимо. Когда один товарищ по команде падает, другие вмешиваются, зная, что однажды им понадобится укрытие.
  • Профессионалы не терпят больших списков ошибок. Огромный список ошибок неаккуратный. Системы с тысячами проблем в базе данных отслеживания проблем — это трагедия небрежности. Действительно, в большинстве проектов сама потребность в системе отслеживания проблем является признаком небрежности. Только самые большие системы должны иметь настолько длинные списки ошибок, что для их управления требуется автоматизация.
  • Профессионалы не устраивают беспорядка. Они гордятся своим мастерством. Они сохраняют свой код чистым, хорошо структурированным и легко читаемым. Они следуют согласованным стандартам и лучшим практикам. Они никогда, никогда не торопятся. Представьте, что вы находитесь вне тела и наблюдаете, как врач проводит вам операцию на открытом сердце. У этого врача есть крайний срок (в буквальном смысле). Он должен закончить до того, как аппарат искусственного кровообращения повредит слишком много ваших клеток крови. Как вы хотите, чтобы он вел себя? Вы хотите, чтобы он вел себя как типичный разработчик программного обеспечения, торопясь и устраивая беспорядок? Вы хотите, чтобы он сказал: «Я вернусь и исправлю это позже?» Или вы хотите, чтобы он тщательно придерживался своих дисциплин, не торопясь, будучи уверенным, что его подход — лучший подход, который он может разумно использовать. Вам нужен бардак или профессионализм?

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