
High-quality software demands high-quality management. That's the subject of Quality Software Management, a four-volume series that has grown out of acclaimed author Gerald M. Weinberg's forty-year love affair with computers.
He joined IBM in the 50's, led the design of the telemetry system for NASA's Mercury project in the 60's, aimed to put humans at the center of software development with 'The Psychology of Computer Programming', and spent the rest of his life working on helping people do software development well together. IMO, any time you spend digging in to his large catalog will be well repaid.
Who talks little,
They will say,
When your work is done,
And your aim fulfilled,
“We did it ourselves.”'
- Lao Tse, quoted in 'Becoming a Technical Leader'
I heartily second 'Becoming a Technical Leader.' The exercises there are designed to get you to think about and grow in the situation that you are currently in, so the book will be a perennial.
I'd add that Weinberg also produced a four-volume series, 'Quality Software Management', where he sums up all he learned about project management in his programming, management and consulting careers. He later republished the material in a series of smaller eBooks [0] at LeanPub.
I know of no better written resources for people who want to learn to manage software development in a way that accomplishes the technical tasks while respecting the people who do the work.
I'd add, as others have or will, 'Peopleware', 'The Mythical Man Month', 'Code Complete', and 'Making Software', but Weinberg not only presents information and tells stories, he gives practical suggestions on how to 'check your work', adapted to your situation.
- Code Complete 2nd Ed.
- Quality Software Management Vol 1-4, by Gerald M. Weinberg
I'd also throw in: Code Reading - The Open Source Perspective
The whole series is definitely worth reading.