1. Стив Макконнелл - Совершенный код.
- почему еще никто не назвал эту очевидную классику? (я аж Ctrl+F
-нул по странице, не поверил сначала).
- также рекомендую его "Анализ алгоритмов. Вводный курс" (хоть это и в стороне от сабжа).
2. Кент Бек - Экстремальное программирование. Разработка через тестирование.
- многие считают этот подход антипаттерном, но прочесть, безусловно, стоит хотя бы ради того, чтобы иметь возможность самому поискать ошибки в рассуждениях автора (оно того стоит).
Еще несколько очень разных книг, которые для меня стоят в одном ряду с Макконнеллом:
3. Фредерик Брукс - Мифический человеко-месяц.
4. Эндрю Хант, Дэвид Томас - Программист-прагматик. Путь от подмастерья к мастеру.
5. Том Демарко, Тимоти Листер - Человеческий фактор: успешные проекты и команды.
Далее, у Макконнелла в (1) после каждой главы приведен огромный список литературы по теме, большая часть - признанная классика, можно прямо брать списком и выкладывать в этот тред.