
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?"
Help Organize an Open Source Project (Score:5, Insightful)
Let's see. You'll get a CS degree but don't feel like writing code for a living. That's a tough one.
Are you a "people" person? All those introverted geeks need to talk to each other, make decisions and agree on stuff. Something that they (on average) do very poorly. You would have a career in product marketing, since you understand the geeks and can talk to them.
If that makes sense to you, then short-term, your best bet is to join an open source project and volunteer to *organize* stuff. Not code, but organize. You'd be amazed how badly needed it is for most projects.
--
the elephant in the room: How to Make Money with Open Source? [slideshare.net]
Re: (Score:2)
thats not a job, thats charity.
Re:Help Organize an Open Source Project (Score:5, Funny)
Oh great, set him up for an eventual meeting with the Bobs!
Well-well look. I already told you: I deal with the god damn customers so the engineers don't have to. I have people skills; I am good at dealing with people. Can't you understand that? What the hell is wrong with you people?
Re: (Score:2, Insightful)
Re: (Score:2)
In a corporation that would be a manager or business analyst. Since you're looking for a job, you can start as a business analyst [docforge.com], helping the business side of a company determine what software should be built and help run the project. At an entry-level position you'd basically help with communication and project management between the IT department and rest of the company.
Re:Help Organize an Open Source Project (Score:4, Informative)
Actually it's quite common for people with an proper CS degree ( the theoretical kind ) to not want to code. While I do it for a living right now it is definitely not my plan to keep doing that for the rest of my life.
Personally I'm probably going to look into teaching, did a bit during my studies and it was quite fun and rewarding.
Re:Help Organize an Open Source Project (Score:5, Insightful)
If you're spending 8 hours a day coding, you're doing it wrong. Hell, if you're spending 8 hours a day doing the any one thing, you're doing it wrong. Coding is exactly one, somewhat valuable part of software development. To implement an effective solution requires that you:
IMHO, effective design is the most valuable part of software development, but all of the steps above are important. Coding is just one of those steps. Also, I didn't really mention soliciting feedback (aka code reviews), though on a good team, that would be a part of the last step.
If you've got a CS degree and all you're doing is coding, you wasted about 2-3 years of your life on a four-year degree you didn't need. All you needed was an associate's degree from DeVry and you could be coding. Write software instead. It's much more interesting.
The most important way to "write software" instead of "write code" is to choose a good employer and a good team. Unfortunately, I have no simple advice for how to do that. But don't be satisfied with the first place that offers you a job. If your job seems like a crap job, it probably is. Keep looking until you find a company and a team where you feel valuable.
Re: (Score:3, Insightful)
Absolutely. And in my opinion, those companies and organizations are "doing it wrong". My point wasn't that there aren't lots of jobs where all you do all day is code, but that anyone with skill and drive should avoid those jobs at all costs.
I'll go further and say that that's never the best solution and that anyone who wan
Re: (Score:2, Insightful)
Let's see. You'll get a CS degree but don't feel like writing code for a living. That's a tough one.
Not really, there are elements of Algorithmic Design and Analysis in most Technology based positions, however it doesn't mean you have to be a programmer for your entire career - I found as time went on I spent less and less time infront of an IDE and more time infront of Word and/or Visio.
Are you a "people" person? All those introverted geeks need to talk to each other, make decisions and agree on stuff. Something that they (on average) do very poorly. You would have a career in product marketing, since you understand the geeks and can talk to them.
Most Geeks I've worked with (the talented ones anyway) aren't introverted, they just aren't engaged by "normal" people, mainly because "normal" people are stupid, or at least unwilling to learn, even when you try to break
Re: (Score:2)
Re: (Score:2)
The MS thing is pretty clearly a joke, but I have to honestly ask (showing my ignorance as to open-source), how do open source projects get paid? I thought it was mostly volounteer work.
Re:Open Source? (Score:5, Interesting)
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.
Development Isn't Just "Writing Code All Day" (Score:5, Insightful)
Re: (Score:3, Interesting)
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 intera
Re: (Score:2)
He should come work in Europe. We all slack off half the day.
Re: (Score:3, Funny)
Only half? I'll stick to the US, most days I slack off all day.
One additional language you might consider... (Score:3, Funny)
Re: (Score:3)
With the current state of the industry and the world economy, have you considered taking Chinese?
Alternatively, he could learn Spanish so he could talk with coworkers at his McJob. Some even require it now.
Estoy trabajando en mi español
Whatever you do... (Score:2, Insightful)
Re:Whatever you do... (Score:4, Funny)
It can still be fun though. [youtube.com]
Entry-level-ish positions (Score:5, Informative)
Rather than tech support, there are other non-coding IT jobs out there.
A lot of these could be junior-level in a big enough organization, or in a company where you're a junior consultant sort of person. Usually you work up to that type of position by doing helpdesk first, so it looks like you're ready to move on to something similar.
Re:Entry-level-ish positions (Score:4, Insightful)
Re: (Score:2)
I don't know, there are definite benefits to those "learning experiences" once you've recovered from the 16 straight hours of panicked desperation trying to recover the Exchange databases you've just accidentally blown away by formatting the wrong LUN on the SAN (Not that I've managed that personally yet, but I've certainly been part of the panic).
As with anything, you need to strike a balance between taking all the advice and instruction from someone more experienced than yourself and doing things on your
Seriously? (Score:2, Informative)
I don't know of ONE good sysadmin that doesn't have programming knowledge of some decent degree.
Do you want to run everything you do manually? Do you want to go into tedium on a regular basis to do regularly scheduled tasks? The whole point of a GOOD sysadmin is that they don't do SHIT, they just automate the hell out of their environment and let it go.
That goes for Windows as WELL as *nix.
If you want to be a good sysadmin, learn how to program. Whether it's bash/perl/python, or VBScript or Powershell.
Re: (Score:2)
Absolutely, or any other type of operations center (NOC, SOC...). Great experience, you get extra pay (shift differential) for nights/weekends, and there are always jobs available because turnover is high (gain experience and move on to a better job).
I might be biased, and not the best expert, but... (Score:5, Informative)
Get a double major or minor in biology. People who can handle bioinformatics or the computer side of structural biology are in really high demand. Not saying it's moreso than other fields, but I do know you can write your own paycheck with that crossover.
I also don't know if you'd find that interesting. I do, and knowing that your job is working towards the cure for cancer or whatever the goal is I think makes some of the more menial tasks more interesting, but that's just me.
If you're not looking to add a major or minor, you can still likely get into that field and learn whatever you would need on the job about bio. They're that desperate.
Re: (Score:2)
Re:I might be biased, and not the best expert, but (Score:5, Interesting)
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: (Score:3, Insightful)
On this line of thinking, any deep knowledge in a niche area can be very useful. ...and incredibly risky. The idea with a double major is to REDUCE your industry risk, not increase it. It may not feel like it, but your decision of your career direction is one of the riskiest decisions you will make. You have no real control over whether your industry will grow, disappear altogether, be outsourced, become obsolete, see demand drop due to economic forces, be legislated into oblivion, be taken over by the gove
Re:I might be biased, and not the best expert, but (Score:4, Insightful)
I can't quite figure out how to reply to this without sounding snarky towards the parent, who clearly has a different view of the field than I do and who am I to say which view is right? But feel I need to say- we're NOT that desperate anymore. The boom in bioinformatics was about 10 years ago now (pause while I shudder at realization that I have been out of grad school for that long....) I work in this area, and have since leaving grad school. When I graduated in 1999, there weren't really any bioinformatics grad programs, and the field was populated by a mix of biologists learning computers, computer types learning biology, and some physicists. Now, there are plenty of grad programs churning our bioinformatics MS and even PhD graduates. The only people I know working in bioinformatics w/o some serious bio background now have either been at it for many, many years or are pretty much pure coders.
However, as one of the previous replies said- there is a career to be made by being the interface between a specialized customer set (in this case, biologists) and the software developers. I've done that quite a bit, and have managed to keep myself employed. But you need to have credibility on both sides- which means a strong bio background (an advanced degree helps) AND an understanding of how software development works (it helps if you've coded).
You could also look at project management. Lots of folks laugh at project managers, but that is usually because they've never worked with a good project manager. Once again, though, I think it helps if you've done some coding, both for credibility with the team and so that you can make reasonable estimates about how long development tasks will take, etc.
Not a lot of options (Score:5, Informative)
If you don't want to code, then you're in the wrong degree program. There's really only 3 entry level jobs for CS people- programming, testing, and system administration. All 3 of those require at least some coding (the first being all coding). Testing breaks down into low paid monkey work and SDET positions where you're expected to code almost as much as a programmer. There's various types of management and liason type jobs that require a technical background, but without at least a few years experience you aren't qualified for them. If you really hate coding, your options are really sys admin or a quick change of majors.
Re:Not a lot of options (Score:5, Insightful)
Re: (Score:2)
Quite possibly, but that's not an entry level job. You still need experience, both to get the trust for that level of responsibility and to learn how things are done in the real world. I know I'd ask for immediate reassignment to a new team if they hired my manager right out of college.
Why are you getting a CS degree? (Score:5, Insightful)
Most people go for CS degrees because they want to work in IT, or write code.
You may want to take a step back, figure out what you *do* want to do with the rest of your life, and switch majors.
exactly (Score:4, Insightful)
Exactly. If you really enjoy computing, but have found the industry isn't what the hobby was, and you're a people person (which it sounds like you are), then you might enjoy a different application of your skills, like teaching IT (or even teaching math). But for god's sake, get out of the subject altogether, if it doesn't interest you. Sometimes it's hard enough to enjoy when you have a passion for it.
Re: (Score:2)
In a few years he will realize that pay is inversely related to the creativity or interest of a job.
Repeat repeat repeat (Score:5, Insightful)
Gonna save some people some time here
CS is no more about computers than astronomy is about Telescopes.
There are many accomplished IT admins who use their CS knowledge on a daily basis, I am one of them.
CS is not Coding.
CS is more about Math.
If you want to stay pure CS you need to find R&D departments or go for your PHD.
CS is a great degree but isn't going to get you far when getting a job because most managers don't understand its purpose.
Find out what you love doing and do it, chances are, CS prepared you to do that thing.
Mod parent up (Score:3, Informative)
Re: (Score:2)
There are many accomplished IT admins who use their CS knowledge on a daily basis, I am one of them.
Out of curiosity, what CS knowledge do you use on a daily basis as an IT admin? I'm a programmer with a CS degree, so I only have a vague idea of what IT admins do. The only stuff I can come up with in what I imagine an IT admin job is like are:
Re: (Score:3, Insightful)
I know it is anecdotal but the majority of people I've worked with that are within about 5 years of college graduation with CS degree are among the least capable I've worked with. Among those that are self-taught and haven't a degree (or have a degree in an unrelated field), within their first 5 years or so are also among the least capable I've worked with. Those with degrees tend to be more stubborn mainly due to their indoctrination.
I don't mean any of this negatively. I myself am attempting to get my
Re: (Score:2)
Sad that "CS" has become poisoned at a lot of centres and is no longer about the science and has become more of a code-monkey training program. I was searching in vain for a while there in the replies hoping to see if someone else would point out the distinction and glad to see that you did :)
I for one did my CS back in 1990 and the non-programming bits have long since proved their worth (algorithms & complexity being one of the most useful of all).
PLD.
I repeat myself, when I'm distressed ... (Score:3)
CS is no more about computers than astronomy is about Telescopes.
You forgot a couple:
CS is the hole in the doughnut.
CS is the whole doughnut.
CS is Dijkstra yelling "surf's up!" to submariners.
Re:Repeat repeat repeat (Score:5, Insightful)
I absolutely hate it when slashdotters trot out this line every time a computer science post appears. Not only is it excruciatingly condescending, it's quite wrong, even if a computer scientist was the one who originally uttered it.
Computer science is very damn well about computers because there would be no computer science if you took away the computer. If there were no digital processors, data storage, or networks, there would be no reason to develop solutions to problems that are unique to information systems alone. No reason for someone to sit around all day dreaming up the optimal programming language for a given application. No reason for teams of graduate students to work tirelessly in search of the best human-computer interface.
I'll agree that there's a great (almost overwhelming) amount of math in studying the theory of computer science, but you can't honestly say that a computer science graduate is merely just some sort of specialized mathematician and leave it at that. It doesn't do justice to those in the field and it misinforms those who don't understand what the field is all about.
(Disclaimer: I'm not a computer scientist and don't care to be one.)
Dijkstra is correct (Score:5, Insightful)
Not only is it excruciatingly condescending, it's quite wrong, even if a computer scientist was the one who originally uttered it. Computer science is very damn well about computers because there would be no computer science if you took away the computer.
It's not wrong. It's substantially correct, even if Dijkstra takes a little license by introducing a bit of hyperbole. He *didn't* say computers have no place in computer science or anything ridiculous like that. He's explaining, roughly, that actual computers are really only tools and that the concrete tools themselves do not encompass the field of computation.
Of course, that changes if your definition of "computer" is wide enough to include, say, something between its original meaning and the entire universe in which we live. And having a rather application-oriented viewpoint, I do think the concrete tools are one of the most interesting part of the field. But I also think Dijkstra's comment is extremely useful for performing perspective inversions among people who haven't understood the field is wider and deeper than the conventional set of Von Neumman architectures we've managed to make so far.
If there were no digital processors, data storage, or networks, there would be no reason to develop solutions to problems that are unique to information systems alone. No reason for someone to sit around all day dreaming up the optimal programming language for a given application. No reason for teams of graduate students to work tirelessly in search of the best human-computer interface.
As it turns out, the field is bigger than these things too: even if you eliminated every last one of these things, theoretical computation would probably remain interesting to some people, and indeed, you can find a significant amount of theoretical work done back before most of these things existed in digital form.
I'll agree that there's a great (almost overwhelming) amount of math in studying the theory of computer science, but you can't honestly say that a computer science graduate is merely just some sort of specialized mathematician and leave it at that.
As a Math grad and a programmer of 20+ years, I'd agree that CS is best served as a separate discipline drawing from mathematics, physics, chemistry, EE, and more. And yet you could in fact devote yourself entirely to studying specialized mathematics, never writing a single line of code, and still be working in computer science.
It doesn't do justice to those in the field and it misinforms those who don't understand what the field is all about.
I'd agree it's hard to do the entire field justice in a single sentence, but far from bounding it badly, this phrase invites people to look outside of preconceptions about the field and potentially see something beyond the boxes and screens on their desks.
Re:Repeat repeat repeat (Score:4, Insightful)
computers are the reason CS exists in the first place so yes, it is about computers.
Telescopes are the reason astronomy exists too. Without telescopes, astronomy is just star-gazing and making up names for constellations. You can not be a good astronomer without a detailed understanding of how telescopes work (the kind of distortions you get from reflectors / refractors, and so on). You need a detailed understanding of optics. Telescopes, however, are not the object of study, merely the tool.
Exactly the same is true of computer science and computers.
Why are you a CS major? (Score:4, Interesting)
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?
Don't mix your dreams with your career (Score:5, Insightful)
Working isn't about 'fun' or 'entertainment' or 'what I want to do.' If you really want to work, then something is strange about you. Working is about surviving in a cold hard miserable world, it's about being self-sufficient, it's about producing something of value. Those all feel good, but you aren't working to have fun (even though work can be fun sometimes!), you are working to survive.
Don't confuse work with your dreams.........what do you REALLY want to do? Only in rare people is it something you can make money doing. Do you want to help starving children in Africa? Be a beach bum? Travel the world? Live the life of an eternal frat boy? Get married and live a quiet life? Whatever it is, focus on that, and your job will help you with it. Otherwise, if you make your job your life, it will just weigh you down and make you miserable. Work sucks, but you can still be happy. Life sucks, but you can still have fun.
That's my advice. YMMV
Life in a cage (Score:5, Insightful)
Working isn't about 'fun' or 'entertainment' or 'what I want to do.'
It isn't? It sure is for me. At least "What I want to do". Sometimes it's not fun or entertainment but those are very different things. Anything else is putting yourself in a cage 50 hours a week, a cage for which you have the key but few people chose to leave.
I don't even think it's all that rare or hard to be able to do "what you want to do". The hard part is figuring out what that is... but if you think you know that should be at the TOP of the list of things to look for in a job.
Also consider that thinking that companies are the only source of jobs, is a great way to limit your options and your own potential. Leave nothing out including the prospect of starting your own company.
Re:Life in a cage (Score:4, Interesting)
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. :)
Re: (Score:2)
That was the single best posting of advice in this entire thread. If I had moderator points, I'd definitely give you a boost!
Re: (Score:2)
if you make your job your life, it will just weigh you down and make you miserable.
Clearly you are not a porn star... of course posting on /. pretty much ruled that out already...
i know what you DONT want to do.. (Score:4, Insightful)
Re: (Score:2)
i hope they fuckin fire me. at least then ill be able to look for another job
Maybe you're not that much smarter than these people then, or at least not very wise ;-). Everyone knows that it's much easier to find a new job while you've still got one than when you don't, even more when you've been fired, furthermore from a shitty job. There's a saying out there along the lines of "the first day of a job is the day you start looking for a new job"
Re: (Score:2)
i hope they fuckin fire me. at least then ill be able to look for another job and still have a govt check to pay rent while i do so.
I don't want to throw a wrench in what's obviously a very well thought out plan, but in most (all?) states, you can't collect unemployment if you were fired for cause.
Net Nanny / Firewall Link checker (Score:2)
I always thought that the people who got to add urls to the kiddie / work filters would have an interesting job.
It's been said before. There are things you just can't un-see. How much would you pay someone to surf the nastiest content on the net? Would you really hire people who enjoy it?
-B
easy solution (Score:2)
If you think you'll be bored writing code for other people, start your own company.
The downside is you will almost certainly be poor for a fair while until things get established, but the mere fact that you are working on your own company can make that easier to cope with.
I've started a consultancy myself, rather than go for a standalone product. I'm not sure if I'll keep it up, I may go to work for a rather good company I know (great guys) and branch out on my own again later.
I have to say that setting my
Writing code all day (Score:4, Insightful)
I just got my BS in CS in May and have been writing code all day for the last 4 months. It's really not bad (at least where I work) and it's nowhere near as difficult as doing real CS. CS homework is hard, but implementing business rules after you already "get" CS is no problem.
One thing to keep in mind when job hunting is that recruiters don't know what they're looking for in a developer. They ask for all kinds of scary qualifications that don't mean shit. Bluff your way through a phone screening and keep in mind that 9 out of 10 people they're interviewing can't write a simple factorial function, let alone do it recursively.
If you've never used a relational database before, learn about those. It's not difficult, but you need to know about it because you will use it.
Re: (Score:2)
My work sounds alot like your work and I could see this getting too boring after a while, but I imagine there's a whole other world out there of software in the categories of CAD, art, video games, embedded, scientific, and other boxed software that don't need all those forms and databases.
Re: (Score:2, Insightful)
Essentially it is: form -> business rules -> database. Alway, alway, always....
Ever think of writing some sort of engine to handle that rather than writing the same code over and over again?
Wrong Major? (Score:3, Interesting)
Research (Score:4, Informative)
During my junior year of my computer science degree, I picked up a job working for some chemistry professors at my university. We've worked on everything from new drug discovery algorithms, force field simulations, and smart statistical analysis methods. This kind of work developed software that can wind up in the hands of every pharmaceutical company on the planet, make huge breakthroughs with hydrogen fuel cells, and math code that can play the stock market. I am the world expert on linear algebra based recursive partitioning algorithms for predicting the tight binding properties of compounds to the 2c9 enzyme. This all was an incredible exercise in everything from software design to calculus to organic chemistry. As the only computer scientist in a group of chemists and mathematicians, I was the expert in my field which gave me a lot of freedom in how I went about my work.
There is a surplus of jobs on your own campus, and it's well worth it to stick around for a few months after graduation to do some amazing work and get some great references. Best of all, if your work is viable and marketable, you may form a start-up company out of it.
Crossover Position (Score:2)
I have a strong IT background in addition to being educated in Engineering Physics. My last two positions have been "crossovers". My engineering background allows me to participate in product development. My IT background speeds up the product lifecycle by giving me the power to effectively communicate project needs to the IT department. This makes the cost of product development go down and helps engineers/developers get what they need to do their jobs well.
Anything (Score:2)
Just a note, any major that has to do with math and/or logic opens a lot of doors. You can program or do sys admin stuff (since you seem to like computers though your CS degree need not apply - but it won't hurt either).
You can also chase a law degree. Focus on Intellectual Property Rights if you want to stay on top of tech.
Otherwise, you sound like you're just starting out. IT jobs range from sys admins in small companies or departments in large companies (or colleges) but can also be more focused - mai
The company is more important than the job (Score:3, Insightful)
don't worry, you won't write code all day (Score:5, Insightful)
As a professional developer with about a decade of commercial experience, I can assure you that you won't be writing code all day in many jobs. You'll spend at least half your time writing TPS report coversheets, attending meetings, writing reports about attending meetings, attending meetings about reports, and occasionally meetings about meetings or reports about reports. Figuring out how to answer the latest hare-brained question from the suits with the shitty data to hand (abortions of SQL and/or one-off hacks with a scripting language go here) takes up another twenty-five percent of your time. Twenty percent to thinking about lunch, eye-balling the hot MOTAS in Accounting or HR, sneaking in the side entrance so Lumbergh doesn't see you, and you're looking at five percent of your time going to real actual coding/work.
You may think I'm pulling your leg, and you also probably laugh rather than cry when you read Dilbert. Don't worry, by the time you graduate you'll probably be old enough to legally drink and that really helps take the edge off.
Hope that helps! :D
Worry if you won't write code most of the day (Score:3, Informative)
As a professional developer with a little over a decade of commercial experience, I can assure you that the jobs where you have to write TPS reports, attend constant meetings, write reports about attending meetings, attend meetings about reports, and occasionally meetings about meetings or reports about reports are toxic worthless environments. About 5 years ago now this trendy thing called "Agile" happened to the software development world as a way to put a bullet in crap like this.
One of four things is g
Business Analysis/Project Management? (Score:3, Informative)
I just recently finished a long co-op assignment doing business analysis, and if you are not one that likes to do a lot of coding, but likes organizing big technical projects and talking with many different areas of a business, then this might be a good route to consider.
I personally did not like it because I'm the type that likes helping out in what I do best and love most: getting "down 'n dirty." I've also dealt with a lot of people who only understood technology and computing from a surface-level standpoint, which is often just right for a business analyst (not too technical to sour the project setup, but not too business-oriented to be lost in the way of things).
Good luck!
CS degree but don't want to work with computers (Score:5, Insightful)
Although we don't need any more of them, the answer to your question is the Project Manager path to IT management.
You would add a PMP certification and for fast track an MBA, then talk enough Java buzzwords to get by. Being able to prototype Windows screens with VB or C#, lay out web pages, and SQL query databases like your problem log will make you a star.
Before you know it you'll be a CIO.
rd
This reminds me... (Score:2)
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.
of why I decided to become a mechanical engineer and not a computer engineer or computer science major. Of course, here I am, sitting at a desk writing code all day.
Systems Design? (Score:3)
If you're really good at desktop support and have any experience or are a fast learner, a Jr. system administrator role is a good choice too; managing mail servers; SANS, etc... other more traditional operations/IT gigs. You'll have minimal programming generally other than some scripting which you'll do mostly out of trying to minimize repeatitive tasks.
The biggest thing is that there is no right-or-wrong answer, and you're not married to it forever. I started in desktop/helpdesk to may my way though school, then went to system administration and quickly realized I don't like getting screammed at when poorly written IBM software we purchased doesn't give us 100% uptime on aging hardware with poorly written integration by hack programmers. I've always liked programming and had done enough "on the side" to land a programming gig and am much happier though my code isn't landing spacecraft or anything. Whatever you do, don't settle for something you're not happy with; and if you find a really good working situation (stable, good boss, good co-workers, not too bad of a commute) think long and hard before jumping ship for an extra 10K a year.
Start a company (Score:2)
Computer Science is dead, become a lawyer (Score:3, Insightful)
I have been writing software since the 1970s, and there isn't much left in the field for "work." There may be "research," into things but the average "job" is tedium.
"Computer Science" as it were, is nothing more than a craftsman tool belt. There is no "science" left. It is all the fashion of end-user application. Web sites, social networks, e-commerce, etc. No one in the field is producing great work (and making great money) any more.
I've been interviewing candidates for the last 15 years and "computer science" is a joke. The universities are teaching a trade, not a science. Kids barely understand the mathematical basics of how a hash table works. Don't even get me started on twos-compliment arithmetic or how to evaluate algorithms.
Sure, the desktop processors and environments do a lot for you, but maybe you'll want to do something interesting some day with different types of devices like PICs.
In the end, you'll have to learn about something else, like banking, medicine, civil engineering, accounting or some such to be able to write software for those fields, but since those fields currenly pay better, why not go there first?
Re: (Score:3)
Your info is wrong. CS majors make more money than any other 4-year degree.
Also--2's compliment? You must be joking. They don't emphasize knowing how to solder or replace vacuum tubes today, either.
Also, Computer Science is a misnomer. Since the 1970s, 99% of these scientists were really just software engineers. They weren't developing novel new algorithms, just putting together code to help business do its thing.
BSEE - Computer Hardware - FTW! (Score:2)
The reasons you stated are exactly why I decided on electrical engineering instead of computer science, and my alma matter has one of the best CS dept's in the country.
It's incredible how many people think being able to stitch some crap together, likely barely-working and in Java, is a skill set these days. Without understanding the mechanics behind what your code is doing, what's the point? (Speaking of which, I've met "developers" who don't know what a pointer is. WTF?)
Albeit, it's not that often that I n
Re: (Score:2)
I think you're really thinking too narrowly about CS. CS hasn't died out, it's exploded. Even 4-year BS programs require the students focus on one or few topics in the space and neglecting others.
There are vast areas of CS that are being improved upon every day (search, concurrency, vision, communications, collaborative work) - and these are having huge impacts on the world. Essentially the "ground level" of CS is taught, but then one must choose a senior year that skips a lot of middle ground t
Computer Science - Love Code or Leave it (Score:4, Insightful)
Coding should not be more than 30% of a job. We need people than can read specifications, turn them into requirements, design an architecture, model solutions, code, integrate, document, and debug. I am sorry, but the talented and rewarded people are the ones that can do it all. The ones that can't code and prefer to administer systems are the easiest to replace.
Where I work, we do embedded software that runs close the hardware, operates in critical environments, must work every time, run for years, and be secure. The guys I give the highest performance ratings (raises) to are the ones that can design, code, re-use code, and solve problems.
I haven't coded in 5 years and miss it, so I came up with a project for home to keep me current and have fun with. I can see not wanting to do it 8 hours a day, but any true CS geek deep down enjoys it like solving puzzles and playing games. Coding is problem solving. It should be enjoyed and done well or not at all.
The visual effects industry (Score:5, Interesting)
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.
Nonprofit Sector (paid, and for good cause!) (Score:2)
Some nonprofits, for instance, are near the cutting-edge of social technologies and outreach and/or graphic design.
Others, for instance, are building and maintaining robust and impressive virtual communities with expansive software packages that need development.
In all cases, instead of feeding a corporate mac
Sys Admin, Consulting, Application Support (Score:2, Insightful)
First and foremost: DO NOT ACCEPT CAREER JOBS YOU WILL NOT ENJOY. I made the mistake of grabbing a VisualBasic 6 job when I'm a Linux and C++ guy. Now I've 4 years experience (3 in VB6+DB2, 1 in Linux/KSH scripting + Netezza Database warehouse) and I'm having a VERY tough time using that experience to land anything that I might actually enjoy. Your first couple of jobs define the path of your career in both the short and mid-term which then makes it easier to steer it the way you want in the long-term.
I sug
Or, remote locations -- (Score:2)
If you can dream it... (Score:2)
Newsflash: You are not going to be hired into an Ultra-Cool Managerial role at some NASA-come game-studio straight out of college and with no experiance.
Given the chance get into a good development role bite their hand off to accept, if you pass these up you'll only end up doing some crappy support role, and thats a few years wasted.
Once you've proved your metal as the best god damned programmer in the place (great personality too!) then you'll find yourself in a position to go in whatever direction you wan
System Verification (Score:2)
I went into system verification (e.g. testing). At the right organization, this is a really interesting and challenging job. When your company makes a system that sells for a few million dollars and consists of dozens of racks of equipment and is expected to have 99.999% uptime, testing is not something that you hand off to interns. My field was telecom equipment, but there are other fields that have highly complex products where testing is just as hard as product development.
The thing I liked about the
Forensics (Score:2)
Have you thought about a career in computer forensics?
It is a field that brings a lot of new challenges on a regular basis. People are always trying to find ways to cover their tracks on computers; you get to do the opposite.
There are specialized schools that you can go to for this kind of training. You'll likely end up working for a law enforcement agency, or for a company that specializes in forensics (which will in turn be hired by law enforcement or lawyers).
There's worse things in life that you could d
The Definition of Computer Science. (Score:4, Informative)
I hold a B.S. in Computer Science.
Computer Science is basically the science of converting mathematics and logic into a series of instructions that a computer can understand. This is known as "algorithm development". The physical embodiment of this process is programming, or "writing code".
In spite of the fact that it involves "computers", Computer Science is not about computer tech support.
If you do not enjoy algorithm development, Computer Science is not for you.
So what did you get a CS degree for? (Score:2)
If you're not willing to code or provide tech support there isn't much you're going to be able to do at the bottom.
To an extent alot of jobs are going to be about customer support. Whether you're having to reboot someone's XP desktop because they've complained or reboot the server at 3am because someone's complained.
As well what e
Many options (Score:2)
If you like to work with people, customer/application/sales engineering might be for you. There's always lots of openings for people who know what they're doing because many in those areas are not very technical. Also these jobs often pay better than beginner/midlevel IT and programming jobs because they're closer to the revenue stream.
Proof by induction (Score:2)
Reminds me of that old mathematicians' joke about there being no such thing as an uninteresting integer. The proof? It's evident that many small integers are intrinsically interesting. Zero is interesting because it can't be used as a denominator. One is interesting because multiplication and division by it yield the same result. Two is interesting because it's the first prime number. We can therefore state that for some n, the first n integers are i
Go for a MBA (Score:3, Insightful)
Weather is good (Score:3, Informative)
My experiences, post CS degree (Score:2)
I graduated with a bachelor's in CS in December, 2001. My first job was for a huge manufacturing company. It was like a three-pronged fork: I did training, development, and support. We had a custom in-house application: an enhancement or "plugin" to a solid modeling application (Pro/ENGINEER). I was on a team of three, taking support calls, developing enhancements, bugfixing, and even going on-site to give a two-day training class.
That job was pretty fun, at least for the first few years. Towards the e
Real research? (Score:2)
Get a Phd and do real Science. AI. Intelligent agents. Autonomous space exploration robots etc.
Otherwise you'll end up a glorified high tech janitor burned out and bitter.
Something I considered in my youth... (Score:3, Interesting)
... 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]
CS vs IT (Score:4, Insightful)
Unfortunately most Computer Science degrees these days are at least half IT. If you do not understand the following sentence then you probably did not really get an education in Computer Science:
Computer science does not require a computer.
Given the current business climate... (Score:5, Funny)
good/bad news (Score:3, Insightful)
Hey mattskent, welcome to the field. I'm 43 yo, been working this field all my life, and I have good news and bad news for you: the good, as others have pointed out, is that there's a big range of things you could be working on.
You don't have to develop all the time or to do support all the time. I've done a lot of those things myself, from crawling under people's desks to developing (not in the programming sense) products for my own company. The bad: you will always be doing some amount of support (and coding for that matter). Can't get away from it.
At entry levels, it's just expected. As you move upwards on the ladder -- and if you're any good -- there will be things only a very few people understand and you're one of them, in each case you will have no choice but to do some support, just because there are not a lot of people who can actually do it at that level.
This has led me to realize that ALL CS jobs are somehow related to support because the machines, programs and systems we create/develop/program are actually there to perform some work for somebody else, who usually knows a lot about that work but not necessarily about the machines they use.
AFAIK there's only one way out: get a PhD and become a researcher. That's the only way you will eventually get payed to play with computers, which is what most of us want when we pick CS as a major. But then you'll be required to teach also, which wouldn't work for me.
As I said earlier, welcome to the field...
Re: (Score:2)
Speaking from a few years of experience in that area, one can learn those end-user interactions in environments much less strenuous and rewarding than those.
Re: (Score:2)
So...employee discount?
Re: (Score:2)
So...employee discount?
Er... if he's putting together the website, he really wouldn't need a discount, he already has all the stuff on his computer.
Re:Positions (Score:4, Informative)
The parent comment is crap. It's long and very specific crap, but crap none-the-less.
This may be true for one specific company, but in no way is this consistent across the board. There is *nothing* that is consistent across the board and pretending that there is is either disingenuous or just plain wrong.
Re: (Score:2)
Yep. I'm a sales engineer these days after about four years in development.
It's helping people out and putting your tech skills to work. Take a big, complicated piece of software and get it up, running, and customized for potentional customer over the course of a few days (or weeks).
Most of the time, they're smart people with tough problems and you get to help them fix them. If you do a good job, your employer can win the deal.
There's a bit of sales in the job (more or less depending on who you do it for) b