The following are difficult archetypes found among development managers:
In a large organizations, developers have to report to someone, and the people they report to then become Development Managers by definition. There are no specific requirements for being a development manager, but it is generally preferred for them to have written software at some point in their career.
These managers can be divided along two lines: those required to contribute software just as a developer would, and those who are not. If they do still write software, they can sometimes go by the name of Technical Lead or Architect. The job description of a non-coding development manager is to care for the developer’s needs. This includes activities such as approving timesheets, approving sick days, dealing with conflicts, and acting as a go-between with the Human Resources organization on issues such as compensation increases or demands for promotions.
Developers have strong personalities, and require an experienced hand to manage. They often can find a job at another company at the drop of a hat, can be temperamental, or even have a temper. If the development manager is still technical enough to write software with the developers, there is a chance they might be able to manage them effectively. If they no longer code – or worst yet have never coded – it is only a question as to what degree they will fail at effectively managing developers.