Wednesday, September 07, 2016

Yet Another Blog Post on Industry vs. Academia

I recently had the following chat conversation with a Former Student about the possibility of doing a PhD in Computer Science*.

FS: What's the value of grad school if I don't want to stay in academia (other than "grad school might be fun")?
FS: There, I *think* that's the question I've been trying to ask
Me: Oh
Me: Enrichment
Me: You learn to think differently when you go so deep into one thing
Me: You also learn to execute
Me: It's very challenging to do a project start to finish
Me: Maybe I'll write a blog post for you
FS: That's a good reason, but it isn't something I haven't gotten in industry
FS: In fact actually I thought that one advantage of grad school would be that id get to do a more diverse set of things
FS: Than I do now

So here is the blog post in which I expand on my point and explain what I see as some skills one may develop more while doing a PhD** than working at a company. (I have this other "academia is fun" post about the PhD.)

Commitment. A defining characteristic of a good PhD thesis is that it solves a problem of sufficient scale and initial uncertainty ("a big enough research problem"). This usually involves commitment in at least two dimensions, time and emotion. Especially in non-theory areas of Computer Science, problems worth solving can take years before yielding satisfactory results. This kind of timeline seems quite different from what I've seen in industry. Committing to a research problem also means committing to uncertainty and faith that you will one day find a solution. This often involves believing in ideas that many other people don't believe in--in fact, Great Work is often met with initial disapproval. Learning how to become robust to other's lack of approval is useful for most of life. (And not something companies necessarily train you to do. In fact, it's in their best interest to train you for the opposite.)

Execution on open-ended problems. The point of having a company is to build a product that makes money. A product is more likely to make money if it actually works. Thus, in companies, a lot of the focus seems to be on getting the details right on things we already know we can build. The more time I've spent at a company, the better of an engineer I've become, and the better at Engineering Process. In research groups, much of the focus is on collecting evidence that you could build things you previously weren't sure could really exist. While engineering is certainly a useful skill here, more important skills include prototyping ability, and the ability to deal with significant uncertainty during the research process. (This is perhaps why research code so often does not meet engineers' standards.)

Self-direction. For many, the PhD involves long stretches of time working on one's own. (In the very least, the dissertation is a document that you are expected to write on your own.) Most advisors will not micromanage this time, especially in the later stages of a PhD. As a result, sooner or later PhD students will need to manage the relationship between work and time day-to-day and also month-to-month and even year-to-year. Though my industry internships have all been pretty self-directed, in which I was given a project and told to make as much progress as possible, I've been told this is not usually the case in companies. Self-direction makes you a more independent employee if you want to return to industry. On the one hand, people may feel comfortable giving you more responsibility. On the other hand, you may have trouble working for other people after getting used to working for yourself.

Emotional resilience. There are three parts of most (many? my?) PhD experience(s) that do not seem to be part of most industry experiences: 1) solitary work, 2) long periods of thinking without doing, and 3) long periods of doing without having much to show for it. This leads to many existential crises, as the emotionally difficult nature of the process causes one to Question Everything. I'd like to think that people emerge stronger from these existential crises. One of my college roommates has been getting a PhD in Comparative Literature and during our PhDs we often discussed how our research situations forced us to deal with questions about our values and goals, and how we felt that this process of questioning led to important emotional growth. The existential crises that a PhD exposes you to seem more similar to the experience of starting a company than that of being employed by one.

And on diversity of topics: in graduate school you will get breadth from classes, you will get to see a breadth of work in your field through reading papers, attending talks, and talking to other researchers, but depending on how your PhD is structured you may work on very few different projects. The Computer Science PhD provides a certain kind of intellectual breadth, rather than breadth of work.

I'd like to add that the "graduate school vs. industry" debate is like the "public school vs. private school" debate, or other debates that make no sense in a vacuum. Yes, in principle there are many ideological differences, but there are very applied research groups and very experimental industry groups. In practice, it really depends on the specific circumstances. Even so, one way to look at a PhD is as an investment into having greater access to experimental groups. There may be industry groups now that let you do out-there things, but without a PhD you rely on certain companies continuing to exist.

Anyway, as much as I would like said Former Student to do a PhD (and specifically with me :)) it really depends on FS's particular situation, hopes, and dreams. And since everyone's situation is different, I'm also curious to hear what others think they "get" out of a PhD (other than "fun," and the opportunity to continue on the academic track).

* I wrote this post with programming languages/systems research in mind. I'm curious how well it generalizes.
** What I say definitely applies for students in top CS PhD programs with advisors who give them certain kinds of freedom. I'm not sure how it applies to everyone else.

1 comment:

Robert Linde said...

This article explains how to clearly define your job target and provides resume writing tips to ensure that your focus is immediately obvious to the recipients of your resume. cheap resume writing services