Any PhD's in the house?

Started by
15 comments, last by spinningcube 12 years, 4 months ago
I've recently realized that I really love academic work when it comes to computer graphics programming. I am close to finishing my undergraduate degree where I spent a year working on a research project, and am thinking about whether I want to pursue a PhD. The thing is, I don't really want to teach, and I don't want to have to scramble together some grants to work on my own cutting-edge research project. I've heard that a PhD will get you either a teaching or research career. Research sounds fun to me, but I would much rather be doing work at a company like Intel or nVidia working on a real-life product than dreaming up some new algorithm for cloth simulation. My ultimate goal in getting a PhD would be to master the subject, but I don't want to whittle away my job opportunities just because I'm overqualified.

Is there anyone here who has a PhD in Computer Graphics (or even something else)? Do you feel like it was really worth it versus just working in industry with a Bachelors degree? The main issue I have is that I don't want a job where I'm just pushing out product releases for eternity. I want to work on something innovative. I guess it just seems like a lot of stuff with computer graphics is happening at the graduate level--unless you happen to get a job at Valve or DICE where you get to build your own game engine. At the same time, I want to be treated as someone who has authority and is respected. For instance, it seems to me that a majority of game development studios work their people like slaves and pay them peanuts. That just doesn't sound sustainable to me (and it's not, just look at the turnover rates).

I hope some of that made sense. I guess I'd just like to hear your input on the subject if you have any.
Thanks!
Advertisement

I've heard that a PhD will get you either a teaching or research career.
Essentially true for many careers and fields, but software is not one of those fields. There are a lot of corporate opportunities for PhDs in computer science.
I don't want to whittle away my job opportunities just because I'm overqualified.[/quote]Don't worry about it at all.
Is there anyone here who has a PhD in Computer Graphics (or even something else)?[/quote]I don't, but a close friend and business partner has a PhD in computer science (surgical something).
Do you feel like it was really worth it versus just working in industry with a Bachelors degree?[/quote]
YES. Will elaborate.
The main issue I have is that I don't want a job where I'm just pushing out product releases for eternity. I want to work on something innovative.[/quote]Innovation comes from you, not your employer. An employer exists only to promote innovation or suppress it. If you want to do something innovative, do it. Your degree has no bearing on that.

More and more lately, I've been coming around to the opinion that any half-competent fool can code. Now it takes someone with experience and ability to train them properly, but it's just not a particularly unique or elusive skill. The real skill more than anything is problem solving, and it pays big time to have a powerful toolbox (largely mathematical) that can be applied. I do not have the raw math ability that my colleague does and it is holding me back in the work we're doing.

That said, PhD work varies widely in quality and a PhD will almost never learn to code properly, do software engineering, etc. I imagine most of them could learn easily enough, but it's not why they get hired and nobody is that interested in teaching them. (They will probably still end up writing plenty of code, unfortunately.) It puts you in a very different role overall.
SlimDX | Ventspace Blog | Twitter | Diverse teams make better games. I am currently hiring capable C++ engine developers in Baltimore, MD.
PhD and a career in game development are not exactly loving partners -- either you get one or the other; not both. If we're talking business dev or other (related) fields to CS or SE, then sure -- if you want, go for it. :)
"I will personally burn everything I've made to the fucking ground if I think I can catch them in the flames."
~ Gabe
"I don't mean to rush you but you are keeping two civilizations waiting!"
~ Cavil, BSG.
"If it's really important to you that other people follow your True Brace Style, it just indicates you're inexperienced. Go find something productive to do."
[size=2]~ Bregma

"Well, you're not alone.


There's a club for people like that. It's called Everybody and we meet at the bar[size=2].

"

[size=2]~

[size=1]Antheus
It sounds like you should go for the PhD. The fact is that most PhD's don't wind up in academia, especially in a field like computer graphics where so much of the research comes from industry. In fact, if you look at the proceedings of Siggraph or other graphics journals you will see that a huge percentage of the papers come from industry (MSR, NVidia, Intel, Pixar, ...). When you think about it, there are way more PhD graduates than academic positions. Why? A typical professor may create dozen's of new PhD's in his career. How many faculty positions does he create? One: the one he opens up when he retires. So don't worry about being forced into academia, because only those who are really dedicated to staying in academia will make it (and not all of them will). Most PhDs go into industry.

