Tech Industry Really Needs Professors and Teaching Talent
insights.dice.com
insights.dice.com
Universities aren't trying to hire someone who can teach undergraduate CS courses. They're trying to hire someone who can build a lab capable of bringing in a steady stream of seven-figure grants. You need to have a PhD from a top-five (ish) school, with an excellent publication record, and an existing network of collaborators to be competitive for the vast majority of open positions.
Also, still trying to dig up the last article I read about this, but didn't that figure lump pretty much all faculty positions together? I could definitely believe there are lots of contingent faculty positions going unfilled, but the numbers probably look quite different for someone who's not interested in part-time positions, teaching-only positions, soft-money positions, etc.
even at stanford, perhaps. i was astonished to see that a stanford junior is the listed instructor for EE 364A (a PhD level course in convex optimization, aka CS 334).
It takes five years to mint a Ph.D in computer science,
and schools such as Stanford need more faculty now.
Looking at https://cs.stanford.edu/jobs I see two job ads - both saying applications are no longer being accepted.I guess they must have solved their faculty problems since the article was written!
The OP is based on this report: https://www.nap.edu/read/24926/chapter/1, which is starting/pushing the conversation. They write:
"RECOMMENDATION 2.1: Institutions experiencing a computer science enrollment surge should seriously consider an increase in resources to address the rising workload on faculty and staff in computer science and related departments, and the limitations arising from inadequate facilities."
"RECOMMENDATION 2.3: Institutional leadership should engage directly with computer science departments or programs to develop appropriate faculty hiring and faculty size targets, and develop strategies to improve faculty retention. Increasing the number and enhancing the role of academic-rank teaching faculty should be given serious consideration."
"RECOMMENDATION 2.4: Larger institutions—in particular, research universities—should reevaluate the organizational placement of the computer science department and other departmental units with a computational mission."
Basically, "Give CS a better deal"
There could be a structural change that from here on we'll need a larger number of CS professors, but I can see why the universities are being conservative.
Not to say the whole lot of them shouldn’t get raises; one thing missed in this discussion is that CS programs are counter-cyclical, when there’s a downturn in the tech industry and it’s hard to find a job, more candidates opt for getting a masters in CS instead of going into industry/finding a new job after a layoff.
Here's the transparent california list of UC salaries: https://transparentcalifornia.com/salaries/2016/university-o... The highest salaries are for surgeon profs, which, ok, sure, why not?
Here's 50 prof's in the PROF-AY job with total comp >$450K; lots of them in econ, based on some light perusal. The very-tenured math profs I worked with seem to be in the range of ~$150K total comp, by comparison. https://transparentcalifornia.com/salaries/search/?q=PROF-AY...
Many or most of the individual contributing practitioners I've encountered in my varied career across companies big (Microsoft, Google) and small (startups early and mid-stage) consist of individual contributors who either fall up into management or otherwise happily and unwittingly peak out in their skill set.
The typical "high-quality" Senior Engineer is "smart and get things done" (Junior) plus a little bit of experiential knowledge peppered in with cold hard years on the resume.
But there's a craft and skill set to this work that takes (1) a very focussed (presently, self-) training effort and value system and (2) takes years to master, but where the payoff is enormous (i.e, where the 10x/Nx productivity gain is found.)
That last statement is theory only inasmuch as it challenged by those that don't want to believe that they're far from (the, or their) peak; I know it to be true.
As a hint to what that skill set is, it's fairly simple to talk about descriptively...the end result being building systems from composable, contract-based abstractions of course respecting and knowing the current available tools and how to wield them. The problem is able-to-describe and able-to-do are miles apart; it takes many, many years of conscious, directed effort to perfect the craft. The few people I encounter that have that ability had to care about it and muscle through it on their own. We need something closer to an organized pedagogy and training and measurement around this particular skillset to produce much more of it in the industry.
The problem is that any given business rightly has no interest in the kind of long-term investment required. And, at large, academia for many reasons doesn't have the practitioner context/focus/awareness to deliver the skill set, either.
There's a hole to fill here somewhere...
I guess if the above is adopted, there could be issues with part-time adjuncts getting higher hourly rate, by some measure, than tenure-track faculty. Thus, a market-based bonus which could fluctuate with market conditions of each field for tenured or tenure-track faculty members should be considered.
Added: By hard-to-fill, I meant hard-to-fill to the qualification threshold of research universities implicitly referred to in the article.
No. That could result in CS people (esp. non-tenured ones) making more money than beginning business professors, and that simply cannot be tolerated. Instead, they need to just keep salaries for CS people low, and then whine to the press about how they can't fill all their CS positions.
A lot of corporations do the same thing.
Paying market rate won't help, because they're not leaving positions unfilled because they can't make an attractive offer. They're leaving positions unfilled because they're unwilling to live in a world where not every team gets Lebron James. It's better to do without than to not get your first choice, so that's what they do. If they were willing to pay $800k to fill a seat with whoever they picked as that "market rate" lecturer, they could have just hired the same guy for $120k -- he applied for the job and you rejected him.
This is interesting. Depending on admissions standards for that program, I could see a ton of people from other disciplines jumping at it. The issue, of course, is that people would have to have a strong background to be competent to teach any kind of CS in a year. And the people with that background probably aren't the people looking for a career change.
Just thinking about myself for example---I'd probably be better qualified than most people with phds in another discipline for such a thing, since I'm moderately quantitative and semi-decent at coding, but I don't think I would be qualified to teach college-level CS on the basis of a year of transition education.
Would a good 4-year university accept an adjunct who holds a Master's degree from a top-10 CS program, but not a PhD, to teach an upper-level course (that does correspond to the person's area of specialty)?
---
Added: Thank you for all the ideas and esp detailed explanation from tom_b. It sounds like more work than I can allocate time for in the near term. Perhaps in the future.
I thought up an alternative: Join/organize meetups and occasionally give talks or participate in panel discussions about recent/latest research sounds like more fun and less work than teaching in a formal setting. (Posted here in case someone would like to make use of the idea.)
They may, but adjuncts are poorly paid, and often have fewer benefits, than faculty members. Many adjuncts often have no real guarantee they'll have a job the following semester/year. They are the first to get axed when there are budget problems.
And frankly, having spent time in academia, they do have a significant ego problem. Adjuncts will be treated poorly by professors. Many lower level courses will have a "director" who is a professor, and he will usually treat the adjunct poorly. Rarely do adjuncts have freedom in what homework is assigned and what the syllabus will be.
So pretty much like every job I've ever had in the private sector.
Yes, but with a lot higher pay, and often with better insurance, etc. And your work experience in industry has more weight. I don't know how employable a person is if their only experience is teaching.
Just looked up two of them in a nearby university. 12 month salary is $75-80K. No stocks, bonuses, etc. Both have MS degrees.
It is a decent salary if the job is not stressful, and you are in a dual income family. But job security is likely poorer than in industry.
Time required is generally around 15-20hrs / week depending on the course.
Workload varies. I preferred project-based assignments and tried to give students freedom to choose projects in a personal area of interest to increase their commitment, but it makes grading terribly time-consuming. I found that even with a well-defined rubric, individual projects cost me somewhere between 30-60 minutes of grading time per student.
I have taught using a provided syllabus and created my own. I was vastly happier when I created my own, but it adds time. With a provided syllabus, I probably spent 3-4 hours reviewing material and slides per lecture. That included reading the course textbook materials and working through most of the textbook problems. Maybe double that time when working from the syllabus I created, making new slides, and prepping for in-class programming work.
Grading sucks. If you teach a required course, you will also have to deal with some number (hopefully small) of unmotivated students. One of my courses was an elective course and I found the students .... happier?
And no matter how much I emphasized not waiting to start programming projects (including by having graded check points), a significant number of students wait until the day before projects are due to start. And then flame out.
Don't teach a course as project-only if it is a programming-oriented course. A meaningful number of my students submitted rather well-done programming projects, but were unable to write a for loop on an open-book exam. I also had students who were suspiciously unable to even use a required editor to demo small programs in one-on-one meetings.
Otherwise, teaching was fun and it's definitely worthwhile. All the warnings you hear about adjunct pay being low are also true.
[1] http://projects.dailycal.org/paychecker/departments/computer...
So people hear STEM shortage and go major in chemistry or biology and then find out there are few and poorly paid jobs so they have to accept that or get an advanced degree. Some simplification here, and individual exceptions exist of course.