Ask Slashdot: CS Grads Taking IT Jobs?
An anonymous reader writes "I'm a soon-to-be Master's graduate from a public university majoring in computer science — with all that CS entails. Of course, it's come time to start job hunting, and while there are a few actual CS-type jobs around, I've noticed that a few IT jobs would be substantially more convenient for me personally. But this leads me to the question (assuming they would hire me, of course) — would having IT experience hurt my job prospects down the road? Would future employers see that and be less likely to hire me — or pigeon-hole me into IT?"
News flash. I'm a Comp Eng, I've been involved in writing software for all of my career, and I tell people I'm in the IT (Information Technology) business. Do you mean admin work? It shouldn't be a problem, unless you end up tailing log files and faxing the errors if you see them. Do you mean equipment/line installation? I wouldn't say the Cable Guy is in the IT business.
If so then get a job as a software developer when you graduate. If you want to go into IT then go into IT.
If you're trying to build a technical career then you want to start doing so, and on as close a path to what you really want to end up doing, as quickly as possible. If you want to end up designing network layouts and server farms, start with IT. If you want to be in databases (and if you don't find it boring as hell there's great money there) then start yourself off as a Junior DBA.
IT experience won't count against you, but it won't count as much for you either.
If you have an instinct that something is going to be bad for your career and/or life, it's probably true. Even more so if it's something you find fundamentally dull. However, from a resume perspective it's better to be doing something than nothing since it's better to have experience than none. Cash in you pocket is nice.
You might find yourself at an interview in three years time and the interviewer asks, "Why did you take a job doing X when you wanted to do Y?"
That's a pretty dumb question considering where things are today with the economy. Try to answer it politely. :)
Finally, you've been pretty vague about what IT means to you. If it means anything involving user support, desktop support, administration or telesales, avoid it. These are the IT equivalents of a McJob and put you at the wrong end of a stressful firing range. If the job-spec reads like a bunch of happy-clappy management buzzwords, avoid that too.
That's not entirely true. There are definitely those out there who will hold past experience against you.
If you don't believe this you should try the following experiment: Major in CS, work tech support at a call center during your last year, realize that the job market sucks and continue working tech support while looking for a "real job". After you've spent a year getting rejected for lack of experience you are very likely to instead get rejected because you aren't "quite right" for the job (or if they're a bit more honest they'll tell you outright that they're looking for developers, not tech support monkeys. And yes, I've been on the receiving end of that one a few times).
An interesting twist here is that employers seem to be unable to understand that there is no career path at most call centers, if you start out in 1st line tech support you'll be lucky to be able to move to 2nd line within three or four years (2nd line tends to be quite cushy compared to 1st line), team lead positions are mostly assigned to 2nd line techs based on seniority (at least from my experience and from what I've heard from others working at other call centers) and only become available when a new team is created or an old team lead moves to a new job. In short, you're likely to be stuck in 1st line tech support telling people to power cycle their DSL modems until you quit or get laid off/fired, regardless of what you are actually capable of. But in the eyes of some guy hiring developers it looks suspicious that the applicant he's got in front of him worked at a call center for almost two years and never moved out of 1st line tech support.
Oh btw, I haven't actually done tech support for a few years now, these days I'm a developer, but the mental scarring lasts a lifetime...
Greylisting is to SMTP as NAT is to IPv4
You are making hardly any sense. CS is *the* degree you go for if you want to work in IT. The only "CS" jobs that exists are academic ones.
That's what some people think, but it is completely incorrect. There is NO degree for working in IT (ok, there's a few systems adminstration degrees at a few universities now... pretty cool). This attitide, I believe, is what caused the bottom to drop out of entry level IT positions about 10 years ago. In 2001, a crappy Windows administrator position could start at $65K/yr... by 2004 it was part-time $12/hr. You can't really do computer science without the foundations givin in academia. But anyone with a knack for trouble-shooting that likes working with computers can work in information technology, and with experience, get really very good at it, no degree (or social skills) necessary. A lot of what IT is is simply familiarity with the specific systems with which one is working. You don't learn that in CS, and what you learn in CS will only be useful in the abstract in such a specific environment.
There are indeed real computer science jobs out there, but they are integrated into other disciplines. Just a couple that come to mind... in the field of Bioinformatics, and in the field of Meteorology —weather modelling (and, well... any complex computer modelling, fluid dynamics, cosmology, aeronautics... even marketing analytics).
It seems that only real computer scientists know that computer science really has nothing at all to do with what we think of as modern computers. Its really mathematics. You'd be far more correct to think of computer scientists as specialized mathemeticians than as some glorified high-level computer repair techician. Actually, if you think of a computer scientist as a glorified computer repair techician, you are utterly and completely mistaken, and you are insulting both the bone fide computer scientist and the genuine computer technician. These 2 disciplines have nothing to do with each other.
The Admin and the Engineer
That's not entirely true. There are definitely those out there who will hold past experience against you.
Fools live on every corner. If they're doing the hiring, I've found it to my benefit to go somewhere else. Because at the end of the day, your co-workers were hired by the same person and if he's an idiot, chances are so are the ones he hired.
Therefore, by the (faulty) logic you're using, you're just a cow with a keyboard - osu-neko (2604)
I guess it really depends on the job and the environment. I started out with my current company as a third level support guy in a copier company helping out with print, scan and general network related stuff. Basically, end users had problems; they'd talk to technicians (who were generally of the "mechanically oriented" mindset rather than IT) who would then call me for IT help. Definitely an "IT job" rather than even vaguely CS related.
Definitely not glamorous at all... however, after a while I identified common questions and problems and started writing a bit of code to make the technicians lives easier - point and click interfaces for stuff that they previously had to do a lot more manually. This got noticed and after a while I found myself writing a bit of end user software as well. After 5 years with the company (a good 3 or 4 of which I was doing quite a lot of coding) I decided to move to a different country and since it's a large international firm, applied for a job in the European head office. They took me on as a specialist for an API that our company makes for interfacing to our devices. Four years here in Europe and now I'm the Software Development Supervisor, responsible for software development activities across Europe. I write code, look after a small team of other developers, design apps from "fuzzy" marketing ideas in to real products and generally have a lot of fun and creative freedom.
While I wouldn't say my current job is CS heavy - I don't spend much time coming up with cool new algorithms (except a little work on OCR that I did) or designing operating systems and languages - but nevertheless it's definitely moved a long way away from the "IT job" beginnings with the company and is now almost all creative software development and a just a tiny bit of management thrown on top. I'd imagine most CS grads would be happy to end up with a job like mine, so I guess it's relevant for you.
My book about LSD and Self-Discovery
Also on facebook as: DroppingAcidDaleBewan
pigeon-hole me
My god man, the entire American technical community is oriented around pigeonholing. Its not a "IT vs CS" thing. Its how management is trained to treat techs. Its an American cultural thing, not just an oddity.
My cousin the chemical engineer got pigeonholed into semiconductor polymer device packaging early on, never to escape. My father got pigeonholed into DBA work/consulting and he was stuck there until retirement. My high school chemistry teacher started off in some obscure corner of food chem, and was forced to stay there, until she got fed up and went back for an education degree. My Uncle: Once a fine cabinetry maker, always and forever a fine cabinetry maker never to be allowed to do anything else for money (at home he made furniture). My uncle in law: Once a medium size diesel mechanic, always and forever a medium diesel mechanic, never to escape.
I've been doing more or less the same type of work since the summer of 1998. Like everyone in the paragraph above, am I qualified and capable of doing much more? Hell yeah, look at what I do at home. Which brings up the important point that if you're going into a technical career where you're going to eventually be bored to tears, make sure its a field where you can do "cutting edge" work at home. Software development, carpenter, mechanic, yeah that works at home. Biochemist, chemical engineer, umm not so easy to do cutting edge work at home.
If you're going into a technical field, you almost certainly will be doing at age 67 what you were doing at age 23, so make sure you like it...
The only way you'll ever get a job in a different field is:
1) Dating and/or friends and/or related to someone in management
2) Another "tech boom" or similar occurs (for example, I'm told that in certain areas out west, anyone who can pass a drug test can become an instant oil field worker)
3) You go back to school for a new field and new degree, don't worry it'll only be $50K to $200K plus living expenses.
4) You start your own business in a new field you know nothing about. Good Luck, you'll need it.
5) Give up technical work, and start at the bottom of a non-tech field. If you've got enough brains to survive in a tech field, you'll rise to the top of a non-tech field. Non-tech fields actually have career paths and opportunities, unlike tech.
"Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
"I'm a soon-to-be Master's graduate from a public university majoring in computer science — with all that CS entails. Of course, it's come time to start job hunting, and while there are a few actual CS-type jobs around, I've noticed that a few IT jobs would be substantially more convenient for me personally. But this leads me to the question (assuming they would hire me, of course) — would having IT experience hurt my job prospects down the road? Would future employers see that and be less likely to hire me — or pigeon-hole me into IT?"
As a CS-grad who has also done IT (and by that I think you mean "IT Support" as opposed to "IT/Enterprise Computing/Software Development"), if you get a gig in IT, make sure that it is a tier II or tier III type - the type dealing with actual server/dba/network configuration, administration and troubleshooting. Having that type of first-hand knowledge will prove valuable for most CS-work that you do down the road (too many CS grads down know how to root cause (or even account for) server/network-related problems when they develop enterprise/distributed systems (with hilarious consequences.)
On the other hand, a tier I type of IT support job is the type that gets calls from people requesting help with their PC-integrated cup holder, and you'll be eating a bullet in no time.
Having said that, and also from my own first hand experience, you run the risk of getting pigeonhole into the "IT-can-admin,IT-can't-program" stereotype. Make sure that when you do IT work, you do programming (a lot). Use Python, Groovy or Ruby or Haskell or Lua for your administrative shell scripts as opposed to simply shell scripts + perl. Sounds a little bit overkill, but you *need* this, to both keep your practice, and also to put it in your resume (to demonstrate that you have been programming.) BTW, if you do this, make sure to take one language and stick to it - nothing worse for a poor employer to find itself with a bestiary of admin scripts written in 4-5 different languages. In a nutshell, pursue your programming practice on the job in an ethical, professional way that benefits both you and your employer.
Also, while you do IT, keep your eyes on what's going on out there in terms of software development. Things change very quickly and you can find yourself obsolete rather fast if you are not proactive with your career development.
OTH, if you end up liking it, why not, specially if you get a chance to do paid overtime. If you do this, though, be ready to have your cell on with you at all times, getting level 2 or 3 calls from Bangalore, Buenos Aires or Panang at 3am :P
Computer Science is no more about computers than astronomy is about telescopes.
~Edsger W. Dijkstra
Insisting on "correct" English is like saying that there is only one, definitive recipe for chili.