The transition from programmer to Team Lead or Software Manager can be a difficult one.
One week, you're in your cubicle cranking out masterful code...
and the next, you're managing a whole team that has to navigate innovative solutions, coordinate input from different departments, then anticipate and eliminate potential showstoppers.