Недисциплинированность
«Дисциплина это мост между задачей и решением» Джим Рон.
Я всегда полагал, что дисциплина это главное не только в разработке программного обеспечения, но и в любой другой сфере жизни. Действительно, тяжело найти человека одновременно творческого и дисциплинированного.
Стив Павлина выделяет 5 принципов самодисциплины: смиренность, сила воли, усидчивость, прилежность, упорство. Прим. пер.: A WHIP — acceptance, willpower, hardwork, industry, persistence.
Мой подход заключается в следующем:
- наличие TODO-листа на каждый день;
- одновременно заниматься только одним делом;
- делать хорошо;
- не бросать что-то, пока это не будет доведено до конца;
- лучше поздно, чем плохо, лучше плохо, чем никогда.
Большое эго
Мой опыт говорит мне, что самомнение и программист идут рука в руку. Главная проблема этого в том, что большое эго мешает реализоваться. Вот показатели того, что Ваше эго слишком велико:
- Вы считаете себя лучшим программистом;
- Вы перебиваете собеседника;
- прося оценить Ваш код, Вы не принимаете критику, но хотите услышать как он хорош.
В Интернете есть много публикаций о программистах и их эго. Я рекомендую 2 из них, от Майка Берната «Программирование без эго — разработка без агрессии» и обсуждение на stackoverflow.com.
Некоммуникабельность
«Если я собираюсь говорить 10 минут, мне нужно готовиться неделю; если 15 минут — 3 дня; если полчаса — два дня; если час, я готов прямо сейчас.» — Вудроу Вилсон.
В жизни, общение это основная активность человека. Быть коммуникабельным это тяжело, но существенно в нашей профессии, т.к. мы постоянно обмениваемся мнениями о дизайне, коде, пишем отзывы, занимаемся документированием, убеждаем кого-то другого в том, что наша разработка лучше, пишем код…
Коммуникабельные люди это те, чьё объяснение:
- Чётко; они говорят о том, что нужно и что следует понять;
- Просто; они говорят доступным языком;
- Кратко; ничего нельзя добавить и ничего убрать в их речи.
У меня есть два совета, чтобы стать более коммуникабельным:
- Если Вы считаете себя плохим докладчиком, готовьте сообщение до тех пор, пока оно не станет сосредоточенным, простым и кратким
- Если вступаете в обсуждение, сначала слушайте, потом думайте, а потом говорите
Есть и ещё несколько советов, которые полезно знать при проведении встреч. Они опубликованы в статье «7
лучших практик принятия решений в команде разработчиков»
Позабыли о заказчике
«Если мы не заботимся о заказчике… кто-нибудь позаботится за нас.»
Вы работаете только для вашего заказчика. Очень легко можно забыть об этом. Я был в командах, где больше внимания уделялось технологиям и платформам, а не потребностям заказчика. Мы могли потратить месяц, создавая фреймворк, который ничего не давал ему, и однажды мы попытались использовать его, но обнаружили, что он не решает наших проблем.
Не расставили правильно приоритеты в работе
Разработчики, которые постоянно ищут золотые зёрна, изучают новые или более интересные технологии, или занимаются только тем, что они считают более интересным, создают преграды для проекта. Я не говорю, что это ненормально время от времени переключаться на другие вещи, нам всем нужно иногда отвлекаться, но если Вы делаете это слишком часто, Вам следовало бы пересмотреть Ваши приоритеты в работе.
Рекомендую Вам прочитать «5 советов по созданию хорошего кода каждый день».
Эта статья переведена мною с оригинала на makinggoodsoftware.com. Надеюсь Вам понравится.
Спасибо Яндексу и свободным словарям Farlex!

