<p>Hello all, I am a freshman in computer science. I've been talking to professors in my department about their research and there are some research subjects I am really interested in (machine learning, wireless networks, security). When I talk to people that are either alumni or have gotten job offers, it seems (at least to me) that the stuff they are doing is significantly less interesting than the stuff that people in research positions (both industry and academia) are doing. So, this brings up the topic - if one wants to conduct cutting edge CS research, what is the best way to go about doing it? I'm guessing a PhD is required for most positions, although there are a few researchers at my school that have only an MS. Are there just as many CS research positions in industry as there are in academia? Does a research position in academia provide a comparable salary to industry? I looked up the average salaries made by professors of different majors, and CS professors have one of the highest average salaries (below law and business, about the same as engineering, higher than natural science). Salary isn't THAT important to me as long as I can support myself and family (~90k), and although 100k+ would be nice, it isn't necessary. Any opinions or advice are appreciated. Thanks!</p>
<p>“Cutting edge” is another one of those “it depends” things. Companies like Google can invest a lot of money in developing new technologies, but the research is (usually) for the purposes of making the company more profitable, rather than extending the frontiers of an academic discipline.</p>
<p>Salaries also tend to vary quite a bit depending upon location, whether or not the university is private or public, etc. Also consider that salaries are (generally speaking), not only lower for non-tenured professors, the appointment might only last for a fixed, nonrenewable period of time.</p>
<p>Most of my friends who went to work for the famous companies after grad CS in the 80’s ended up doing totally new hire trivia pursuit stuff for years after that. I got a job with a (then) low tech company and got to do the kind of R&D work they would only dream about… One thing for sure, you need school, lots of it, and lots of intangible skills (writing, for example, good analytical/research skills, etc). </p>
<p>30 years later I’m still in the same place still doing R&D work.</p>
<p>You might consult the section for “Computer Scientists” at the Bureau of Labor Statistics Occupational Outlook Handbook. I was actually curious too, so here’s a link, and a summary of key points follows: [Computer</a> and Information Research Scientists : Occupational Outlook Handbook : U.S. Bureau of Labor Statistics](<a href=“http://www.bls.gov/ooh/computer-and-information-technology/computer-and-information-research-scientists.htm#tab-1]Computer”>http://www.bls.gov/ooh/computer-and-information-technology/computer-and-information-research-scientists.htm#tab-1)</p>
<ul>
<li>Most computer and information research scientists need a Ph.D. in computer science or a related subject, such as computer engineering.</li>
<li>Important qualities: Advanced math skills. Analytical skills. Communication skills. Critical-thinking skills. Detail oriented. Ingenuity. Logical thinking.</li>
</ul>
<p>Sector / percent employment
Federal government / 24%
Computer systems design and related services / 23%
Scientific research and development services / 13%
Educational services; state, local, and private / 9%
Software publishers / 5%</p>
<p>Anecdotally, if you want to be guaranteed a gig doing cutting-edge CS work, you need a PhD and (1) pursue a tenure-track position as a professor at a decent national university, (2) get a job at a national laboratory or government agency in a research capacity, or (3) get a job at a large private corporation (Google, Amazon, Microsoft, etc.) in a research capacity. Of course, there are other ways to do it, but these are the ways that I’ve seen work.</p>