Quality, features, schedule—pick two.
Project management? Isn’t this a software development book?
Yes, but working on a larger-than-one-person development project means working on a team; and working on a team means being managed. So learning something about project management from both sides is an essential part of learning software development.
Project management is an involved and complicated set of tasks . We’ll restrict ourselves to several tasks that will impact you as a developer the most:
Project planning
Estimation and scheduling
Resource management ...