Fog Creek Software
Discussion Board

How do I become a program manager?

I'm currently finishing my bachelor's degree in computer science, and while I have very little talent for programming I have discovered that I do have a knack for being a "team lead" - which I hope over time will translate into becoming an excellent program manager. 

What steps do you recommend for a somewhat older student (27) with a few years experience in the tech industry but no desire to become a programmer, who wants to become a program manager? 

Khai Lee
Wednesday, March 3, 2004

Not many companies have program managers. For the most part, it's only Microsoft. So the answer is: apply for a job as a program manager at Micrsoft.

Another possibility is to go for a career in usability and ui design and get a job doing that somewhere; this can be very similar to program management.

Remember that Program Managers are NOT MANAGERS in the sense that nobody reports to them.

I wouldn't really suggest being a team lead -- it's better to have a programmer who also has a knack for managing people in that role. There are enough programmers who are good programmers but get burned out after years of coding to promote into management :)

I have known people who hate programming but managed to get themselves jobs as team leads managing programmers. You really have to be *super* good manager to pull this off, because the respect of the people you lead is one of the most important componants of success.

Joel Spolsky
Fog Creek Software
Wednesday, March 3, 2004

Thanks for the quick response!  Would you classify "project manager" as something along similar lines?  I enjoy software development, just not as a developer ;)  During most of my projects I have acted as "team lead" simply because no-one else wanted the responsibility of scheduling and interfacing with the clients - they preferred to just write code.  My design skills are decent (for a student) - but I have no delusions of being a skilled designer. 

I was thinking of something along the lines of "owning" or "championing" a project within a company, but not as the technical lead - more as the management person to ensure that the developers and customers were both clearly understood and working towards a common goal.  From the classes I have taken, I understand that a great percentage of failed projects simply stem from the developers not understanding/delivering what the client wanted.

If this is a possible career goal, what kind of job/further training should I be looking for?  There seems to be a rather significant gap between my current expertise and experience and what would be required.


Khai Lee
Wednesday, March 3, 2004


It sounds like you are looking for what is tradionally called a Project Manager or Project Coordinator role. Those people don't design or write code, there job is to  interface with the client and remove obstacles in there team's path ... all the while making sure the project stays on track. A good organization will put the responsibility of delivering the project on the shoulders of the PM. (it's there ass if it fails)

If you want to be more on the tech side, look for something with "App Manager" in it. Some internal IT staffs will use that to describe the manager over the programmers, and the position may include technical design and coding.

michael sica (
Thursday, March 4, 2004

similarly, you can find a job in professional services for an enterprise software company . . . Joel tends to refer to the software these companies put out as 'consultingware'. rarely will you find a company that will entrust you with PM responsibilities out of the chute, but an aptitude for those roles will put you on the right track. personally, i've taken that path, from consultant to project manager in professional services group to project manager for our product releases.

Thursday, March 4, 2004

*  Recent Topics

*  Fog Creek Home