Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I've kicked around the idea of teaching computer programming formally(at a college-level).

What kind of degree would be required at most colleges for teaching and also any general advice for if someone would be a good fit for such a field?

share|improve this question

closed as off-topic by MichaelT, amon, durron597, ratchet freak, GlenH7 Apr 10 at 15:14

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – MichaelT, amon, durron597, ratchet freak, GlenH7
If this question can be reworded to fit the rules in the help center, please edit the question.

without any background in your question, how would we know if you'd be a good fit? –  Patrick Mar 1 '11 at 3:31
@Patrick, I think the question is, what makes for a good fit? not "am I a good fit"? –  Malvolio Mar 1 '11 at 3:32
What do you mean is a Ph.D. even heard of for Computer Science? It's pretty much a requirement to be a professor that you have a Ph.D. in Computer Science. –  jmort253 Mar 1 '11 at 3:33
@jmort @Malv put in some corrections –  Earlz Mar 1 '11 at 3:35
Good question +1 –  jmort253 Mar 1 '11 at 3:39

4 Answers 4

up vote 1 down vote accepted

Usually top of the line colleges would opt for PhD. Thats expected, at the top of the line you need to engage in continuous research. Industry has often depended on this research for future generations of their products.

However in certain subjects like game programming or GPU based computing, PhD candidates are not easy to get. I have seen people with Bachelor's or Master's degree with about 10-14 years of industrial experience moonlight as teachers in these coursers.

It would be good if you have some technical publications to your credit in the technical arena you are contemplating to teach (could be published in IEEE or ACM or the more industry oriented ones like DDJ or IBM-Developerworks) and any form of previous teaching experience.

share|improve this answer

One way to tell if you would enjoy teaching would be to start by volunteering as a tutor at your college. Many colleges have programs where free tutoring is offered by volunteers to students who meet certain criteria.

Usually, you have to have taken the course and received at least a B in order to tutor the class.

If you hate tutoring, then you're probably going to hate teaching. If you find that you enjoy helping others, are patient, and can successfully guide your students to an understanding of the concepts, then teaching might be for you.

Some community colleges and universities do take instructors with Masters Degrees in Computer Science, but you probably won't have any of the benefits that would come with being a professor, and you'll always be the low man on the totem pole.

share|improve this answer
specifically, one of the requirements is to be willing to work for the same pay your students get flipping burgers, only without the job security. It's one of the more irritating aspects of this sort of teaching that you're invariably hired by the semester and only if there's enough students. Also, no teach, no pay - especially during holidays. Most casual jobs, it's an excellent filler to your full time day job but a terrible career. –  Мסž Mar 1 '11 at 4:00

My experience is that it depends on the college, location, and the market state.

Top CS schools tend to hire PhDs, and the best CS schools often have dedicated teaching faculty (rather than research faculty that tend to treat teaching as a chore).

Many schools use PhD students, Post-docs, and even good MS students as faculty for teaching programming and other undergraduate level courses as lecturers.

Many schools use adjunct faculty. Adjunct faculty gets paid little and have no benefits, so in good markets they may have lower degrees and experience while in bad markets they can be PhDs from good schools who can't find anything else. Read about the adjunct circle, not a good idea.

In schools that do not specialize in CS, especially if they have no graduate degrees, and in particular in liberal arts schools, faculty often has no PhDs, and a masters can suffice. I'm sure there are cases of teachers with bachelors.

I heard that some for-profit schools like Devry and career and trade schools may hire MS and BS degree to teach, but never verified this.

share|improve this answer

After writing programs for a while, I read the book "Head First Programming". I loved it. I would suggest you read it. You may use the same technique to teach your students. It will be really helpfull.

Try this link.

share|improve this answer
The question was not about teaching resources, but about the degree needed to actually teach at a college. –  Ruben Steins Mar 13 at 12:07

Not the answer you're looking for? Browse other questions tagged or ask your own question.