Как ваши личные ценности влияют на вашу повседневную работу в качестве разработчика?

Вчера я написал свой первый пост на Medium. Речь шла о том, как реализовать цвета и стили в программировании флаттера. В программировании всегда есть несколько способов реализации решения. Иногда бывает непросто выбрать «правильное» для конкретного случая. Еще сложнее определить стандарты кодирования.

Что значит «правильно»?

Если вы какое-то время были в типичной scrum-команде с обзорами кода и регулярными сессиями разработчиков, вы знаете, что могут быть жаркие дискуссии о «правильном» решении.

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

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

Порядок сортировки личных ценностей определяет, что человек считает «правильным», а что «неправильным».

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

  1. без значимых для пользователя ошибок
  2. прагматично, будь проще (KISS)
  3. легко поддерживать
  4. в соответствии с правилами
  5. минимум строк кода
  6. эстетический
  7. хорошо прокомментировано

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

  1. Без всех ошибок
  2. в соответствии с правилами
  3. минимум строк кода
  4. эстетический
  5. легко поддерживать
  6. хорошо прокомментировано
  7. прагматично, будь проще (KISS)

Это крайняя противоположность. У меня не было такого коллеги в одной команде — к счастью. Но подумайте, как сложно было бы найти решение, которое удовлетворяло бы обе системы ценностей.

Вопросы

  • Каков ваш личный порядок сортировки значений?
  • Как это по сравнению с коллегой у вас есть проблемы с поиском консенсуса?
  • Какое сочетание систем ценностей оптимально для команды?