10-кратный программист

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

Я чувствую, что автор мог бы донести ту же мысль, говоря о том, что делает хорошего инженера-программиста, а не 10-кратного программиста. Идея 10-кратного программиста несколько вредна по нескольким причинам:

  1. Это поощряет синдром самозванца. Сосредоточившись на таком почти мифическом существе, как 10-кратный программист, многие, кто заботится о том, чтобы стать хорошим инженером-программистом, предъявляют к себе необоснованно высокие стандарты. Синдром самозванца несоразмерно затрагивает меньшинства, и это проблема, на которую индустрия программного обеспечения должна обратить внимание. Быть хорошим в своей работе важнее, чем быть в 10 раз лучше, чем все остальные.
  2. Программист 10x — это, так сказать, преждевременная оптимизация. Если мы считаем, что уровень навыков инженеров-программистов находится на кривой нормального распределения, то программиста с 10-кратным увеличением можно определить как человека, который на несколько стандартных отклонений превышает среднее значение. Это означает, что 10-кратный программист по определению составляет ничтожное большинство всего населения. Для большинства людей, независимо от того, являются ли они инженером-программистом или работодателем, это не является ни здоровой, ни реалистичной целью. В лучшем случае это интересный мысленный эксперимент. Тем временем в реальном мире есть над чем работать. Вместо того, чтобы рассуждать о том, как это может сделать 10-кратный программист, лучше просто закончить работу так, как мы умеем, и повторить результаты.
  3. Очень сложно измерить 10-кратного программиста. Если мы считаем программиста 10x знаменитым инженером-программистом, таким как Столмен, Маккарти или Хоппер, то мы будем говорить о крайне незначительном меньшинстве инженеров, которым довелось работать над громкими проектами. Мы бы обменяли отзыв на повышение точности. Если расширить определение, то все дело становится более спорным. Это сводится к нерешенной проблеме измерения производительности программного обеспечения.

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

Первоначально опубликовано на сайте premgkumar.com 9 мая 2017 г.