If you are interested in research related to game development specifically, I would be wary of game companies. A few of them do good cutting edge research, but many of them are just interested in churning out more titles. It should be clear which ones are which: look at who is producing good papers. If a game company thinks a PhD makes you overqualified, chances are you don't want to work there. Generally a better bet would be companies like Intel or NVidia where researchers generally have more freedom, since they are less constrained by hardware and deadlines. Of course this changes all the time, and the landscape might be quite different by the time you finish.

My background: I almost entered PhD studies for computer graphics, but switched to physics at the last minute because I decided I liked it more. I wrote one good paper in computer graphics, and already that was enough to get the interest of game studios and other companies. So my impression is that a PhD can only help you.
"Math is hard" -Barbie

Essentially true for many careers and fields, but software is not one of those fields. There are a lot of corporate opportunities for PhDs in computer science.


I thought this was true, but I wasn't sure.

Innovation comes from you, not your employer. An employer exists only to promote innovation or suppress it. If you want to do something innovative, do it. Your degree has no bearing on that.[/quote]
This is true. However, I think the research aspect appeals more to me because it's innovative in principle. I have visions of working on feature after feature of an already well established product and not having any freedom be creative. I want to work with others, but I want to feel like I have ownership in the product and it's something I really care about. I guess I want to be qualified enough to actually have authority in the development process. I suppose that really depends on the company, the product, and my own personal initiative more than a degree.


More and more lately, I've been coming around to the opinion that any half-competent fool can code. Now it takes someone with experience and ability to train them properly, but it's just not a particularly unique or elusive skill. The real skill more than anything is problem solving, and it pays big time to have a powerful toolbox (largely mathematical) that can be applied. I do not have the raw math ability that my colleague does and it is holding me back in the work we're doing.
[/quote]

I feel the same way as you here. I've had to teach myself most of the math I'm using in computer graphics. The highest I had in college is Calculus II (not even Linear Algebra). Mostly this is because I studied at community college and transferred to a private University, so now I'm scrambling to finish up and haven't had the opportunity to take more math. In the mean time I'm using MIT's open courseware as a supplement.


That said, PhD work varies widely in quality and a PhD will almost never learn to code properly, do software engineering, etc. I imagine most of them could learn easily enough, but it's not why they get hired and nobody is that interested in teaching them. (They will probably still end up writing plenty of code, unfortunately.) It puts you in a very different role overall.
[/quote]

Interesting...I would think you would need good programming skills to exceed in graphics, but maybe you just need good math. I'm definitely a stronger programmer than mathematician.


PhD and a career in game development are not exactly loving partners -- either you get one or the other; not both. If we're talking business dev or other (related) fields to CS or SE, then sure -- if you want, go for it. :)


Eh, I've given up on game development as a career for the most part. I have no interest in working 60 hour weeks and getting paid squat. :P Maybe a good opportunity will come later on though, we'll see.


If you are interested in research related to game development specifically, I would be wary of game companies. A few of them do good cutting edge research, but many of them are just interested in churning out more titles. It should be clear which ones are which: look at who is producing good papers. If a game company thinks a PhD makes you overqualified, chances are you don't want to work there. Generally a better bet would be companies like Intel or NVidia where researchers generally have more freedom, since they are less constrained by hardware and deadlines. Of course this changes all the time, and the landscape might be quite different by the time you finish.


As I said above, my interest is more towards working for Intel or nVidia. My undergraduate research project was writing an SSE optimized, multi-threaded software rasterizer. I'm hoping that maybe software rendering starts to make a comeback in the future as CPUs become more parallel and GPUs become more flexible. It would be really sweet to experiment with different rendering pipelines in real-time. :D Maybe Intel will try again someday since Larrabee failed.
As a PhD, you're unlikely to end up in game development -- at least any 'traditional' form thereof. For the most part it's an industry that is too focused on projects, completion, and market realities to be hiring someone with research talents. There are exceptions of course but they are not representative. If you want to see where PhD/research types fit in, turn to the papers. SIGGRAPH, for example. You'll notice the employers tend to be labs (eg UNC, MIT Media) or cutting edge hardware guys (AMD/NVIDIA/Intel). And read the actual papers; most of them follow the same structure. Standard academic abstract, previous work, our method, etc and that is almost entirely mathematical. Then there's a 'for dummies' section that shows shader code for the game developers who probably skipped most of your actual work. Okay, so I'm probably being unfair here, but look at the papers! That's exactly how they're written.

