Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Education

Interesting Computer Science Jobs? 352

mattskent writes "I'm currently a junior in college working towards my Bachelor's degree in Computer Science. As such, I'm starting to look pretty seriously at jobs in the IT/Computer Science field. I've spent plenty of time working entry-level IT jobs doing various kinds of help desk type work, and so most of the exposure I've had to the field is related to support of other people's computers. I enjoy helping other people out, but I'd rather not be plugging things in and restarting computers the rest of my life. Although the possibility is growing on me, I don't think I would particularly love to write code all day for a living either. What are some interesting jobs that you've had or heard of that I could look into fresh out of college with a Computer Science degree?"
This discussion has been archived. No new comments can be posted.

Interesting Computer Science Jobs?

Comments Filter:
  • by 1729 ( 581437 ) <.moc.liamg. .ta. .9271todhsals.> on Friday January 02, 2009 @05:56PM (#26304845)

    I enjoy helping other people out, but I'd rather not be plugging things in and restarting computers the rest of my life.

    As a junior-level CS major, do you really think that's what CS grads typically do?

    Although the possibility is growing on me, I don't think I would particularly love to write code all day for a living either.

    Then why are you majoring in CS?

  • Wrong Major? (Score:3, Interesting)

    by God of Lemmings ( 455435 ) on Friday January 02, 2009 @06:02PM (#26304937)
    "I don't think I would particularly love to write code all day for a living either. " You may be in the wrong major. Computer Science is no more IT than automotive engineering is auto maintenance. Without that love of coding, which by the way, you should already have by now, I can't say you'll get very far. Perhaps you should be taking IT classes (if offered) or MIS or some variant, but then your faculty adviser should have pointed this out already.
  • by iamnotaclown ( 169747 ) on Friday January 02, 2009 @06:36PM (#26305321)

    I've been working in the visual effects industry since I graduated (~10 years ago). I started for a small studio writing scripts to automate common tasks. Since then I've:
    - built a distributed render system on top of open source software
    - written animation tools for artists
    - written software for animating, simulating, and rendering fur
    - learned Houdini, Maya, RenderMan and many others
    - written shaders
    - written many, many plugins and tools in various languages

    I'm now managing a team and have discovered that it's hard to find talented software developers with a solid grounding in mathematics and computer science who have the skills to work in VFX. There are plenty of hackers who can put together a MEL script, but few who actually understand the underpinnings of the systems involved.

    If working on VFX for film and TV shows sounds interesting to you, look into developing your skills as a Technical Director (or TD). The skills I look for in a TD are:
    - understanding of the 3D pipeline (modeling, texturing, rigging, layout, tracking, animation, lighting, rendering, compositing)
    - technical competency in the software used (Maya, Shake or Nuke, Renderman or Mental Ray)
    - solid background in programming (scripting, understanding of OO design, C++ desirable, Python especially)
    - solid understanding of Unix as a technical user
    - ability to learn and master new technologies quickly
    - ability to empathize with artists and understand their perspective as a user
    - strong mathematics background is highly desirable
    - experience in digital or traditional filmmaking also highly desirable

    The people I've worked with in the past usually fall into one of three categories:
    - have a degree in computer science (or related), minored in fine arts (or just had the interest), and then took a college program in 3D
    - smart people from a completely different background who taught themselves both 3D software and programming
    - artists who took a college program in 3D, who then taught themselves programming

    I recommend the first option, or if you're persistent enough, teach yourself the software at home and start networking online.

    If you have a masters in computer graphics, mathematics, or physics, another job open to you is that of the Shader Writer. Shader writers build either complete shading systems or components that model how light reacts with materials. These models are not usually physically accurate (although that is becoming more of an option now). Things to look into:
    - BDRFs
    - ambient occlusion and color bleeding
    - subsurface scattering
    - procedural texturing and modeling
    - shader anti-aliasing
    - global illumination techniques
    - shading languages such as RSL, GLSL or Cg

    Competent shader writers are HIGHLY sought after and very well compensated.

    Check out the job postings at Pixar, Industrial Light & Magic, Sony Imageworks, Rhythm & Hues, and Dreamworks Animation for more info. Also check out the forums at cgsociety.com and odforce.net.

  • by gbjbaanb ( 229885 ) on Friday January 02, 2009 @06:46PM (#26305459)

    you can say the same about business analyst jobs - understand the customer's problem, design a solution (preferably one that dosn't require large rewrites) and understand how to get the solution in that doesn't screw the existing system. It can be a lot harder than cutting code!

    I think the OP would prefer a job in test, he likes helping people out and a good tester is just that - someone who helps development make better code by pointing out the errors and problems with their code. He;d also get some interaction with code, even if its just to write test harnesses and tools.

    So QA or Test is my recommendation.

  • Re:Life in a cage (Score:4, Interesting)

    by FooAtWFU ( 699187 ) on Friday January 02, 2009 @07:18PM (#26305839) Homepage
    I'm about halfway. I kind of like my job; I do interesting things, talk to interesting people, get to occupy myself for the day, and take home a pretty fair chunk of change. But at the same time, of course I'd rather be home chilling out, playing games, playing music, or even writing code that's doesn't really make business sense by its own merit.

    And my advice to the next-youngest generation is this: Do something you like.... but think for a moment before you do something you really love, because having to do it for your job every day is going to make you a little more leery of it, especially if the Thing You Love isn't really good at making money (like many of the creative fields) and you have to work longer and harder and get yourself more stressed. I know that coding for fun isn't half as fun as it used to be anymore, at least for me. Fortunately, I have a strict 40 hour work week (! and in Silicon Valley at that) and I still have adequate time for doing thing that I love.

    That, and as far as employability in and around the computer world: internships, internships, internships. :)

  • by curmudgeous ( 710771 ) on Friday January 02, 2009 @07:39PM (#26306131)

    ... was a job with NOAA. They're usually looking for young college grads with science degrees. It's considered a branch of the US government and is organized like the military, so the pay probably isn't that great, but the benefits should be good and there are plenty of travel and learning opportunities.

    I regret not looking into it further, but by the time I had finished my degree I was married with kids and couldn't just go away for weeks or months at a time.

    You can find out more here: http://www.careers.noaa.gov/ [noaa.gov]

  • by gregmac ( 629064 ) on Friday January 02, 2009 @07:39PM (#26306135) Homepage

    On this line of thinking, any deep knowledge in a niche area can be very useful. It's usually rare to come across computer programmers who are also experts in , and as such, in the right place, they are in high demand.

    Generally you'll find an expert in a given field, who needs some software to do a task, but has *NO* idea about how to write software, at all. Quite often, these people hire programmers who know basically nothing about the field, and the expert ends up designing the system and being the manager, and often the result is exactly what you'd expect to get when a non-developer designs a system.

    Being the person that bridges the gap is incredibly useful. Just make sure that the field is something you have an interest in anyways.

    I've personally worked in a few fields like this. To give you an idea, I spent a few years building SCADA software for control systems. This meant I also spent time physically wiring up motors and sensors and such to I/O hardware, and setting up networks and then writing software to communicate with and control all this stuff.

    I've also been involved with some open-source voip projects, so a lot of that programming involves talking to voip phones, which meant I had a desk full of hardware to play with, instead of just staring at a screen writing code. It may just be me, but I find a certain satisfaction when I can interact with code I've written using objects in the real world, and not just as interfaces with a screen and keyboard.

  • Re:Open Source? (Score:5, Interesting)

    by Antique Geekmeister ( 740220 ) on Friday January 02, 2009 @07:41PM (#26306157)

    I get quite a lot of money for integrating open source tools to specific client needs. It's much cheaper, and more flexible, to pay my salary to provide access to a huge range of tools than it is to specify, purchase, and implement one closed source project that turns out to be complete vaporware or where the company goes belly up and the software can no longer be supported.

    It is a great joy of an open source developer's career when, during the time that a closed source company or consultant is writing their bids and release schedules and Gant charts and Powerpoint presentations, an open source developer has already found a compatible tool, tested it, modified it for local use, and put it in production. This has happened to me repeatedly throughout my career. On occasion, I've been overruled and the closed source tools used for 'business support' reasons, and on several of those occasions I've seen the closed source toolkit thrown out a year later and the entire system rebuilt from my notes.

    That is an event to warm one's heart on those long, cold nights sitting in the server room repairing a mess.

  • by Anonymous Coward on Friday January 02, 2009 @09:13PM (#26307325)

    And where I work, I have found that almost all of the programmers have no significant computer experience. I am still awestruck that there are people who code for a living for a number of years and are baffled by the KVM you just installed for them. I swear, I have had to draw them diagrams! Or installing and maintaining Visual Studio on their own computer... I finally told our developers that they will install all of the software on their development machines themselves because if you can't install software, how are you going to write an installer or an install script that works??? I had to force them to experience what a user goes through installing the software that THEY write.

  • by RandCraw ( 1047302 ) on Friday January 02, 2009 @11:39PM (#26308527)

    After 25 years working in software, I discovered a few years back that programming the same old thing in yet another language just didn't do it for me any more. I need to work on new and different kinds of problems. After a few early years in commercial programming, I wandered into R&D where I've worked on AI systems for the military, then supercomputing problems for the government and then for scientists and engineers in academia. Lately, I've found myself analyzing medical images as part of drug design. In addition, I've become intrigued by vision systems on robots as well as computational biology, perhaps elaborating gene networks or modeling disease. Maybe that's where I'll go next.

    However, I'd recommend a different path than the one I took (part-time graduate study ending in a MS in CS). To work independently in R&D, you'll want at *least* a MS, preferably a PhD, with a full complement of math courses through diff eq, statistics, and possibly PDEs. To work in engineering areas like communication or imaging, courses like signal processing, image processing, and perhaps 3D graphics will also help to open doors.

    Here are a few more applications for computing that sound like fun:

    - graphics, game design/implementation
    - networking, new services from cable companies/telecoms, new wifi products
    - secure systems, computer forensics
    - embedded systems (real-time O/S, low-level software or high-level hardware)
    - robotics, semi-autonomous systems
    - hand held computing (IMHO, soon to be much bigger)
    - data mining, social network analysis, machine learning the datasphere
    - searching through or indexing of media or large content (e.g. web, communication streams)

    Personally, I'd stay away from building low-level software like compilers and O/S's. This kind of work is likely to be outsourced by the heavy hitters like Intel/M$, since the needed skills are readily available in low-wage countries, and most of the infrastructure is open source (VCs seem to believe that its hard to make a profit by attaching your IP to free software or competing directly w/ the tech oligopolies).

            Randy

The hardest part of climbing the ladder of success is getting through the crowd at the bottom.

Working...