I think this fits exactly with your goals, so run with it. And make sure you get into a program that suits you, of course.
SlimDX | Ventspace Blog | Twitter | Diverse teams make better games. I am currently hiring capable C++ engine developers in Baltimore, MD.

[quote name='Promit']
That said, PhD work varies widely in quality and a PhD will almost never learn to code properly, do software engineering, etc. I imagine most of them could learn easily enough, but it's not why they get hired and nobody is that interested in teaching them. (They will probably still end up writing plenty of code, unfortunately.) It puts you in a very different role overall.


Interesting...I would think you would need good programming skills to exceed in graphics, but maybe you just need good math. I'm definitely a stronger programmer than mathematician.
[/quote]

Programming and software engineering are not the same thing. In my experience, it is this distinction that makes PhDs unattractive to employ -- there are many who can program, but there are far fewer who can create professional-grade software. As Promit said, most could become software engineers, but for what ever reason they don't.


PhD and a career in game development are not exactly loving partners -- either you get one or the other; not both. If we're talking business dev or other (related) fields to CS or SE, then sure -- if you want, go for it. :)


Eh, I've given up on game development as a career for the most part. I have no interest in working 60 hour weeks and getting paid squat. :P Maybe a good opportunity will come later on though, we'll see.
[/quote]

Well, working in academia is even worse. You get paid substantially less than a junior engineer and any time you are not working on your research it is not happening, so you feel guilty for not working on it.

Despite my negative comments I would recommend doing the PhD if you find the research interesting. Despite the notion that employers will find you over-qualified I have never had that problem. In fact, I would say that my PhD has created far more opportunities than it has closed off, and that is one of the major benefits (IMHO) of higher education -- opportunity. And one of those opportunities happened to be at an awesome game studio with one of the best teams I have worked with.

-Josh

--www.physicaluncertainty.com
--linkedin
--irc.freenode.net#gdnet

Now I need to ask a question cause the OP's post is almost exactly my case and the answers got me worried a bit.


I'm halfway through PhD program right now and I would really do graphics programming after I'm done. My research field is not 100% relevant (computational mathematics) but I do have a 1.5 years of experience a as "standard" software engineer and two master degrees (Math and CS).

So my question is - am I destined to be stuck in academia?
I still do coding and plan on building up a samples library in a form of a blog (sth. like what _Humus_ has done) - will that help?
Maybe I should try for an internship at some point?

Now I need to ask a question cause the OP's post is almost exactly my case and the answers got me worried a bit.


I'm halfway through PhD program right now and I would really do graphics programming after I'm done. My research field is not 100% relevant (computational mathematics) but I do have a 1.5 years of experience a as "standard" software engineer and two master degrees (Math and CS).

So my question is - am I destined to be stuck in academia?
I still do coding and plan on building up a samples library in a form of a blog (sth. like what _Humus_ has done) - will that help?
Maybe I should try for an internship at some point?


You can do whatever you want to do (I'm not being flippant). But you are not training to be a graphics programmer so you should not expect to land a job as a graphics programmer straight out of school (you might be lucky, but don't expect that to happen). If you want to be a software engineer, you need to learn how to do that one way or another. I found that the information and conversations on gamedev.net were incredibly valuable to get me pointed in the right direction. I also did an internship. Regardless of whether you are doing a post-graduate degree or have no degree at all it is the same question: how do you prove that you can do the job?

It's not new, but listen to Will Smith

-Josh

--www.physicaluncertainty.com
--linkedin
--irc.freenode.net#gdnet


If you want to be a software engineer, you need to learn how to do that one way or another. I found that the information and conversations on gamedev.net were incredibly valuable to get me pointed in the right direction. I also did an internship. Regardless of whether you are doing a post-graduate degree or have no degree at all it is the same question: how do you prove that you can do the job?


I think I understand you correctly. Sometimes graduate level work has a small enough code-base that you can get away with being sloppy. There's definitely a difference between writing a good algorithm and designing a system. I've spent a good deal of time thinking about how to design game engines, and it gives me headaches. It takes a different skill altogether to design the architecture of an engine than it does to code it.

I'm really trying to learn more about software design in general. I love seeing an engine that is well engineered and polished. It's really hard stuff for sure, and studying computer graphics and math won't help you get better at it.

This topic is closed to new replies.

Advertisement