Non-Programming Jobs For a Computer Science Major?
An anonymous reader writes "I recently graduated from a 'major' university in America with a BS degree in Computer Science. I unfortunately must admit that I am not very skilled with programming. I finished with the degree, and I've spent much of my college career working a job doing technical support (fixing laptops, troubleshooting Windows problems, etc). What jobs can I get with a computer science degree that are NOT mainly programming jobs? A little programming wouldn't be bad, but none would be preferred. And what kind of salaries do these jobs typically fetch?"
n/t
You could get a job as a Program Manager or similar position. They do more design work than actual programming. Those positions pay about the same as programming positions.
My blog
How good are you at computer security? You could be a penetration tester or security consultant.
$2.13/hr
Accenture is always looking for fresh faced graduates who can't actually do anything.
D.O.U.O.S.V.A.V.V.M.
With that Degree you can apply for admin positions... maybe systems...which may require a little windows scripting, but also network admin, or even a managerial position over a help desk!
Whatever you do find... good luck!
What else besides Computer Science do you know something about? Your degree is only limiting if it is the only experience you actually have. If you have some real world experience then do whatever you know how to do.
Mouth breathing PHB's will throw gobs of money at you because you have both a technical and a business degree.
Have you considered management? ;) Sorry, I couldn't resist.
with a BS
Looks like you'd be perfect for management.
You don't say whether or not you even want to use the degree ... are you interested in CS at all? If you are, there are plenty of IT jobs sans programming ... Sys Admins typically start out well enough and need to do some scripting, but not generally too much programming (where scripting = perl and programming = java, for example). Do what makes you happy, or you'll end up a crusty old man better armed than your local militias ...
McDonald's is always hiring and Washington has the highest minimum wage at $8.07/hr
Yes, anonymous was probably the right way to go with that submission on this site ;)
You can probably get QA easily enough, especially if you can write automation scripts or programs.
Pay is probably 3/4 of a programming position.
GPL Deconstructed
Testing
Project Management
Product Support
Software Sales
Systems Administration
Programming is just one part of computer science; there are needs for all of these other areas as well.
If you like doing tech support, why not start your own business as a at-home tech support. Like the Geek Squad, but without having to answer to anyone but yourself?
You could go into management. An MBA helps but is not essential. Just check the mirror first, if you see pointy hair sticking up above the ears, do NOT get into management in any technical arena, you won't be doing the rest of us any favors. *joke*.
If you can do "lite" programming, running a web site, doing system administration, or database administration might be your cup of tea.
You could also consider hardware work or being a technical instructor. There is a demand for teachers for high-school/trade-school-level certifications such as A+. There is also a need for technical instructors who can teach "office" skills or "lite database" skills such as beginning and intermediate Microsoft Access.
You probably have a math or science background. Have you considered teaching these classes at the secondary or community college level?
Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
If you're into troubleshooting, I'd say system/network administration. Setting up routers, RAID, virtualization, etc.
Are you good at maths? I would probably say something like statistics in applied disciplines such as Biomedicine. Medical Scientists and Researchers are always short off smart guys who can help them analyze data and publish fancy data reports.
"Sum Ergo Cogito"
A lot of jobs you could get with any or no degree: financial services; screenwriter; salesman; etceta. If a job doesn't require a specific degree, and few do (accounting, law, medical fields, anything that requires certification), then you could probably get involved even if it's unrelated.
Your ad here. Ask me how!
You could pursue being a sysadmin. There is a little bit of shell-scripting involved but *typically* little coding of software.
Another possibility is to go into system securtity and hardening. There is a market for people who know how to lock down systems and keep out the riff-raff.
Still another is to find a job as a white hat. We have a few of them where I work, and their job it to try to violate the network and tell the systems folks how they broke through (and how to fix it).
There *are* non-coding jobs that pay. For an entry level position, it will depend on where you are and who hires you as well as sector of the market.
Be excellent to each other. And... PARTY ON, DUDES!
A QA Engineer position or really anything in a QA department may be a good fit. As far as I know you can get pretty comparable salaries as a programmer as well.
You are in a unique position; us programmers can't stand to be in management, we simply cannot do our jobs there (not to mention we're slightly introverts!). If you are skilled and don't mind managing, you can bring home a decent wage. Especially if you know how to manage programmers! Good management for a development team is a sorely needed position.
Just my $0.02. Any fellow programmers want to back me up or dispute my claims?
If I mod you up, it doesn't necessarily mean I agree with what you've said, sorry.
I find it a little difficult how you made it through a CS degree without working on code. Then again, "programming" is not experience in one language or expertise in using pre-built functions. If you know algorithms, logic and how a piece of generic code works, you are already a programmer. You just haven't done it long enough to become biased on one language. That will come in time.
So, do just not enjoy programming or do you not know enough?
A System Admin or "plumber" is your best bet for getting a job. It really depends then on your experience with certain platforms, programs, System tools, etc. Same goes for a Network Admin, email admin, etc.
I still wonder how you hacked it through a Computer Science degree without loving code. Why didn't you get a Business IS or Business degree instead?
import system.cool.Sig;
How do you graduate with a CS degree, and not know how to program? What kind of CS program are they running at this 'major' university?
Tech support? Your experience is TECH SUPPORT?!?!?
Maybe if you work hard you'll make assistant tech support manager some day.
Your best bet at this point is to either beef up your scripting skills, networking skills (or both) and jump over to system administration where a degree is almost ancillary. Entry level positions typically start in a NOC, and go up from there.
If your grades were decent, consider law school. People who are successful there aren't only good BSers, but have a strong sense of logic, generally something you possess if you're into programming or math.
Of course, if your grades in programming weren't that good, don't let that stop you. The practice of law is overrated. :-)
I would think a CS degree could be quite useful in an SQA position. Understanding how software is built is very helpful when trying to figure out test strategies. Plus, there is oftentimes a need for scripting for automated testing, so the ability to code is also highly valued. Depending on how much of your coursework was devoted to testing philosophies, techniques and tools, you might consider taking a course or two to come up to speed on this branch of computer science. Another advantage of this path is there is a clear growth path from tester, to test-writer, to test plan writer to SQA group manager.
The more you regulate a company, the worse its products become.
Why exactly did you major in CS if you don't like programming? Isn't that the point? And, how exactly did you finish your major without much programming skills?
In every company I've worked at, from ones with thousands of employees, to ones with a dozen, we have learned that programmers make horrible sysadmins. I don't know if it's the training they receive, a personality thing, or what... So please don't do it!
Now if you told me you FAILED at being a good programmer, I'd hire you on the spot as a sysadmin ;)
Do not meddle in the affairs of sysadmins, for they are subtle, and quick to anger.
I do enterprise level tech support for a tech company you most certainly have heard of, supporting $M+ installations of computer storage. I've done this for just under a decade, and make pretty excellent money doing it. My salary right out of school was in line with the students that did take dev jobs.
Before graduating, my experience was identical to yours, doing PC work, a little bit of web work here and there, etc.
Except for a couple of scripts here and there, I have not written a line of "real" code since day one.
I was actually pretty decent at programming, but didn't enjoy it. (I was a CompE, not a CompSci.)
I am pretty concerned that it is July and you don't have a job yet. The "college hiring cycle" is kinda over... That means you may be stuck with true entry-level jobs, instead of the "college hire" jobs, which in my company anyway, are a bit different. (An entry-level support tech is going to be working the call center, while a college-hire tech is going to be working in Level 2 or 3, right off the bat (with a whole lot of OJT, of course.))
SirWired
Have you considered a position in Quality Assurance? I started my career there and someone with the knowledge to test the boundary conditions and intelligently describe a bug as well as the steps needed to reproduce it is very valuable. Unless you are doing test automation there is little to no programming involved. The bad side is the salary is not that great and the job can be tedious.
Well, you could take the specification from the customer, to the programmers.
If you've got people skill that is.
If you wanted to be a programmer you should have went to a school for programming. Computer science (or computing science) is the study and the science of the theoretical foundations of information and computation and their implementation and application in computer systems. (wiki) You solve the computing problem and let a programmer program it for you. You don't get a business degree to work as an employee or do you.
Federal government is an excellent way to go, particularly if you are elligible for a security clearance, and able to take the time needed to get one. I'm a code monkey myself, but many of my friends went into Department of Defense fresh out of a CS undergrad and the most coding they seem to do is the occasional bit of scripting to make their true task easier.
(sorry if already mentioned)
...OR...
QA with a programming knowledge can garner good money at some companies these days.
Maybe going into a Business Analyst position any sort of Software/Development Analyst might be for you? They gather requirements and provide functional and sometimes technical specification documents for software dev shops.
Of course, seriously (not) - WHY DID YOU GET A COMPSCI DEGREE IF YOU DON'T WANT TO PROGRAM???
You can get a job doing testing work. Your job will consist mainly of running through a bunch of tests every 2 weeks to a month to check if there are any bugs with the latest build. However there are many testing jobs that require programming, testing code, automation, etc. You should be able to find a job though you can get away with no coding. I have some coworkers who never programmed anything here and are in testing, but I have some that's 1/2 of what they do. You can make anywhere from 40-60k starting plus benefits doing testing. If you get good you can manage the team or a project in the future and make anywhere from 80-100k. Testing isn't for everyone though and there are a TON of different kinds of testing in the field.
If you did good in english, you could write documentation.
Many Educational Technology positions like a BS/BA, and don't require programming. Look for things like "instructional designer" and such...
Don't blame me, I voted for Kodos
As is said often on Slashdot (and bears repeating), CS is not software engineering and there are many opportunities in the field that are not assembly-line-programming jobs.
What comes to mind for me, however, is that if you have a problem with programming after going through 4 years of computer science education, maybe it's not the programming in X, Y, or Z language that you don't like, but the whole idea of thinking in processes, algorithms, computational theory, etc. If you don't like coding in C++ you may still enjoy a job in CS... but if you don't like coding in C++ because you don't like thinking about and designing processes and algorithms then maybe computer science as a field isn't for you. Not every CS job will involve writing the boring "phone book" applications you did in school... but every CS job will involve the theory behind those applications, at some level of abstraction.
Look for analyst positions in financial or market research departments. It is usually work that requires the developments of large models and a lot of data handling. The amount of programming that comes with it is moderate and you'll usually get ace reviews as you're the "wizard" who's able to handle data nobody else can since they don't have the skills to write scripts to process it.
I don't know about that, but where I studied at Cal, you couldn't even be admitted or yet pass the first problem set if you couldn't program. I remember seeing people stading up and yelling "fuq this" and dropping out. Are you sure it wasn't some mail order degree or maybe an IT or CIS degree?
Did you get the degree of B.S. in Computer science, or did you get a "B.S. degree" in Computer science? I think the former one will have a lot more benefit long-term. I have a fine art degree and I'm a senior systems engineer, so I guess you could go be an artist and we'd cancel each other out.
stuff |
Need to understand business processes and how it technically would fall altogether, you provide/manage the holistic view of the enterprise systems as opposed to detailed system by system knowledge.
Load New Commander (Y/N)?
First off, my compliments - that post on this site must of taken guts and flame proof underpants.
Secondly a job is dictated by two things - qualifications and experience. You have no experience having just graduated and your qualifications are not specifically in the vocation that you want. So I fear you might need to spend some time getting relevant experience. It can be done, I did it the other way around - moved into embedded firmware from construction then later on got my qualifications in software. But my first few jobs were lowing paying bottom of the barrel for a year to get experience to open the door to better jobs.
I mean it really depends on what experience you have and what you enjoy. You could always working with networking at a company, but knowledge of Linux and Cisco would probably be needed. It really depends on your real world experience and what you enjoy and what you want to do. If the only reason you are in Comp Sci is because it pays well, I think you chose the wrong career. Don't get me wrong I think coding can be boring depending on what language it is being written in and what I am writing, but not liking any coding all together sounds like you picked your major for the money and not for something you like.
Just because you are wrong and I called you out on it doesn't mean I am a Troll.
If you're only unskilled in programming but still enjoy doing it, you can still easily enough get a job doing it that will pay well. This is kind of unfortunate of the industry, but if you get a job at a place with an established code base and some good team leads, you will pick up nearly everything you need to know for the job pretty quickly.
If you actually don't like programming, maybe go back to school? Get your Masters and just do a ton of theoretical research. But it also sounds like you're ready for the workforce so I suppose I would recommend testing/QA. If you get hired by a large enough company you can move around within the company as you grow more comfortable with their systems, standards, etc. and so if you get the hankering to program, you can also do that.
Reviewing just the first hour of video games.
They can always use people who can't code :)
In larger companies, you can play a role of working as a liaison among the business users, IT folks, and development teams.
This requires solid communication skills and an understanding of the business needs you are modeling, but also the technical understanding to ensure that the resulting IT solutions are solid and elegant.
Project management is also an option--software projects need people who understand that building software is not like building a bridge.
Take an IT job and brush up on your shell scripting or Batch/VBscript skills. You can make just as much running an IT department as you could as a senior programmer somewhere.
You could also look into grad school for HCI or IT management--you may never have to look at code again.
Colin Dean Go a year without DRM
IT, Systems Integration, Software Engineering, Systems Engineering..
I got a BS degree in Electrical Engineering a couple years ago and started out as a "Hardware Engineer" (by title only, didn't do any E.E., more like Systems Integration Analyst.. basically I picked which computer/network/etc hardware to buy, and made sure whatever it was would work. Rarely ever touched the hardware, except in the lab for reproducing/troubleshooting issues that the first line of defense could not figure out).. last few months I spent as a "Software Engineer," writing some code.
I think a technical BS degree these days is really just a license to work in a technology-related job, and that if you have the desire/motivation, you can really do anything you want right now (except R&D, unless you have a higher degree or are the cream of the crop of B.S.-having candidates).
New webcomic updated on Sundays: HERE
it is a golden rule of any corporation that the boss knows less than the people who work for him. however, you need to lose the honesty and humility and you demonstrate: you come out and flatly say you aren't a good programmer
no: you don't get to flat out say you know less about programming anymore. if you wish to make it in middle management and make 2x the salary of what the programmers under you make, then you have to actually know less than them yet somehow believe you know more than them
so lose your integrity, and you will make more money than the guys who got As in the classes you got Cs in, and they will work for you
intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
A little programming wouldn't be bad, but none would be preferred.
If you want to succeed in IT, you NEED programming. You may not be building enterprise-level programs - but when comes to pushing updates, creating a simple Intranet, building or troubleshooting a compiled/interpreted application or just plain keeping yourself sane*, having a programming background goes a very long way.
Perhaps IT is not a best fit for you.
*For some of us, it may be too late. :D
Those who can't do- Manage.
SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
Database Administration. Good money. Lots of positions. Just hope you like Oracle....
If you'd rather take essay tests than multiple-guess, then you might be a technical writer. People who can write clearly and understand technology at the same time are rare. Pay is maybe 80% of developer, but stress is 10%, so to me it's a big, big win
People are going to have a lot of responses that are focused solely on jobs in the IT world.
I suggest you skip IT entirely. There are 3 things every IT person needs to know something about: server administration, programming and databases. If one of these doesn't appeal to you at all (and you are honest with yourself and know this for a fact), then you are setting yourself up for a natural limit in how far you can go.
Possession of a college degree itself is proof you are capable of something for most employers. There is nothing about your choice of academic major that locks you into a career path. I studied English and Philosophy, was a programmer for about 10 years, and now own a political technology company.
Look into marketing or business management jobs, you do not necessarily need more than a college degree to get started there. Some of the most successful managers I ever had never went to college, or studied something unrelated to what they were doing at that time.
If you look at it like you would be throwing out your degree, consider banking jobs. You will be working with a bunch of systems and your background in CS will serve you well.
Try not to get too stressed out about it. Your future is going to happen no matter what you do, and all you are trying to do is find something you are going to be happy doing for a long time to come.
M
I worked quite happily as a process engineer for a while before doing any classic coding (c,c++). There are also plenty of CSs doing systems engineering and scientific work, algorithm analysis etc......
Anyway CS does not = programming! As a BSCS you should know this already.
computer science is a misnomer, really. I've heard that a more accurate name would be Information Science. Calling it computer science is like calling geometry, rulerography - naming the field after the tool is a problem.
In that sense, programming might be considered the application of information science - truly the engineering side
As with the sciences, you are either garnering new data (research), promulgating that knowledge (teaching/instructing) or you are creating technologies with the acquired knowledge (engineering).
If you don't want to program or be involved in programming (management or otherwise) then you are going to have to work in a teaching or research field. ...Unless you want to do sales and marketing - I do hear those folks have the nicest ark of all.
Read my Very Short "Stories"
I finished with the degree, and I've spent much of my college career working a job doing technical support (fixing laptops, troubleshooting Windows problems, etc). What jobs can I get with a computer science degree that are NOT mainly programming jobs?
Well if you want to keep doing troubleshooting work, the obvious answer would to be to get some kind of helpdesk position. The good news there is that they can't really outsource that very well, so if you live someplace with lots of businesses, someone will need good helpdesk personnel.
The not-so-great news is that you probably could have done that without your degree. Lots of people hiring for helpdesk will put more stress on experience than education/certification, and rightly so. It's not rocket science, but it's important that you know the pitfalls of that sort of work.
The bad news is the pay is generally crappy, and half your job will be non-technical customer support skills. In other words, people will treat you like crap and part of your job will be to take it with a smile. This isn't unusual for jobs, though, when you're just starting out.
Back to the good news, though-- it's not necessarily a dead-end job. It can be, but I know people (myself included) who started out as a peon helpdesk tech and worked up to the executive level. If you pay attention to the business needs of your company, and apply your troubleshooting skills there (and not just in technical matters), you can make yourself pretty valuable.
On the other hand, you could just take what you know and go into something completely unrelated. You don't *have to* work in a field related to your major. Either way, keep in mind that when you're starting off, your first job probably won't be glamourous. That's ok. Take what opportunities you have available to you, make the best of them, and maybe they'll lead somewhere.
Try these:
- Software production&design (Using Rational Rose instead of emacs work for you...leave the coding part for monkeys) ...
- Networks & Protocols (TCL gets you far here for running eg. simulators)
- Digital signal processing (all you need is Matlab)
- Usability research&development
- Standardization
-
Granted, most of this requires some "programming", but that counts, at tops, some shell scripting and really basic stuff.
The great thing about a CS degree is that it's not really a programming degree... if you look at it a bit differently.
A CS degree is a degree in applied mathmatics... especially in the areas where there are large amounts of data or repetitive math.
A good CS can get almost any position a mathmatician can get, can work anywhere that data is collected and studied, and can even do things that many engineers do these days.
If I were you I would first decide where your interests lie... then look for a function in that field that requires the analytical and logical mind of a CS major. For example I have known CS majors that made excellent QA engineers in the automotive sector, CS majors that worked in pubic works as traffic planners, CS majors who worked for major polling/statical analysis organizations, I even knew a CS major that consulted as a financial data analyst... he didn't know finance but he did know how to manipulate data on a spreadsheet to find abnormal activity or trends.
Remember, most people don't work in the field in which they obtained their degree... but they usually bring something unique to their position because of what they learned in school. Sure you can't write a decent program, but your gonna be far better at learning to use skills that require the logical processes used in programming than a acountant for example.
Think outside the box!
Good luck!
Sometimes the best solution is to stop wasting time looking for an easy solution.
Every job posting I look at in the IT field usually says a 4 year degree in MIS or CS or ENG, doesn't care which. Only programing jobs usually specify, and then real world exp. plays more than a four year info regurgitation certificate does.
An I.T. motto in the hands of an idiot is a dangerous thing...
I'm not the worlds greatest programmer but so far I made a living for the past 30+ years doing exactly that( Graduated in 1975)
I am also a DBA( DB2, Oracle), SysAdmin(Windows, Linux, Unix) and overall jack of all trades in the IT world.
This helps in the sort of work I do now. Systems Integration.
The fact that I know I'm not the worlds best coder, makes any software I write actually work because I test it properly
Some so called 'flashy coders' I have come across over the years actually write code that is a nightmare to maintain.
I'm also not afraid to learn new skills even in my mid 50's.
I know this is /. and many here will shot me down in flames but I'm really saying, don't close any doors too soon. They may be difficult to open again in the future.
I'd rather be riding my '63 Triumph T120.
InfoSec positions may require writing small scripts for proof of concept/testing purposes, but in general you'll be more tapping into strong networking/data management/systems engineering areas. Sadly, most universities still don't instill much security prowess into their CS graduates, so you'll have a lot to learn before you can really get deep in that kind of work. You'd probably start out running and analyzing security scans and work your way up.
Stay away from code auditing; only the most hardcore and fastidious code lovers truly enjoy (and do a good job at) it.
There's usually IT auditing and advisory positions to be found at the big 4 (PriceWaterhouseCoopers, Ernst and Young, Deloitte, and KPMG), as well as second and third tier firms.
12:50 - press return.
on the quality of your university, around here we are more than happy to pick up anyone who haven't got any real programming experience but got a degree from DIKU (CS department at the university of Copenhagen).
If the CS degree is worth its salt you should be well aware of how to program in theory, should be well into algorithms, the actual programming in a language is quite a simple thing to learn if you understand the fundamentals of CS.
A good company should put you under the wings of someone experienced - have them double check your work till you are confident in yourself. There is no shame in admitting you need experience.
Salary: 60k-120's
Consultant: 80k-150k+
SAP Security Consultant: 200k+
Believe me, if I started murdering people, there would be none of you left.
I'm surprised no one has mentioned software security. Information security is a big field and I expect it pays well enough (I haven't asked the guys here, but the one or two security guys I've known were around my same level and I'm a software engineer). There is a ton of knowledge about computer systems and managing certificates and intrusions etc. that isn't programming as much as it is configuring the systems correctly to cover all the loopholes. If you know what you are doing (or can learn quickly and do the research), you can be invaluable to a team developing an internet application.
Computer science is a great discipline for learning how to think logically, and learn some excellent problem solving skills. Don't think that means you have to work with a computer. As my favorite CS prof always said, "Computer Science has as much to do with computers as Astronomy does with telescopes."
Construction workers, bookkeepers, doctors, lawyers, chefs, soldiers, sailors, everyone in between and all the people who manage them need to be able to think logically and critically under pressure.
Think of your new CS degree as a starting point. Try to work in a few jobs you never considered before, even if you think you might be un- or over-qualified, and see what you like doing.
In my experience, outside the IT industry, people find any kind of CS/programming experience to be an automatic sign of intelligence. It's good for getting your foot in the door.
People with CS degrees solve the computing problem and then implement it themselves to test their work in real life situations.
Even people with Math degrees should know basic programming.
"I only speak the truth"
Karma: null(Mostly affected by an unassigned variable)
Cant program. Cant become a manager without experience. So do what people with no marketable skills do. Go for an MBA.
sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
A few months ago, we had the opposite question:
*(How to GET a PROGRAMMING job in IT)
http://ask.slashdot.org/article.pl?sid=08/03/30/1534247
My reply remains the same:
http://developers.slashdot.org/comments.pl?sid=504696&cid=22912562
Too lazy to click? Me too, here:
how to get a job 101
by sjs132 (631745) on Sunday March 30, @12:21PM (#22912562)
1) post to slashdot
2) ????
3) ????
4) Profit.
#3 was recognized as "get a job" by someones followup post, but I don't know if #2 was figured out.
Next time don't forget your resume and contact information, it makes it easier for us to get back with you. Oh, you might want to include salery requirements and relocation options also.
In the meantime, your worker desination will be: 009304039818-DRONE
Thank you for using the slashdot IT placement service, where: "A.C.'s comes first."
--- Relax, that mass muderer is just trying to reduce our carbon footprint, one fetus at a time...
Sadly you aren't too far off the mark. I had a friend who was waiting for security clearance. His job was to sit on a stool (literally) for the first of couple of months while waiting for clearance.
Before you go getting yourself into a career you're not interested in, maybe you should decide what you want to do.
It might help if you could narrow down what you DON'T want to do, as that might steer you in the right direction.
If you're a detail person, management might not be your strong suit. If you hate the idea of working with code, you might not want to get into databases, as a large portion of your time will probably be spent creating SQL scripts.
Just sit back and think about it. What parts did you like, and gravitate towards those skillsets.
Check out my sysadmin blog!
I have held two Systems Analyst positions that were more about understanding data structures, databases and applications and providing application, hardware and stupid user support, than they were about hard core programming. I have a jack of all trades personality and like to learn some of everything, but never really want to specialize. These positions have suited me well and depending on the employer the pay has been comparable to programming positions.
But hey, its really about doing what you enjoy. Me, I couldn't be happier...
"People are stupid; given proper motivation, almost anyone will believe almost anything."
Sarcasm...off. I mean this:
Thank you for admitting that programming isn't your thing. Thank you for not subjecting your fellow programmers to years and years of bad code, grumpy job performance, and being a drag on other coders' lives. Thank you for letting our managers hire people who want to do this job, instead of those just killing time.
I'm sure you're a fine person, but thank you for not working here as one of my developers. You are too honest for management or sales, but I'm sure you'll find something good to do.
Now if we can only get other CS majors who shouldn't be programming out of the trenches, life might improve.
Get off my lawn.
There are a lot of fields that would benefit a LOT by someone who knew some basic good programming, not just fiddling around with statements, but understanding the order of algorithms and such.
If you like working with hardware, PBX and phone installation is good. There's lots of programming required on phones, but it's all really simple stuff. Alarm installation or maintenance. Cable installation, or better yet, cable support from the hardware/software side. Cash register programming. Network installations require router programming.
IMHO, the trick would be convincing the employer that you can do it all... and actually learn to do it all. All of these things are easy to get into, although some can go into a lot of depth, such as programming routers.
If you like a little more software and a little less pulling cable, programming firewalls and script programming might be more along your lines. Sysadmin for automating tasks. Database programming (although honestly, Real Database Programming uses a lot of programming skills, so if you're not very good at programming, you could have trouble with your db tables sucking and lookups taking forever).
You should be ashamed of the fact that your university would give you a degree in an area that you are the first to admit you haven't mastered. A sad commentary on the state of the American college/university system.
"It's the height of ridiculousness to say for those 9 lines you get hundreds of millions."
Here's an idea: find out what you want to do with your life, then go back to school and get the degree that will let you accomplish it. You actually completed a 4 year computer science degree without knowing what you wanted to do when you got out?
You remind me of myself 10 years ago.
I was sitting in my final year "Software Engineering II" subject and I really felt shit about moving into programming.
I mean I got through uni programming but I never felt good at it. It almost felt like a chore.
So for the heck of it I asked my lecturer what he thought I should do.
Anyways, I ended up doing networking (Cisco specifically) and loved it. 10 years later i hate networking...inevitable.
Although programming is the visible face of computers, most jobs using them have little/no programming requirements.
Do you have people skills? Can you attend meetings all day without retching? If so, consider management. I don't care if my manger can code his way out of a paper bag as long as he can keep me out of meetings. He does have to know enough to kinda keep up in the technical discussions, but that is about it.
But my advice to you is to get out of the computer field. It doesn't appear to be where your interest lies. Find something else that you like doing and aim for the computer end of that industry. It may be too late for you to become a doctor, but hospitals have huge support staffs and working with already written medical software might be more rewarding for you. Or perhaps you can get teaching license and help run a high school program.
Be creative. There are lots of related fields where your skills might get you a job that you like. You might be surprised at what you can find and can talk your way into. Heaven knows that over the years I've seen countless EEs who end up with software jobs, and are often poorly suited for them.
- doug
PS: I intentionally left marketing off the list. If you need to stop and bounce an idea off of slashdot, you don't have what it takes for marketing. And you are a better person for it.
BS degree indeed, then.
My Photography - http://ian-x.com
The Deathlings (comic) - http://thedeathlings.com
Logical skills and constructing a rock-solid argument towards a particular problem are some of the traits in our best computer scientists. They're also the bed rock of a great attorney.
How good are you at math?
Seriously, I wouldn't let the current Bear market put you off of the idea of getting into trading. Start out as a clerk or runner for a good trading firm, learn the ropes and everything you can about the markets, balanced portfolio strategies and options trading, and ride the next Bull market to the top.
If I'd known in my twenties what I know now, I would have done that. Contrary to popular myth you don't have to know exactly when to get in and get out, you just need to know how to spot opportunities and exploit them, understanding risk and how to minimize it, so that your inevitable losses are consistently dwarfed by your equally inevitable gains.
And who knows, you may find yourself honing those programming skills getting a good model put together to increase your earnings.
Frankly, as one whose made a very good living over the years as a programmer, system administrator, and project manager in the financial world, if I had it to do over again I'd go into trading. Same amount of work, similar levels of stress, similar math skills, and far greater financial rewards, the current economic troubles notwithstanding. Why make around $100k - $200k per annum when you can quite readily earn $300k - several million, and no, I'm not exaggerating.
A good place to start, including free courses (normally $50/course): http://cboe.com/LearnCenter/default.aspx
Good luck with whatever career you choose.
The Future of Human Evolution: Autonomy
Flipping burgers! A lot less stress... Coming from someone who's been professionally programming now for 15 years.
I'm in performance testing. While there is some programming involved, it is usually throw away code (use for one test and chuck it). However, the position is extremely technical. You have to know how systems work millisecond to millisecond, and be able to look at a network trace and understand what is going on. Also pays as well a programmer. Requires extremely detailed and disciplined documentation skills, and is also politically very difficult (on your best day, you are an expensive and difficult waste of time - on your worst, you are telling people they are incompetent). Not for the faint of heart.
The real question is what do you want to do? You might not have a good idea yet. Thus you ask thousands of slashdot readers you have never met.
I got a Mech. Engineering degree but got my first job as a staff consultant at Price Waterhouse, before it was PWC. That is a good way to go if you are not sure what you want to do. Consultants, especially entry level ones, end up doing whatever the client needs them to do. I wrote requirements, test plans, reports, did testing, maintained code, programmed, presented to clients. Just about everything. It was a great experience.
You may also want to try to become a business analyst. If you can understand the business guys and translate their needs to programming specifications. You may also want to look at business process management tools. Check out www.intalio.com. With understanding of BPMS you can take business requirements and weave them into high level executable processes.
BSAs play a critical function in most IT project teams, and often pays just about as well as a programmer if you have any experience (entry level positions don't pay much, but you need to earn your dues).
In addition, if you get a bunch of experience and understanding of methodologies (UML, RUP, Agile, Requirements Engineering, etc), you can easily make good money contracting in large metro areas.
This role can easily transition into a technical/software project manager if you're good at time/expectations management, or into IT management (for large organisations).
In the UK, this role is also called a Management Information Systems Analyst.
Make sure everyone's vote counts: Verified Voting
May I suggest site sponsor dice.com? They have tons of jobs that would like a CS degree but don't require programming. You could also look into a job in Higher Education as a Instructional Technologist. They help faculty members integrate technology into the classroom to increase learning. Course management systems, video editing, web server administration for wiki's and blog's and so such. Schools can't fill the position fast enough. Pay won't be awesome, but fair. You will also more than likely have the opportunity to work on a Master's while you work. Higher Ed benefits tend to help make up for pay scale.
Or 45-50k+ in educational institutions. And those are entry level. Not awesome, but better than Harddrive replacement monkey. If you end up doing the really interesting stuff at a university (planning the next big number cruncher), you pull down a little more than what entry level corporate folk make. It's a trade off; more interesting work and less profit motivation (ie better equipment) or more money for yourself personally.
I'm disgusted by the number of suggestions that this guy go into testing. I'm especially disgusted at the ones who are telling him to go into test so that he can work his way into a development position later.
Software is the only engineering field where the engineers who do quality assurance (prevention of defects and design of quality control processes) work are treated like the people who do the quality control grunt work (the actual running of tests). If the computer industry ever intends to routinely get software that doesn't suck right out of the box without figuring out how to clone Linus Torvalds, it had better start taking defect prevention and detection seriously and that starts with not treating it as a only as a dumping ground for CS rejects.
You could maybe look for jobs in software testing, it certainly worked out for me as I am also a terrible programmer. A CS degree ought to boost your chances of scoring a good job. And with 'a little' programming experiences you could also do unit testing etc.
The subject is the title of a book I just finished reading. Being a programmer myself, it has opened my eyes to a WIDE array of possibilities and is causing me to dream big! Get yourself a copy from the library or have a cup of coffee at Borders and read it over the next week or so and you will learn how to take your skills to ANY industry and apply yourself to get the position you love.
You can make good money if you specialize in a tool like BizTalk or Commerce Server. You'd have to code a bit, mas you'd probably spend more time with consulting: helping people set up their environment, teaching the basics, and helping with optimizations.
Look into QA/Test work. Your CS degree gives you the technical knowledge and your support work gives you a user perspective. Not only can you work with a design team from a technical stand point, but you can also give them feed back on how the user might do things. This is a good combination for QA, it allows you to think outside of the box when you approach a problem.
Why do we correct our criminals but punish our children?
This may fall more under a MIS degree than a CS degree, but the piece of paper you received is not as relevant as your skills are. The closest thing your degree will get you to a job is an interview. The things you are good at and enjoy doing are what you should look for in a job. Getting the hiring manager to like you is what will wind up landing you a job.
.com where I work). While there is an element of taking the specs from the customers and bringing them down to the engineers to my job, I do generally find it satisfying for now. When non-tech business people try to define how software should work, they can't express their needs well enough receive acceptable software.
/2cents
I, too, am a programming-adverse geek. I am good enough at understanding computer logic & business needs to translate between the people who know what needs to be done (business) and the people who know how to get it done (developers). There's a stunning lack of people who can ride the business/tech fence (at least at the multi-billion dollar
I got my start building Crystal reports & doing ad-hoc SQL queries. I used this to start understanding the objectives of the departments I supported, and when one of them needed a techie to administer software & define requirements to a vendor, I got the call. Maybe you can do something similar with your help desk/support position.
Take off every 'sig' for great justice.
If you are outgoing, technical sales might be a good fit. The received view among engineers at least used to be that the very top of the class ended up becoming professors, making very little. The next cut design engineers, doing OK, but nothing spectacular. Below them were the manufacturing engineers, making about the same. The C students, however, ended up in sales and made the most of any of them.
Q: What did the postdoc applied mathmatics student say to the first year undergrad?
A: Do you want fries with that?
Im just curious how you can make it through an entire four year computer science degree at a major university...and not be aware of what job options are available at the end it. I understand not knowing the ins-and-outs of getting said jobs, but we're talking a really high-level thing here? And this is an honest question, Im not trolling in the least.
That is the way education works today. Here are the tools, but no plan, no context, no path, no reality.
Then the real world slaps you in the face and you cry like a little girl who dropped her ice cream.
"No one told me what to do"
No IT manager is going to tell you what to do, because they were in your shoes 3-5 years ago. Finding a mentor in IT is a needle in a haystack. Find someone in their late 50's, someone who was a hobby programmer and got into the field not because they have a degree, but because they had the knowledge and the desire to do the work required.
All this really means your not done yet, time to learn a new lesson in a new school called the real world. You are going to flounder for the next 5 years and land in a place you don't want to be, under managers who are just as incapable as you, and you are going to bitch about it to everyone.
If you have a CS degree you must have some technical understanding. If you also have the ability to explain a technical thing to a non-technical person you may also be a good candidate for a Technical Sales or Application Engineering position with a software or hardware company.
This is what I do...I too have a CS degree- but no longer am in active development. I found out that my skill was to translate the technical to the non-technical and have been doing it ever since. If you have good people skills, the sales part is pretty easy. And if the target of your sale understands you are an engineer and not just another sales guy- you will be listened to.
Keep doing what you are doing :D
Seriously, many IT shops actually like having a few CS degrees in their ranks so that they can help from time to time with some custom programs, or help the internal programming groups better understand your in-house environment so the custom programs work better/efficient.
We were all warned a long time ago that MS products sucked, remember the Magic 8 Ball said, "Outlook not so good"
#1 Systems/Analyst around $40,000+ a year.
#2 Database Administrator $55,000+ a year.
#3 IT Department Manager $100,000+ a year.
#4 Quality Assurance Technician (Quality Control, test programs don't code them) $35,000+ a year.
#5 IT Supervisor/Manager $60,000+ year.
You could also take some business management courses and be able to work as a manager in any non-IT related management job, just get an Associate's in Business Management or get a Bachelors of Science in Business Management and you already met most of the requirements with your Bachelors of Science Comp Sci degree for Math, Sciences, Humanities, English, etc, so it would be a short-stay back at college to earn a business degree like I did. That is because if you can do both computers and business, it makes you a much more valuable employee to a potential employer and it makes it easier to get promoted to management.
Remember, Slashdot does not have a -1 disagree moderation, and no, troll, flamebait, and overrated are not substitutes.
Until you find that nirvana, by all means apply at a medium to large company as desktop support. That will give you experience and open the doors to all manner of possibilities, but mostly in IT. The best thing is it will give you time to figure out if working with computers is really what you want to do.
As for salary, it greatly depends upon the part of the country you are in. Boston and San Francisco pay the most, but the cost of living is the highest, too. Midwest states are generally the lowest with a matching cost of living. Expect a degreed but non-certified desktop support position to be between $35k and $45k a year.
Can I back you up and skip the programming requirement?
At least the poster is being honest, and saying "Sorry, but y'know, I made it through exams but 400,000 lines of code would kill me". I said the same thing when OrgoChem busted me out of science, but there's room in this world for informed adjunct people.
Maybe this guy might not know exactly how to catch some weird zombie-null variable pointed straight to Utah, but if one of the Dev's reports in "Listen man, the backend code just went to hell and took the handbasket with it, we're 3 days out to fix it plus 2 hours check-in", at least he can translate it to the Senior guys as "Give 'Em BS Speech #147 and plan to ship with a week's delay."
My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
If you have a sharp mind, and come to work, actually learn and do work while at work, you my friend are invaluable.
I have had to hire people in the past, and occasionally still do. You cannot believe how hard it is to get someone to COME TO WORK. Unskilled people start showing up for work around $15 US per hour. The less you pay the less they show up and the less work they actually perform. Skilled people on the other hand take even more money. (Results typical for Jacksonville, FL. -- YMMV)
Now there is a large caveat to this. There are people out there that just plain have a good work ethic. Whatever they are paid, they come to work, do good work, and go home. These people are who I am looking for.
I want to pay someone a good wage and have them do good work.
- I live the greatest adventure anyone could possibly desire. - Tosk the Hunted
I'm currently a comp sci major working in systems/operations. I work with server hardware and software, system administration...that kind of thing. I do a lot with a particular set of applications related to the work my company does that are more specific than a general sysadmin position, but no programming.
Unfortunately, many who focused on programming in college also aren't very skilled in programming...
There are many areas to choose from that don't require skills in programming. You should, however, keep yourself versed in understanding how to read a program. It is a necessary skill no matter what area of expertise you choose.
I wouldn't recommend "support" unless you like being attached to a phone or stuck in a dead-end job diagnosing why a PC won't boot. If have any talent in seeing skills in other people or managing a project, I would recommend PMI certification (Project Management). That allows for a clear path to management.
Another good area is QA/Six Sigma type work. If you are good at math and can wrap your head around the metrics of improvement and testing from a quantitative and qualitative framework, this is an excellent and challenging field. There will be some "programming" involved, but usually things like Excel macros and such that relate to statistics. (On a side not: beware of Excel's statistics related functions. Many of them are terminally ill and have been from the beginning. Verify all your data and test multiple scenarios with a handy TI or HP calculator beside the keyboard.)
In almost all IT-related fields the time from expert to out-of-date is around 6 month if you aren't studying. Security work has a shelf life of 1 to 2 months, though. So unless you don't mind intense study for the entire time you are working, stay abreast of security but avoid it as a career. I do have some friends, however, who love the field and have stayed for years. It's more about your disposition than anything.
On the salary basis, don't get too excited. Since you are just starting out, stay light on your bills and choose a targeted path. If you get stuck on too high a standard of living too early, it is almost impossible to switch jobs, if needed, to better align yourself with your career growth plans. In the first 5 to 7 years, expect to switch around a bit to get into the proper career groove. Then, lay down some time in 1 (maybe 2) semi-long-term spots that are challenging and will grow your skills.
Keep an open mind. I have been a bonifide expert in several technologies that became extinct overnight. You can't really predict with any certainty what will and what won't last. Keep up with multiple areas and technologies at once.
Always keep your eyes open for good high-level positions that you can do with a little stretch. Also keep in touch with education. If you have a BA or BS, go for an MS or two. MBAs may be boring but they open doors for you. PhDs are typically overkill and tend to sap the brains and make the decorated individual quite useless in a real-world IT scenario.
Blog smart, publish often, write books. Even if you stink at writing, get good at it (and get a good editor until you are). The published will always get a job.
About "blog smart"... Don't be stupid. Stay out of politics and your personal life. The Myspace/Facebook generation keeps shooting itself in the foot because all their dirty laundry is aired out in the public. As a very unfortunate example, if you like you music edgy (pick the genre) and blog about it, you could lose out on a job interview to someone with less experience and harder music tastes who doesn't blog about it. Corporate hiring wonks are relying more and more on internet research for candidates.
I've been through 24 years in this industry in everything from programming to system admin to security expert, with a lot of things in between. Stay light, even with a family. This can be a feast or famine industry. Keep your possessions liquidable and classically sparse. When the money rolls in, don't spend it all. Sock it away. Invest some. "matress" some
1. Management is not an exclusive skill. Good tech managers are those people who have worked/coded in the trenches and understand the nitty-gritties of the development cycle. The are able to delegate to, and manage a group of techies because they understand the complexities of a problem statement and not just because the can just delegate and manage, which BTW is also an necessary skill. Necessary, but not exclusive. So consider working in the trenches for some time before becoming a general.
2. Coding/programming for CS is not the end, it is the means. So all CS jobs (proper ones that is ) are not mainly programming jobs but mainly about something else, in which the programming languages are the tools. Let me explain -- my areas of expertise are OS internals, Hardware-software interfaces and network stacks. Programming is the tool I use to control and extract a specific functionality from a device. So, I personally feel that you are reluctant to code, it would be difficult for you to learn CS.
3. You could however go into sysadmin, network admin or DBA jobs which do not require any coding. Those jobs however are not core computer science jobs. They however do pay well.
4. The best option for you would be to go for an MBA I think. As I read on a T-shirt recently "MBA -- when your BS wont get you any higher". I am presuming that the pun was intended.
I graduated with a degree in Computer Information Systems. I have done software testing and my entry level pay was at least 10k more than the average entry level developer job. If you do automated testing you will be more valuable, but manual testing is not a bad place to start.
You could aim at becoming an operational architect, a person who decides what boxes to get, their configuration and amount, network topologies etc. Several colleagues with that focus haven't touched a line of code in years.
Assignment scopes range from small (e.g. supporting an internal application with infrastructure) to large (enterprise wide architecture spanning multiple data centers). The job includes a lot of requirement mgmt. and specifications. Some project management work is also implied (e.g. TCO calcs & comparisons, rollout planning and staffing..)
The pay is very good, but you may have to seek out larger firms where the complexity to be managed justifies having architects with specialization in the functional *or* operational domain. At smaller firms (read less complex environments) the same architect typically performs both parts of the overall design.
However, if you don't already have a lot of experience with boxes, networks, security and lifecycle management of applications then a good start would be to get that first. As someone else mentioned, networks admins, DBAs, server installation etc. are accessible areas for junior people.
In a society that believes in nothing, fear becomes the only agenda ~ Bill Durodié
I have a BSci in Comp Sci and a BMusic in Composition. The plan was to work as a programmer for a while while I mulled over the possibility of going to grad school for music.
I was hired as a half programmer, half network admin, as that's the work that needed to be done at a place I already had a relationship with. I ended up liking the admin a lot more, and started finding a lot of things (including some sound- and music-related) around the company that I liked doing that needed doing, and that weren't part of anyone's actual job description.
So right now my job duties include a bit of programming, a bit of admin, a bit of organizational work, a bit of audio production, and a little bit of management. I'm not overloading on any one task (as I had before on programming... the real-world shock of moving from maybe 6 hours a week of it in academia to 40 at work hit me hard and made me want out), and doing all things I like to do in quantities that I like to do. Essentially, I find things that people want done, that I like to do, that nobody is doing, and I do them. People seem to appreciate that.
Perhaps my situation is rare, and I'm delighted to be able to do it. In any case, keep in mind that just because you're hired as a programmer, you don't necessarily need to stay as one. Get an in somewhere, find things that you like doing that need to be done, and eagerly volunteer to take them on (or just do them and ask forgiveness later, if the culture allows).
It also helps if you have a healthy dose of fearlessness. Since I came in with an exit strategy (i.e. grad school), I had little concern with the possibility of losing my job. This I've found very freeing, and led to going after things I might not have otherwise, and, oddly enough, to greater job security and job satisfaction.
-- I prefer the term "karma escort."
Do you know UNIX? a unix SysAdmin makes only a little less than a programmer (though it usually means you've gotta carry a pager) - key to getting high paying SysAdmin jobs is to janitor production systems- internal corp IT is never considered as important. Bay area production UNIX SysAdmins with experience can expect salaries well into six figures, and while you are expected to be able to read/write a little perl, you aren't expected to be good at it.
Have you thought about SETA work? (http://en.wikipedia.org/wiki/SETA_(contractor)) SETAs are government contractors that are basically paid to watch others programmers do actual coding. They act on behalf of the government to ensure that software development projects are "right." The job requires knowing programming and staying current in the field without actually practicing the craft. As someone who programs, I see them as being sort of like the "Internal Affairs" of government contractors. They are about as popular in some circles too. But hey, to each his own.
"I unfortunately must admit that I am not very skilled with programming."
Either is 80% of the programmers. Since you admit it, your already ahead of the curve.
Teaching might be a good move. May require more education.
Start your own business. Assuming you are young and single, or have no kids it's a great time to start your own business.
You need to understand what you don't like about programming. That can keep you away from other jobs you won't like.
The military is looking for 'computer people'. Go to officer candidate school. As an officer you can resign if it's not for you.
A degree can be used to get into many fields outside the degree. Ever think of medical school?
How about politics? we cold use a few more representatives that understand technology.
The Kruger Dunning explains most post on
My godson got his law degree, worked for a year as a lawyer, and quit because he hated it. He then went into IT, where he has been happily employed, since. Why shouldn't you be able to do the reverse? There are a number of legal specialties that prefer to have students with science backgrounds (patent law, as an obvious example).
You could work in QA at all sorts of levels.
Go to grad school. Get a degree in biology, psychology, business... something. Don't pick a field you don't like again. At least you realize this now. It would have been ideal to figure out what you wanted to do with yourself a few years earlier.
Comment removed based on user account deletion
There's loads of jobs one can do in IT outside of programming. ;-p
Did you ever think of:
1.) Enterprise Architecture
2.) Business developer
2.) Functional designer
3.) Usability specialist
4.) application manager
5.) project manager
etc. etc. need I go on.
Most code-monkeys actually think these jobs are superfluous because its all about the code.
This, of course, is an illusion which becomes apparent when you look at some of the most brilliant code that produces the most horrifiing interfaces.
It also shows when individual systems try to interface. The stupidity clearly visible when programmers of different systems come together and start blaming the other for not adhering to THEIR brilliant SOAP/RPC/DBI design is sometimes sickening.
In short there's a lot you can do to help all of us, poor souls, lost in IT to create a better world ;-p
Comment removed based on user account deletion
Civil Engineers choose their major with the idea that they are going to build bridges when they graduate, but its a decade or more before anybody entrusts them with that. What they do when they get out is more like figuring out how many gallons of paint it will take to paint the traffic lines on the bridge.
People coming out of a CS program aren't good for much right away. There are exceptions of course. Developing software is like music; anybody can do it if they apply themselves, and after a while with the right coaching and effort they can become passable. But then you've got Mozart, who was composing at age 5. If you were Mozart, you'd probably know it. The fact that you say you aren't good at programming only means you're more self-aware than others. Very few people coming out of school are good, although very few people know how not-good they are. It takes a year or two of seasoning to get up to speed.
I'd suggest you don't worry about what you are good and not good at yet. You don't really know at this point. You should look into things you think you aren't good at -- you might surprise yourself.
I'd look for a good employer. One doing interesting things, with happy employees. Then learn the kinds of things on the job your employer needs. You didn't think you were done learning did you?
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
...could use more officers with the ability to realistically assess their own weaknesses. Have you considered applying for Officer Candidate School?
I'm not sure if it's any help but I did my undergrad in CS and went on to archaeology for postgrad. There are a ton of fields out there clamoring for computer people for data collection and interpretation. Traditionally these fields don't attract tech people but that's slowly changing. I may not make as much as an engineer (in fact I'm positive I don't make as much) but I get to travel the world on the University's dime.
"Never let your sense of morals prevent you from doing what is right" - Salvor Hardin
Comment removed based on user account deletion
Fixing laptops, troubleshooting Windows problems, etc.
Setting his threshold to 5, Sparky eliminated most of the trolls on /.
Air Force / Navy Be sure to ask them to pay off some of your student loans and do your homework before signing. This career path is batting about 0.500 with my friends, 2 have found good employment after doing a small stint, 1 is on a long term career path in the AF, and 3 have had major difficulties finding work after discharge (although in these cases I find it hard to lay all the blame on the military).
The most important thing to do is get some experience, then the theory you learnt may become useful. You cannot be a project manager if you you do not understand what the people you manage do. Project management is wide subject, not just gant charts and counting man days. You need to know what the people are doing, what everyone else is doing and what the business is doing. Everything is useful, operations, sys admin, programming. If you do not understand the fundamentals you will not be able to make good decisions. There are too many projects that fail at the moment giving the IT business a bad reputation. You must understand your subject, not in minutae but enough to have respect and understanding for those working on the project. Alternatively you could ask the university for your money back. Education costs money and sounds like this really cost you.
Let's see... you have a degree in computer science, yet you never learned to program.
I say this half in jest, half in sorrow, half in seriousness (yes, three halves): Obviously the career for you is teaching computer science to undergrads.
Of those mentioned in the subject, only Business Analyst will be scripting free.
However, if you like hardware, just go that route. There are plenty of decent hardware related jobs.
*raises hand*
Degree in CS, loves problem solving, dislikes heavy coding.
Why? I burn out quickly via coding. I don't burn out nearly as fast doing other things (Sysadmin work, help desk stuff, even QA).
Not everyone likes to code day-in-day-out, especially with how most of the industry is ran. Has nothing to do with the instructors I had in school and everything to do with my brain being bored. For some people, coding is interesting. It is very interesting to me as long as I keep it to brief snippets or the small full project here and there. If I start working on something large and long-term, I start to burn out.
Thus, I got out of code monkeying and started working in other areas of IT.
--- Ãther SPOON!
Seriously, the only two decent posts in this whole thread, and they're hidden at a 2 and a 1...
The person went through 4 or 5 years of school and got a CS degree but doesn't want to program? Ok, fine. But didn't something interest you in that time? Database development? Database design? Networking? Maybe you should stay in school and get a Masters in Business so you can then boss around programmers. :-)
My compnay should hire some PM (Program Manager, or Project Manager).
Those are the people that follow a project from end to end. Interface between the customer and the developper, make sure everything keep on tracks.
If you have some people skills, are organized, have a good understanding of the technology (even if you cant program), they we should hire you.
One issue, is that engineers will probably look down on you, because off course you dont understand the details of what they are talking about. But give the engineers the responsabilities of a PM, and they will be asking for somebody to do it for them...
Not just the typical 3 letter federal agencies, but your state and even local level law enforcement is looking for them. These are the guys at the police department that you usually don't see on CSI or L&O who come up with background information on people, possible links between places/people to the crimes, and make all those pretty charts and maps. Many people in the field have a computer science background and its a growing sector. The thought processes for data collection, analysis, and creating the final work product are pretty similar to what CS minded people are typically good at. Pay depends on the department, but its usually more then a typical entry level help desk job and only a 40 hour work week. Plus you even get the satisfaction that you helped solve a crime from time to time.
If you are good in front of people, look good in a suit, and can articulate complex things like how software _works_ to help people, the job pays extremely well. I'm in that line of work, and have traveled the world helping sales reps sell software and professional services. You have to know your sh*t, and be confident, but it is a great path out for a techie to further their career, build their network, and be paid what you are worth instead of salary. Just $0.02
I have a BBA in Computer Sciences, and I work in Desktop Support at a major advertising company. Networking (system administrators, e-mail administrators, etc) is a possibility. Don't forget webdesigner and database designer. You could also get your teaching certification and teach programming, sciences or math at most schools. IT consulting is very big now, if you want to get into that field. Or you can go back to school and get a minor in something else.
Tech Support at my company(large software, not MS) ranges from ~40-90K. Knowing code to be able to read it rather than create it is a pretty good skill for a software TS job.
They contacted me after I posted a resume on Monster about potentially filling a position. Unfortunately, despite the fact that I called them back twice, I couldn't get a hold of someone.
Three weeks later, they re-contacted me. Again, I called twice but no response.
Two weeks later, they made a third attempt. I proceeded to make a threat against reporting their harassing phone calls with their local authorities and to sue them under the spam-fax law for the e-mails if they continued to try to contact me. Surprisingly, they responded very quickly to that.
There were a few of your kind in school with me, and I never could figure them out. How they passed some of the courses, and why they chose CS was a mystery to me. I know one of them went on to get a graduate degree in Computer Information Systems.
Heck, where I work I'm expected to be the DBA, a programmer, a project manager, a system designer, and (if no one else is around), the help desk. There are days where I invent processes to solve business problems, assign myself the job of writing a project plan, then delegate the programming tasks to myself, only to be interrupted by someone who's printer has ceased printing. Ahhh, the joys of working at a small company with a tiny IT department.
It's a Computer Science degree, not a "Programming degree"
It's like saying, I just graduated from some culinary academy, but I don't want to be a waiter.
Since this shining star wouldn't mind a job with some programming I'll add, most programming jobs only have some programming. There's documenting business requirements, translating those into technical specifications, tracing the reqs and specs to test cases, documenting use cases, analyzing risks and modes of failure, and so on.
But judging by the question, my best advice for the OP is to practice the phrase, "would you like fries with that."
I mean, if Frank Gehry doesn't know how to weld or install a toilet, fuck his buildings, man. Architecture degree my ass.
As if we needed more evidence that a degree from a book doesn't mean squat. Either suck it up or go build small business/telemarketing networks.
(You do have tools, and they did teach you about how to drill bank concrete, make grounds, route tubes, wires, punchdowns, video surveillance, nameservers, PBX's and how to bid a job right?!)
Or (sniffle) if that's too much programming for you, you could always go clean gutters, all you need is a truck, a 5 gallon bucket, a hose and a ladder, maybe a 6-pack of beer and some meth to motivate ya...
On second though, skip the meth, it will just cost you $20,000 in dental bills 10 years later. At least beer only costs $3500 a year and a couple DUI's.
Maybe computer recycling would be better?
Sure, a little coding is required if you want to do it right, but it's not so bad. It pays as well as, or depending on the market demand, better than a programmer.
Alternatively, you could go into technology management. You usually have one or two programmers that make more than you do, but it's a good living. Once you get into middle-management, you're making more than a programmer.
If you can read this... 01110101 01110010 00100000 01100001 00100000 01100111 01100101 01100101 01101011
To be completely frank, you picked the wrong major if you don't want to do programming. I also graduated with a BS in Comp Sci and the VAST majority of the course load was programming related.
Why didn't you transfer to another more appropriate major, perhaps IT or MIS or any other computer related major not heavy in programming?
Now, to answer your question, I would say probably not many. You can almost certainly get an IT administration position if you have the appropriate experience. But you'll have a tough time getting a great salary as entry level IT positions are usually just "ok"
Basically you're looking at in house IT (installing and maintaining enterprise software applications, working an internal helpdesk, provisioning servers and/or desktop machines, etc.), customer-facing phone or email support (ick), or some sort of sales engineer (SE) position where you're just a salesperson with a technical background and in-depth product knowldge. Or you could teach high school level Computer Science or "Computer Applications" (e.g. "How to use MS Office") courses.
Check out salary.com (or similar) for what each of these would pay in your area.
lol.
Here's the thing. If you want to manage development projects or programmers you will be 100x more effective if you have significant development experience.
There are plenty of other types of IT jobs that aren't programming jobs, though I suspect most or all have been hit upon here already.
Software engineering and programming should be done by skilled engineers and programmers. A lot of the reason we have such a huge amount of crap software in the world today is that people who have NO clue about the appropriate and effective uses of technology get into positions where they have to make technical decisions.
"Malo periculosam, libertatem quam quietam servitutem." -- Jefferson
If you graduated in a field of study,
and are not skilled in it, then it sounds
like you should simply forget you went to
a university.
Find something you are skilled at and then excel
at it. Many great people have done this.
Or..............
Why don't you simply try to excel at programming.
Most programming is simply putting your nose
to the grindstone. Bad programmers are frequently
just lazy.
Apply yourself!!!!!
How does one get a CS degree w/o knowing how to program?
-Cnik
Most programmers I've met in the industry can't program worth a crap either. Your lack of skills won't be noticed. (Except by people like me, but no one cares about my opinion, because I have a "bad attitude".)
"Once we've identified and embraced our sickness, we'll have strength...and that's when we get dangerous." - John Waters
If you can write (and technical writing isn't prose), technical writers are in huge demand. Software engineers don't like to write docs, but they're essential.
I have a good friend that got his degree in computer science and realized about half way through an internship that he preferred administrating servers to programming. He got a good systems administrator job, but unfortunately he took a bit of a pay cut, $60,000 as opposed to $70,000 - $80,000 he could've gotten for developing software. He's now worked his way into a sales engineer position though, and with commissions he's probably clearing more with this position than I do as a full time developer.
Maybe you just had some awful instructors and with some proper guidance and encouragement could be a very good programmer. Programming is just like any other profession, it takes time and practice to get really good at it.
If you're sure that you either really don't like programming or REALLY don't have much aptitude for it then I'd find out what you ARE good at and pursue that. Life is too short to work at something you don't like.
"Meaningless!, Meaningless!" says the Teacher. "Utterly meaningless!"
1. Product Testing, Quality Assurance. 2. Systems engineering, requirements gathering 3. Database administration. 4. Project Management 5. Product/Brand Management 6. Pre-sales Engineering/Architect 7. Product Support (help desk) 8. Project Management 9. Solutions Architect. 10. System Administrator. You could also look for each sub category for more options. Good Luck!
Vi havas e-poston.
As someone with a CS degree and having worked in a university CS department for 7 years as a researcher and system administrator I know a lot of CS majors aren't very good coders. Most of the students I knew didn't like coding that much and only looked at it like dues to be paid until they got a real job. Being stuck as a coder was considered a dead-end. The question I have is if the person asking this question is actually good at anything in CS. Ok, so they aren't much of a coder, what else do you got? What do you enjoy doing in CS if you don't like coding (I got interested in CS because I liked to code, what drew you to it?). If you don't actually like CS than you should tangent to something you do like. If you are going to work in a field for a decade or two you should do something you love (or at least like).
Depending on which school you got the CS BS from, you may qualify to become a patent agent. See http://en.wikipedia.org/wiki/USPTO
I have a computer science degree and I now have a tech support for a fortune 500 company. The comp sci degree relies heavily on programming to teach computer related concepts. Don't think of this degree as a trade certificate, think of it as general computer knowledge. Just about every computer related field will higher people with a computer science degree.
Not the same big bucks, but consider going back to school to get a Masters degree in Public Policy. Some schools offer a MPP track in Science and Technology Policy. Or get an MBA and become a consultant with your prized technological + business background.
You say you've done a lot of tech support. Are you interested in being an IT Admin? Network Admin? Maybe the business side of computers? Are you interested in areas that only semi-relate to computers, such as marketing, sales, etc. for a company whose product is so technical as to make your degree relevant?
Just about every school does this, dude, maybe except Harvard. It's good to know you intend to spend $50,000/year on your kids' education, since no public school in this country (yes, that includes the U of CA schools) produces only competent programmers.
Apart from the advertisement, this is a very good advice which more of us nerds should take. I'm doing a similar thing, after years as developer I changed to the consulting business. I only write code in emergencies (firefighting etc), but I know that I could.
But mostly I don't work as an IT consultant, just doing stuff in various businesses. If you are able to do a lot of abstraction and to adjust yourself to the semantics of that particular business, you just need to pick up the money from the pavement, because your competition usually consists of accenture material and generally lacks of common sense and pragmatism which is stuff that your BS should have taught you.
Applying your skills to a different field with much a better financial outcome is usually a good thing.
On second thought, let's not go to Camelot. It is a silly place.
There's always networking. Where I work that's where most of our CS/MIS graduates that can't actually program usually end up. It's either that or crash test dummy.
'The tyrant will always find pretext for his tyranny.' - Aesop's Fables
A computer Scientist can devise methods of representing data that take less space than normal.. or propose the least redundant way of gathering information. Or find the solution to puzzles such as lights out. Basically a Solid Cosc Grad should be able to solve riddles, handle math at a level that makes most people shake their heads in general disbelief.. having an Idea how long half a million seconds is in human terms. or a billion seconds. Being able to prove that a problem is or isnt solvable..
So this leaves careers that have some dependencies in logic.. such as train routing, UPS truck routing.. telephone circuit design. General supply logistics.. Unfortunately, these jobs are already filled by cosc people, and they are programming that stuff too.. because a good programmer is a lazy programmer.. and they dont want to duplicate their own work..
so other possibilities include.. QA programming.. you just try and break code.. sure there is some programming involved, but you go home at five..
The subject says it all. You could get $60k to $120k depending on experience and the scope of the job.
Excuse me, but please get off my Pennisetum Clandestinum, eh!
Not wanting to program much is one thing, but not being able to is something else entirely. If your case is really the latter (and that's fine, most people truly cannot program), then your options are rather limited.
Windows admin tops the list. Dont' even consider Unix or Linux because not being able to program or script in Perl or sh or ksh will go a long way toward earning animosity with your co-workers. There's also a lot of opportunities to be a Windows admin.
Network admin would be doable, but only if you are very comfortable with hardware, and are ready to constantly learn the new protocols, security threats, and stay on top of what's the latest, greatest hardware and network software add-ons.
System analyst would also be possible, but the emphasis here is on analytical ability, and if programming isn't your thing, this likely won't be either.
Don't even think about trying to be a DBA. If you don't want to or cannot really program, writing SQL and Stored Procedures aren't going to be a thrilling substitute.
Business Analyst. The emphasis here is business, so pick an industry, get in on the ground-floor and get to know it. Your long-term viability will be based on what and how fast you can learn and how quickly you can put that knowledge to use for others; but, don't make the mistake of trying to turn knowledge into exclusive job security, because what you know someone else can learn too.
Help Desk: It may be the entry-level, but it's also the spring-broad to any other technology, once you figure out what you like, and what you are good at.
Good luck.
Lots of people I know who love working with computers don't really enjoy programming.
But, they can do a bit of programming. And they still understand the system quite well.
They become system admins. They like what they do. They may not always enjoy it, but it's obvious that they're working on what they care about.
Care about electronic freedom? Consider donating to the EFF!
There is a lot of computer jobs out there that doesn't require hacking out a lot of code: System Admin; DBA; work with a GIS package (geographic information system not google image search); You may have picked up more than what you think. So don't dismiss programming unless you just hate to code.
Sic Semper MicroSoft
There are always IT jobs. They suck, which is why they have such high turnover, which is why they're always available, but if you don't mind the work, and don't mind periodically changing employers, IT is a career path.
You could try studying database programming and get an entry-level DBA job. Frankly, SQL is not that hard as programming goes; you don't really construct big "programs", just little snippets of code to grab data from tables. You might find it easier than the programming you studied in college, and it can pay very well once you move up the ranks.
If you have an eye for business, you could try to become a project manager. Again, try to take a certificate class on it and look for an entry level job. Again, pay can be pretty good once you move up the ranks.
You could go into release management: basically the position takes code others have written and preps it for release, usually wrapping it with an installer, etc. You have to learn about how to configure particular installer products. It's technical, but not heavy in programming. It's also a relatively rare specialty, so it can pay very well. On the other hand, it's boring. But you might not care if the rest of your life is fulfilling.
And finally, you might just want to get a programming job and try it. College programming tends to be about "let's throw complicated tasks at the students to make them struggle and see how they cope." Real world programming tends to be a bit more simplistic and repetitive a lot of the time, you might find it easier than you think - especially in an entry-level job. You'd have a few years to get used to the level of programming in an entry-level position before you'd be able to move up to mid-level and get more complex tasks which you may or may not want. And, it wouldn't hurt your ability to transition into IT or QA or something like that later if you like.
How about McDonald's, you lazy bastard.
So, let me make sure that I have this correct. You went and got a BS in Computer Science, but you don't like writing programs?
Offhand... "Ding! Fries are Done! ..."
Don't take life too seriously; it isn't permanent.
You might be interested in being a Product Manager.
Product Managers are the ones who write requirements, work on the roadmap, and decide what will be in the next product.
Product Management (also called Product Line Management, or PLM) is usually part of the marketing department; market analysis is a pretty big part of PLM. After all, if certain features are demanded by your target market, you want them in the roadmap ASAP. If your target market doesn't give a crap about certain features, there's no need to waste engineering resources on them, no matter how cool they sound.
Some technical knowledge is needed for PLM; after all, requirements have to be highly technical by nature, and you need that technical knowledge to be able to effectively write requirements.
I support the Center for Consumer Freedom
I was engineering and computer science, also from a "major" U.S. university. I'd say if you went to a good school (preferably liberal arts), your major doesn't matter that much. I'm in strategy consulting now, very different from what I studied. I still feel that my engineering background helps me every day. Although starting salaries may be slightly lower than engineering, and work is very very busy, career opportunities are good and you'll be catching up to engineers in terms of salary after a couple of years.
This space up for sale.
#24: (unconvincingly) Wow, it's like you were reading my mind.
#21: I am not a mind reader, stranger. You, like so many others, are drawn to this sexy, action-packed lifestyle of the professional henchman.
#24: But I could never be a henchman. I am just a normal guy who is between the age of 18 and 30. A loner who lacks ties to friends and family.
#21: You, stranger, are the perfect candidate for costumed aggression.
Gang Member 1: Yo, fat boy. You get to carry a piece?
#21: But of course. Your standard Grade One henchman in service of the mighty Monarch is issued a dart gun and a grappling cannon to name only a few of the exciting accoutrements that will aid the henchman in his wonderous world of career henching.
Gang Member 2: Hey, what kind of ride we get?
#21: How does an enormous flying cocoon sound to you?
#24: Wow, a flying cocoon. I can already feel my life getting better!
"MIT betrayed all of its basic principles."
IMO, a BS in Computer Science is practically a prerequisite to be a decent sysadmin. As many other posters noted, you don't really give enough information for me to choose your career path. However, if you enjoy that aspect of computing, your CS program will have likely laid a fine foundation for you to become a fine sysadmin someday.
Also, as other posters have noted, people don't generally graduate from CS programs being bad-ass programmers. The goal of the program is to show you how it all adds up. Being a decent programmer comes later, or completely orthogonal to the CS program.
-- Spankmeister General
Without knowing what you DO know well, it's hard to say. Most likely non-programming jobs will be low paying grunt work (tech support, sysadmin, NOC operator) although if you're good with TCP/IP and know router hardware you could get a decent network engineer job. You could luck out and get a managerial job, but without programming skills you'd be limited in who would hire you to supervise tech staff. My question is why someone would get a CS degree if they don't like programming. Can you go back to school and try another major?
Keep in mind that you are not defined by your degree. Many positions that want you to have a degree don't care in the slightest what that degree is in.
With that said, to answer your question directly, have you looked at BI? It involves some programming, but also has large nonprogramming aspects to it.
I had the same feeling when I got out of school as the poster. When the final semester had me writing a compiler it can sort of burn you out. First off, your degree does not dictate your career path. Best advice I ever got was that life will take you in unknown directions. Don't be afraid of it. Embrace it. Find a job you like. Been said by a few posters. I hope you didn't go for a CS degree because you thought you'd make a lot of money. If so, forget about it. To be any good in IT it is a lifestyle choice. Things change so fast in this field if you don't enjoy it, and enjoy learning all the new things, and helping create them you'll burn out. Also just because you don't want to code right now doesn't mean you'll always feel that way. I actually enjoy coding again. Just took some recovery time :)
As for pay, well hard to say really. Depending on the job and area the range can be huge. Be a smart job hunter and look at salary comparison sites (compare the descriptions, not the title), ask around your area (or the area you'll be going to) and look at the cost of living. Don't forget benefits and the whole deal too. A 5-10 minutes away from work in a good neighborhood can be worth it if the alternative is a 30-90 minute commute. Also amount of vacation, health insurance, retirement and other perks. I know when I got out of college I wasn't thinking like that, but you need to.
Really you just need to figure out what you wanna do when you grow up. Hell I bet a lot of people here are still trying to figure that out.
I am one of those non-techincal people who waste large sums of time on Slashdot (a.k.a., one of the idiots). My last "program" was a (poorly written) html homepage.
Yet for a non-technical person, I have a pretty damn good understanding of technology. Our job is to talk to the technical staff, translate technical arguments into English and all without sacrificing accuracy. There are any number of industries where techincal staff are required to interface with a non-technical personnel and where effective communication means the difference between "winning" and "losing." Someone with people and/or writing skills should think creatively about these types of opportunities.
I ended up going to law school. Lawyers with a technical understanding (note: I didn't say techincal skills) are in great demand. Of course, law school is a drastic option, but the principal is equally valid to a number of industries.
Friends of mine with computer science degrees work at the US Patent Office. The Patent Office is frequently searching for people with scientific degrees to fill examiner positions. To my knowledge you must relocate to DC to work for them. I believe the pay is mid $40k to mid $50k. I'm uncertain if there are any postings currently online but I imagine if there were, they'd be at the federal government job site (usajobs.opm.gov). I'll try to find out if there's some kind of referral bonus so my pals will get credit for the hordes of /. applicants so please let me know if you apply!
See the following topics: Database(architect), Network engineer, Security Engineer (risk assessment and the like), software integration, enterprise architecture, business development, innovation/evaluating new technologies, writing requirements, testing, program/project management, middle management. Basically, you really just need to start working for a large company that deals with IT, technology or engineering and then move around to different job functions. After you get hired, your degree doesn't matter much. You might try to get into a leadership development program that will give you a lot of opportunities to keep changing your job description.
Do you want to work with developers?
Having written some code, you could find a passion near development that works better for you. An understanding of what's going on at a low level will help, even if you don't write much code - I certainly don't write much anymore.
A couple things to consider:
Tools management - Everyone needs people to administer things like the source control or build systems used by development. There can be some fascinating problems there. At the low end, this tends to be below development but later be a more senior position than a senior developer.
QA - If you are detail oriented, but good at picking the most important five things from a list of 2000, QA might be a better fit for you than development. People would kill for smart skilled QA people who can write a little code to put together automated scripts.
Sales Engineering - You may need experience elsewhere first, but if you are social you might become a sales engineer. In this role you are usually working with the technical evaluators of some tool and helping them see the value in it with hopes that the recommend purchase to the dude with the checkbook. Most sales guys aren't technical enough to answer the most detailed questions and you can help there as well.
System Administration - You might love computers and working on them, but prefer a bit of scripting and debugging of systems to writing small subsystems of code. A good sys-admin is worth his weight in gold. Might be worth considering.
The real question is: What do you love about computers or software? If there's nothing, you probably got the wrong degree. If there's something there that's fun, you'll have to dig in to what jobs are present around it.
Well, you have gotten some nasty comments. Not all It has to be programming, and I am sure that a lot of the people who wrote comments like "not a programmer in IT is useless." are in fact hobby programmers and never worked as a full time coder.
I do not suggest the manager route, besides becoming a manager with no experience is not really an option, unless it is CS or TS and you want a heart attack pretty early.
My idea was to become network/unix admin, which I was from 94-2000. In the meantime I was programming this and that, and in 2000 I started running a network of sites which landed me in a full time web developer position (not designer, developer).
Go whichever route you want, however always know some programming, and some scripting (unless you are a manager for which you only need arrogance, not caring and a strong elbow to kill off the competition for the next position.
I saw numerous DBAs, unix admins, windows admins, network guys, and a lot of them failed in larger environments for one reason: they did not know any practical programming, nor the had an engineers' mind set. They were unable to process or manage large amount of configs, scripts, data ... etc, because they lacked the skill of writing their own scripts and programs.
On the downsides: an admin job gives you sometimes lazy days, but night calls, on call, afternoon and night shifts ......
A programming job gives you weekends and 9-5, however the "code factory" never stops ... at least not where I work... one project after the other ....
In either way, do not become a manager of coders without coding knowledge .. those bastards (us) will do their private websites and other projects in front of your eyes, and you won't have a clue what they are really working on.
Actually this is the same in any job. IT people have a good chance to get "side jobs" (where I live at least), and sometimes these projects happen at their day jobs.
So this is my 2c, hope it helps ....
nt
If you were good in your accounting/finance classes go this route... http://infotech.aicpa.org/Memberships/Overview+of+The+Certified+Information+Technology+Professional+Credential.htm
Beware of those who profit off the docile and persecute the unbelievers.
The background that you've learned in CS is valuable in a wide variety of positions. You should look at technical sales (also known as sales engineers), marketing (especially for technical/software products), consulting, product management. Presumably you've gained some good technical skills and how to learn complex materials quickly--all important job attributes. You should be better qualified for many of these positions than liberal arts majors.
However, all of these jobs require good communications skills--the ability to write well and communicate clearly. I hope you didn't skip those courses--the liberal arts candidates often have an advantage in those skills.
Depending on the university you went to, your grades and presentation skills, starting salaries could be in $30 to $40's for most of those positions. Another alternative would be to pursue a professional degree like an MBA or JD.
A non programmer who majored in CS? Why?
Do you like computers and their applications to business? MIS degree
Electrical components? electrical engineering degree
computer hardware? computer engineering degree
maybe you like money? law or medicine
an easy piece of paper? anything liberal arts
No offense, but why the hell did you pick CS if you don't enjoy programming? That's kindof like majoring in psychology when you hate dealing with or analyzing people.
Rather than searching for jobs that match your DEGREE, look for jobs that match your SKILLS.In the real world, most jobs don't require a specific degree, but rather a skill set needed to perform job functions. Perhaps it would be useful to take a look at the skills you've picked up over the last few years as you've progressed through your curriculum and outside jobs. Then do some thinking about what fields need these types of skills. If you broaden your horizons, you will find that there are many jobs that you are qualified to perform that are not directly related to "Computer Science".
-- Anyone who has never made a mistake has never tried anything new. -- Albert Einstein
Are you comfortable troubleshooting computers, (re)installing operating systems and applications, setting up networks, unsticking printers, helping to train users for simple tasks, and maybe a bit of webmastering?
A lot of places are looking for people like that -- somebody to be the go-to person for everything computer related. The job title varies, anything from "Network Administrator" to "Technology Coordinator".
Usually the places that want to hire this kind of general-purpose computer geek are smaller outfits, places in the 5-50 employee range, that don't have an entire IT department. The boss or their assistant often gets stuck *trying* to do the computer stuff, isn't qualified, doesn't like it, and would *love* to shove it off on an "expert". (Non-IT people use the word "expert" extremely loosely when they're talking about computer geeks.)
For example, I can tell you with confidence that a lot of public libraries are eager to hire such a person. On the system-administrators-only mailing list related to the library-automation software we use here, anyone who can put together a SELECT statement in SQL to pull six fields out of the database for a report is held in awe, I kid you not. Many libraries despair of ever being able to hire someone like that.
You'll probably end up doing a bit of small-scale programming, in practically *any* IT job, certainly in any systems or network administration job. A simple CGI script here, an overnight backup script there, whatever. You know, glue code. It kind of goes with the territory. If you want to work with computers, doing anything other than data entry, you'll probably need to do a little programming (or at least scripting, if there's a difference) from time to time. Writing three lines of code once can save you from repeating a simple but tedious task every day/week/month for *years*, so it would be kind of foolish to never want to do any programming at all.
But there are a lot of sysadmin/network-admin jobs with not much programming, nothing very difficult, large, or complicated, and certainly nothing you would call application development. You might never EVER have to touch a traditional compiled app-development language (C, C++, etc.).
I've been working in this line of work since 2000, and so far I found myself writing *one* short function in C, one time, some eight or ten lines of code, to adapt a piece of existing open-source software just slightly to meet our needs. One time. I do write glue code in Perl somewhat more often, and web stuff, including a bit of Javascript here and there... but honestly it's such a small part of my job, I literally do more programming at home, for my own personal use. Furthermore, I could get by with doing even less programming at work, if I didn't like doing it.
Cut that out, or I will ship you to Norilsk in a box.
I never knew what happiness was until I started to work in IT... then it was too late!
if( !Stay_off_my_motherfucking_corner() )
beating++;
Do you have any interest in management? You could manage software engineers rather than be one.
Of course, to do that, you might have to spend some time being one first. Would that be OK?
I am in the same boat as you, I recently graduated and work in IT field dealing with hardware, software, networking, tech support, and training. I am currently looking for programming job but nothing too "hardcore." I am pretty good with webprogramming/database management and I prefer that. I would suggest to you something like a QA position, program manager, or program analyst. Good luck finding a new job.
What I'd like to know is how I can get a programming job without having a CS degree. I consider myself a pretty darn good Perl programmer (three years of experience at my current job), and there seem to be plenty of Perl jobs available. However, I just can't seem to make any progress in the job market--lots of recruiters from India calling, but no promising leads. Any ideas?
I could probably get by as a programmer or DBA, but I'd get bored with the same thing day after day. I like Quality Assurance because I do a little programming-type stuff (small apps to help QA or scripting with QuickTest Professional), a little project management stuff, a little database stuff (writing queries on the database, writing stored procs to assist with testing). It's got a nice variety. Range probably starts at $30,000 for entry level, up to $100,000+ for high-end load testing or consultants. Check the indeed.com salary survey for a better range in your area. -Scott
why'd you waste your life doing a degree if you didn't attend any of the classes? surely they can't *all* have been programming classes, or you would have quit or failed your degree.
and didn't your "big" university have career/guidance councelors?
didn't your tutors help you when they saw that you sucked at programming?
The reason girls and Windows users don't understand UNIX is because all the documentation is in Man files.
Draw the Venn diagram of All jobs, and All Programming jobs.
Next.
If you do what you always did, you get what you always got.
Obviously, system administration is a viable alternative as well. Pay is on par with programming salaries, and you may even get to program sometimes.
As someone in in a similar situation to your's (albeit, with about 5 years of sysadmin/db admin experience for smaller companies), I can relate. I'm not entirely fond of coding, particularly in the languages which people are hiring for (.NET and Java with a preponderance of those both being focused towards "Web 2.0").
Part of the problem is that you're going to be competing for non-collegate level "computer people" for most non-programming jobs you'll be realistically looking for, as they'll be "1-2 years computer tech experience required" or similar.
Realistically, you've only got a handful of options:
Call center work (such as for a bank), which anyone can do if they can talk on the phone and are willing to do tedious, repetitive work.
GeekSquad or similar "computer shop" work. It's what you've got experience doing.
Apply for a large hosting company, like Rackspace, for an entry level position and, while continually improving your skills in a manner targeted for higher-level jobs, seek said jobs. Should take a couple years to get past the "stare at the blinky lights and report failures" stage.
Luck out/search for half a year or so and find a small company which will employ you as their "computer guy". I'd figure about 10-20 full-time computer users, or 10 full-time "professional" computer users (CAD, publishing, animation, etc.) would be a realistic expectation for company size.
Go back to school and get a management degree.
Find a very small, remote-area hospital with an "IT Manager", "IT Coordinator" or similar position opening, and apply. If you can stand living in the county seat of a county with only a couple thousand people, this would be the route to get a large amount of "experience" quickly, allowing you to get better jobs in the more populated areas, but it's going to suck huge monkey balls and not pay all that well (for IT - it'll probably be a good two+ times as much as the area pay average) while you're at it.
Unfortunately, it seems that there's little advancement opportunity (or even employment opportunity) in IT for CS/IT majors unless you're a programmer or go back to school to get a management degree. Most network/system administrator jobs seem to want 5+ years experience in a similar environment (completely ignoring the fact that similar skills and abilities can be learned outside of such fringe markets, and that general skillset and approach to admin work is more important than the specific technologies a person can pick up in a month or three). Add to the fact that there are very few organizations big enough to have a "tiered" sysadmin structure (jr admin, sr. admin, etc.) on a whole, and your options decrease even further...
Side note: just a BS in CS and desktop support will not technically qualify you to be a competent sysadmin. Only a small subset of sysadmin skills are taught or easily obtained through the rigorous pursuit of a CS degree, from what I've seen.
It is astounding how many people call themselves as such and yet do not have a basic understanding of the kind of work a sysadmin does, instead seemingly taking cues for what to do from the BOFH. DO NOT DO THAT. Well-performed sysadmin work is every bit as technically rigorous as (say) programming, requiring hundreds of hours each of research, regression testing, debugging/error tracing, planning, programming/automation and extensive documentation.
And if you're the sole tech guy, count on several hundred hours a year of tech support and crawling on your belly pulling/pushing cables and components, too.
Too many people (both inside and outside the field) assume computing "administrators" just have to make sure everything is up to proper patch levels and that the backup is set properly, having no idea how complex and time consuming a proper, rigorous sysadmin role is.
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
If the computer industry ever intends to routinely get software that doesn't suck right out of the box without figuring out how to clone Linus Torvalds, it had better start taking defect prevention and detection seriously
Hey, I like that idea. Maybe the guys who're working on the hybrid human-pig embryo could help with the cloning.
== Jez ==
Do you miss Firefox? Try Pale Moon.
You went and got a BS in Computer Science, but don't know or care to write software. I want to know school you went to so we never hire anyone from there.
-----
Lady in plane:
What car company did you say you work for?
Jack:
A major one.
I am a CS Major about to finish my degree. I'm an instructional design intern at a community college. Basically a Instructional Designer helps faculty design online content (WEBCT courses). I occasionally design templates and courses myself. We also help faculty adjust to applications.. ie Photoshop, Frontpage, Powerpoint etc. It's not a bad job.. I prefer programming, but if I didn't this is where I'd probably be. The pay is good, the people are nice. As long as you have some patience (sometimes this job can be more or less a help desk job...) you might want to look into it.
Become a consultant.
I joined two users too late.
A lot of consulting firms want people with a technical background, but will not have you doing much actual technical work---primarily you'll be using some familiarity with the field and ability to research it to fill in stuff for powerpoint presentations.
If you're willing to go on for other degrees, having a technical background is quite interesting to, for example, law schools.
10 PRINT CHR$(205.5+RND(1)); : GOTO 10
Actually, a computer science degree can get you in the door at many start ups and small companies as the only "admin." This really means IT, but it looks better on the resume. You will also be treated as the authority on everything computers. You can probably command a decent salary that way as well. Probably the best bet for starting out. It also easily translates into a management position as "admin" sounds like "leader" or "responsible guy."
If you are able to do a lot of abstraction and to adjust yourself to the semantics of that particular business, you just need to pick up the money from the pavement, because your competition usually consists of accenture material and generally lacks of common sense and pragmatism which is stuff that your BS should have taught you.
Exactly (and by the way, that's not an ad--those courses are free and they're useful. I did them just to learn to trade for myself, and its paid off nicely). We have the critical thinking skills, math skills, and logic skills ... but IT is not where the big bucks are. Oh yes, you can make a nice living, but as you said, there's much more to be made applying our skills to other aspects of business, and one key rule of thumb is this:
The closer you are to the money, the more you make. IT is often rather distant from the money (less so if you develop or work on the trading desk, but still further away than a trader, accountant, or CEO).
The Future of Human Evolution: Autonomy
become a professor
Dude, can't you read? He said he can't program. No programs. No automated scripts. Nada. Cinch. His clear-cut career path is becoming PHB.
So I eventually got a MS in System's Engineering, because I kept getting hired for systems engineering jobs and I wanted to find out what the heck it was. Basically, it's a lot like a "lite" version of what you learned in software engineering classes. You can fetch pretty decent salaries just sitting around doing project management-type things, such as writing white papers, keeping track of processes, and traveling the world going to various kinds of conferences and training. And lots of talking to people to keep things chill. So if this appeals to you (it doesn't to me, but at least I'm free to occasionally hang out in the trenches with the technology and the people who do the deep interesting work once in a while), this might be your ticket. If you're consistent with solving people's problems by doing things the smart/lazy way as opposed to furiously turning the crank, maybe you'll get bumped up to "Systems Architect" and get into even more abstract drawings of boxes that vaguely resemble UML diagrams.
I know plenty of solid network engineers who can't cut code. System admins/engineers tend to do some basic coding (shell, perl, etc) which is pretty easy compared to serious software engineering.
I actually studied programming and came away with a CompSci degree and realised I wasn't a programmer at heart (although I got good marks at university). It took me awhile to find my calling but there's far more to IT than programming. If you're willing to learn and be flexible, you'll find a job you gravitate towards.
Shame your degree sounded rather wasted though. :( At least I got a lot of fundamentals out of mine.
I once did some QA for a little while when I had just joined a company and they didn't had a project for me immediately.
Good thing it didn't last long:
I think i was even starting to develop an evil laughter ...
I'm not sure when programmers were placed on such high pedestals around here. While the programming and project management that has happened with the rise to prominence of Linux/Open Source software is glamorous, the vast majority of programming jobs are not glamorous. A lot of them suck hard - especially if caught up in a project that is 100% in-house software development. Long hours, crunches, endless bug fixing, unrealistic schedules, changing requirements...
Yeah, I like programming.... for my own purposes/projects. Most of the programming jobs I see out there though are jobs I don't want any more than I want front-line/help-desk position. Now... design positions or architect positions, where you actually get to play with putting technologies together in new ways or designing new solutions - very cool - and something I get to do a fair bit of within my industry IT job. But just slinging code at the behest of a schedule and requirements document - I'll pass.
I am not very skilled with programming.
That has never stopped a CS grad from seeking a programming job.
If you can't do it, teach it.
Would you like fries with that?
"You'll get nothing, and you'll like it!"
Programming is a special form of problem solving. It's the ability to take a problem, break it down into its component pieces, sequence it, and implement it in a variety of different languages. All of the steps, except for the implementation in the target language are the same. This is an essential part of understanding computers and programming, and if you don't understand or can't follow through on the process you're in a field where you are poorly prepared.
You wouldn't, after all, have a Structural Engineering degree, and then be telling us that you're really not much good at designing bridges and wanted to know what other work you could get in the field related to your degree now would you?
Or a C.P.A. who doesn't work well with numbers.
"It's the height of ridiculousness to say for those 9 lines you get hundreds of millions."
With the amount of math and science you've taken, you could probably easily qualify for a teaching job through teach for America and the like, and they don't care that you haven't taken any education courses and don't have a master. Pay's not great, but most of the fellowships pay for your masters.
open source modern art: laser taggi
Besides, PJ and NYCL could use some help and I'd appreciate knowing there was one more person out there to help in the war against the RIAA^H^H^H^H^H^H^HStupidity.
Do not mock my vision of impractical footwear
This isn't a direct response, but one of the biggest things in java right now is continuous testing. The tools make it extremely easy to 1) write unit tests, 2) run said unit tests as part of your build process, and 3) verify your unit tests have good code coverage.
It's not a silver bullet -- far from it -- but if you're diligent it's a very good way to catch unexpected changes in behavior very quickly. Definitely before anyone starts to depend on the broken behavior. That, by itself, goes a loooong way. We still had to work with testers for the functional testing, but we were able to focus on adding missing functionality instead of things just not working right.
For every complex problem there is an answer that is clear, simple, and wrong. -- H L Mencken
I started working for an IT contractor (for the gov't) almost 6 years ago at age 25. I only had an associate's degree in systems engineering. I got the only position on the contract that didn't require a BS degree. I was told by my project manager to go back to school. After a year with my company I went back to school and they paid for it. I finished a BS in CS but I continued my job as a Systems Engineer. My title officially changed about a year before graduating. I continue to do the same work but I do no development work at all. I do requirements analysis, design, test, and deployment at a system level. The CS degree was fun (I like programming) but I don't have any professional experience with programming. I've stuck to doing the engineering. When I eventually go back for my Master's it will be in CS. Point being, just because you have a CS degree doesn't mean you have to be in development and if you can get a job with a gov't contractor I think you'll get great experience. I know I have. I got 6 years under my belt now and a BS degree. And if I stick with my company for at least another 6 months I don't owe anything for tuition (even books were paid for). No school loans. It's great.
this nation, under God, shall have a new birth of freedom. -- Lincoln, Gettysburg Address
Less stress, more fun, you do good, and you tend to have a life except around grant renewal time.
Plus, you get to save hundreds of thousands of people.
Pay? Not as much as the CS side, but you tend to work around university crowds, so there's not so much of a social push to spend, so you end up with great retirement plans if you keep living like a grad student, plus you can work on your doctorate and attend seminars for free.
-- Tigger warning: This post may contain tiggers! --
While I was very good at programming, I didn't want to develop crap business applications all day as I didn't want to go insane, so I moved into Analysis. Specifically, I do User Experience Analysis, but a lot of CompSci people move into Business Analysis, Requirements Analysis, Process Analysis and so on.
You could try for a small to medium sized ISP tech support.
I did that with only 1 year of CS under my belt and though I had no clue what I was getting into I quickly ramped up and learned TONS about networking. I never knew networking would be so fun, but when you get network admins with 6 or 7 certs on their e-mail signature calling you up, and you explain to them how the internet works, it can really make you feel good.
Plus the potential to move around is incredible. One buddy (unfortunately) moved into our service engineering operations division where they ran the datacenters and fixed all the windows servers (lol). Another buddy moved into the VOIP division and was implementing brand new unheard of features and turning up 200+ clients a project. Still another moved into the security department and began exploring the worlds of VPNS and Firewalls.
All good stuff... but you won't really get that from a larger ISP because they're usually really slow to move and pretty set in their ways.
You're nothing; like me.
1) Programming isn't the only thing CS majors do. Go talk to your academic advisor and alma mater career center about options and career paths. ... but, you'll do better following what you are passionate about.
2) Figuring out a company culture is more important than how much they pay you. If you hate where you work because you don't "click", they won't be able to pay you (with reason) to stay.
3) Forget the degree, what's your passion? Just because you graduate with a degree does not mean you have to follow it for a career path. Granted, you are better prepared by following it
You are the failure we all feared. We could see this day coming, sneaking in, but what could we do? What could we possibly communicate to one that is not horrified by what you wrote?
You are the lifeguard that can't swim. Your very existence is a testament to a system both too young and too rotten already.
I don't blame you. But its bad.
I figured out about 2.5 years in that I couldn't code to save my life. Now I can tell you when to use a binary tree or a linked list, etc., but it'd take me forever to code one up.
I switched to the mathematics program and enjoyed it immensely. The only problem now is that I don't have a degree in something that people acknowledge as being "technical".
And then, of course, I get the brush-off because I don't have This Month's Must-Have Certification, even though I have the experience from previous jobs.
I'd be more than happy to do something related to math/stats rather than IT, but then I have zero experience in those jobs, so I can't get my foot in the door.
So with you...I'd say that you probably aren't going to be able to get much in the way of non-programming except the IT stuff that people are mentioning here. If you have the wherewithal, you may want to look at a master's degree in Physics, Applied Math, or something along those lines.
Sounds like you're a perfect Management candidate. Educated on paper, but ignorant in practice.
Stop thinking so literally.
View the world as a liberal arts student. What CS skills can you translate into other arenas? What did you do in college that you can apply to business? What did you learn in those classes that you didn't realize you were learning?
Programming requires logic, problem solving, planning, time management, project management, teamwork, vision and a slew of other things.
I have a medieval history degree and a good job in healthcare. College taught me critical thinking, research, and communication skills. Graduating proved that I had dealt with deadlines, completed assignments, could work under pressure and had the persistence to finish. These are all very marketable skills.
It's all a matter of spin. "I can program in C++ but I'm not very good at it" or "In my work, I look for logical patterns and determine possible outcomes to work towards the most productive solutions."
You're only stuck in a CS/programming career if you tell yourself you are....
If you graduated from a private college, have a good average and decent math skills you could land a job at a trading desk.
when you outsource your class assignments to India.
What Would the Fab Five Do?
Every time I hear the words "sales engineer" a little piece of my soul dies. Sorry, but selling tech does not make you an engineer. Don't encourage bad diction, please.
On a related note: what do you do after almost 30 years of programming? I started in 1980 with an MS-CS. Since then I've done almost nothing but write code. No serious forays into management. A year of teaching college, a year or so of Software QA (both near the front-end of this career).
Now I'm starting to tire of it. I'm not the only one; I have a friend with about 25 years in the biz, all coding, and he's already dropped out.
Why don't you pursue a career in network engineering or administration? I'm doing that right now and sort of wishing i knew a little more programming language. I'm going back to school full time in the fall for the BS in CS. Sounds like you should get yourself into a position as a Junior Network technician somewhere, i'm sure they will take fresh meat anyday :) Of course it's a tad more physical than strict programming.
There's also the server side of things. Maybe as a server technician? or a Server Administrator (systems admin type job). It honestly depends on what you are good at and where you think your talents lie.
"In the kingdom where everything dies, the sky is mortal."
First off, I don't mean being a packet logger/analyst for RIAAAA!
Seriously speaking: your local or national police services are always looking for people who can gather information from a hard drive / break crypto / extract contact lists and e-mails / steganographic analysis / plant bugs; you name it. It may not seem like the most glamourous work sometimes but I will guarantee you you'll never have the same day twice.... and you'll get the satisfaction that you're actually helping to make a positive difference.
If you're a Canadian, the RCMP are always looking for people in such positions. Here's a link for their job postings:
http://www.rcmp.ca/recruiting-recrutement/other-autre/opportunities-opportunites-eng.htm
I bet the FBI, NSA, etc are all looking too. I understand the US also has a "Cyber-Command" now... but you probably have to be a soldier first, I think. Anyway -- Good luck on your job hunt, non-programming CS major!
As someone who just graduated, I find your situation perplexing but not surprising. This sentiment is very common in my opinion of people, such as ourselves, who have just graduated with a CS degree. I personally sat in on an Industrial Advisory Board and Computer Science Curriculum Meeting at my University and heard many of my classmates voice the same concern. I think, like many that have replied today, that CS doesn't necessarily translate into 'programming' but into computational and systematic problem solving. Your degree should not limit you to programming, but offer you a wide range of job opportunities where these principles can be used. You could become a professional in any field and utilize what you have learned; besides, a degree doesn't say too much other than you probably know something about a subject and you endured 4 years of school. But this is just my opinion, what do I know; I just graduated. -Just another programmer
Before I went back to school I was working developing high level application mostly forms/ databases. I was designing but I just always ended up more useful developing.
I went back to school and have a computer arts degree where I learned mostly about animation and design.
After I went back to work, a year and a half into it I'm back making high level web apps.
My concern is that because I don't have a CS degree, am I screwed when I leave this place looking for a programming job?
I'm reading Code Complete and sucking up as much info as I can but I feel like I might be screwed w/o the CS degree.
I love developing, but I'm no computer scientist.
Do QA. It pays just as well as a developer. If you like to do a little programming on the side, but not a full time career in it - do what I do, ask for some automation related projects (as in automating test cases). Keeps things interesting minus a lot of stress. If you don't want to do any programming at all, well just be warned that repetitive manual testing gets very boring very fast.
After working in the computer field as a repair technician, closer to 40 years than 30, I can have relate to this individual. I got into this business after a 4 year stint in the USAF rebuilding airborne electronic systems on F105 after being shot to pieces over the unfriendly skies of North Viet Nam. The main reason at the time was I was deathly afraid of the High Voltage generated by this equipment. Also this was a relatively new field and fancy degrees were not needed. Just a desire to learn and alot of hands on experience. I was self taught and was considered a highly skilled repair tech. After a successful career with various computer companies and Fortune 100 companies, I retired and run my own one man business repairing PCs. You have to do something that you enjoy and have to be truthful with yourself in that respect.
I think the poster needs to really assess what type of career he's looking for. As a comp sci major, if he hasn't delved deeply into programming (beyond class work) and isn't into the other computer science focus areas (hardware, graphical design, etc), I'd worry about whether this was truly the right field. Unless he has real financial needs (babies, dying parents that need support), he needs to recognize that setting a course that fits his interests is far more important than finding a job area that pays well.
I code for a living and as hobby.
But, when I do it as hobby it's either for vintage micros or its open source development.
That keeps it separate enough for me.
I don't know where all this talk of CS is not about programming comes from.
Everything I learned in computer science was theory related to the design of computer software. Algorithm analysis, compiler theory, data structures, programming techniques like backtracking and recursion, operating systems, networking, etc.
Just about all of it is of no use unless you actually intend to design/architect/write computer programs, or teach/manage folks who do.
This kind of stuff wouldn't hurt you if you want to be a sysadmin, and it might make you a better one. But in my opinion, it's way overkill since you can probably pick up scripting as you go.
For sysadmin or management you're probably better off getting an BA in business or an MBA with a focus on Information Systems.
I went through the CS program at the local university. It was in my senior year in college, after pulling all nighters for an Operating Systems class (mind you that I pulled in an A- on a Masters level class), that I could not deal with programming any longer... So, 10 years later (14 with the job I was working at the time) of experience.. I have gone into business for myself and make over $15k a month doing IT work.. What have I learned. A degree will get you a look, but your talk and experience will get you a job. If you want corporate, the degree will get you in for an interview, but you better have something backing you up. I am looking for employees and I cannot tell you how many certificate wielding/MBA people are SO clueless to the IT world. Final words... a degree will get you a drink, experience will get you to the sack...
In my experience, only about 25% of CS majors actually enjoy the raw problem solving involved in a true CS related career (read - technical coding and design). Working in firmware, most of the folks I work with solve problems that require tight, fast, and efficient code that often requires practical application of theory. However, a lot of the people I work with are dead weight. I don't mean to sound arrogant, but that's the truth. They're CS by training, but they don't get the same tiny little adrenaline rush by fixing some bug or speeding up some algorithm by a significant percentage. Those folks would rather be in management roll (which often requires technical knowledge and 'people skills') or in a higher level design roll, which often requires quite a bit of the in-the-trenches experience. My advice to you? After reading your short paragraph, you sound like someone who should also have a degree in management. Combine a CS degree with an MS degree and you could lead teams using both the higher level technical skills you learned as a CS major (some love of the maths must have driven you in to this field, right??) and using the MS degree you could take a broader management approach and pull the two together and have a really promising career that doesn't involve a lot or programming. Me personally? Give me a problem and a hardware set, and if I can't write a proof that the problem can't be efficiently solved on said hardware, then I'll deliver a solution that works. CS to the core. W00T! Good luck, anonymous reader, because by asking the question you have you've probably already advanced your potential more than most who find themselves in your shoes and refuse to admit that they may have not chosen wisely according to their own personal desires.
"False hope is why we'll never run out of natural resources!" - Lewis Black
I'm sorry, but CS isn't programming. You might use topics from CS in order to program well, but being a "good programmer" does not, in my eyes, make you good at computer science. Maybe I'm up on a high horse or something, but CS is about theory (making it applied math, for the most part). Everything else is either software engineering or system administration. You don't need a CS degree to run an IT help desk: That's something you could pick up the skills for on-the-job. You can start working on developing a working knowledge of a particular language in a short time period (actually understanding the ins and outs will take time, but probably more time than you could have spent getting your "CS" degree in the first place). If you understand what's going at a very abstract level, it's easy to write good code, regardless of the language. It also means you probably have great analytical skills (which make you great for all kinds of work, like quant. funds). If you only can crank out half-baked code, you might not appreciate the theory behind it all. Maybe I'm biased because my CS degree's from a place whose CS majors end up going to grad school, work for a hedge fund, or go work for Google, but it's at least shown me that CS != Programming
Seriously, teaching is interesting, as you learn twice. And get a Ph.d. From someone who's in this area for 20+ years and still don't know to program decently.
Why don't you ask Steve 'Ball'mer ??
Get a job in marketing.
Homonyms are fun!
You're driving your car, but they're riding their bikes there.
Make more money than CS grads. Do something you're good at and you enjoy.
... Most importantly you'll understand the issues programmers have, which most management is clueless of.
The combination of CS degree and MBA will put you on the "pointy hair boss" management track, and you can still have interactions with programmers, understand what they are talking about, and be a good worker cog in the machine.
- Tjp
I am in wallow with my inner money grubbing capitalistic pig. ... Oink!
You might want to consider a career in one of the intersection fields between IT and business such as Enterprise Architecture. EAs don't program typically, but a good fundamental knowledge of IT is highly valued. EAs need to understand both their company's business and the supporting technologies equally. Most EAs I know make 6 figures. Good first steps include reading an EA book, practicing modeling using something like IBM's System Architect, and understanding some of the leading EA frameworks.
The Science of Algorithms. Expression, and analysis.
As far as I know, it doesn't have much to do with coding. And it sure doesn't have much to do with computer hardware. In fact, about the only "real" computer sciences job out there is teaching. Or, coming up with new algorithms.
Sometimes, you get to make a breakthrough; a single such breakthrough can make your career -- p-v semaphores and quicksort would be exemplars.
Which makes a "Computer Science" degree about as practically useful as a fine arts degree. Which, in turn, is why schools are tending to concentrate on teaching practical programming skills.
Now, you have indicated that you don't want to go into the programming end; which leaves the purer expression of Computer Science. Go for an advanced degree.
Just another "Cubible(sic) Joe" 2 17 3061
That won't require any programming skills!!
I currently work as a internationalization advisor. I make sure software complies with linguistic, cultural and even political standards required to be marketed in each country. Companies hire me when they say: "We want to sell our software in [insert list of countries here]; what should we do to ensure a smooth translation and localisation process?"
Then I have to explain about how the date format varies from country to country and how the week starts in different days, about national characters and codepages, about writing right-to-left, and even about things like "if you have a drop-down list of countries and Taiwan is there, you cannot use the label 'Select country' for that list if you are selling to China".
It's a fascinating experience, and thanks to this job I have had the opportunity of meeting people from everywhere around the world and working in very nice international teams (I remember my first task abroad: it was a team of people from 27 countries!)
Despite what it may seem, no lots-of-languages knowledge is required; for me, only English (I'm native Catalan/Spanish speaker) and then some clues and basic knowledge about how a language is built and which special needs it has for localisation (i.e. Arabic is written right-to-left, Japanese has three alphabets, Russian has declination cases, etc). Also, no advanced programming skills are necessary; just a very basic knowledge of the most common languages (for example, I do not know Java or JSP but I know what "i18n taglib" means, and I can recommend it to the customer).
A fascinating work, believe me. I quit programming ten years ago because of this job, and I do not regret (of course I still do some programming for fun!)
Strength, balance, courage and reason. If you know what's this about, contact me!
All big organisations deploying new systems need people to train their users. This would ideally be someone who can read technical documentation and understand how the system works.
I was at one point involved in writing a report on the deployment of a incident report system for the police, and was very surprised by how the users complained about how impractical the system was simply because they were doing it the wrong way. The reason for all this dissatisfaction was that they hadn't received the necessary training to successfully use the new system.
Put simply, all the effort you put into developing a great system is wasted if the users are not trained. You can see how important this job can be, and I'm sure there are organisations that see the value of this and pay people who can do this job what they deserve.
The interactive way to Go -- http://www.playgo.to/iwtg/en/
Here are some positions I know of... from my classmates who didn't enjoy programming: 1) Teaching 2) Sales 3) Call Centre support 5) Recruitment Agent 6) Priest/Clergy :D
What does it mean if you're both? I am, working at a small to medium sized company, I do the network admin but also write apps for different in-house departments and maintain another app that our clients use.
I enjoy coding more than any other part of my job, and I used to code just for fun before (from about when I was 12-13 up until I did my CS degree), but I'd say the sysadmin stuff involves a lot more pressure because you are in charge of making sure that everything is running smoothly, and it's your ass on the line if the VPN/email/whatever goes down. A smart sysadmin will identify areas that can be improved and act upon them. I have a few things I'd like to improve but I often don't make time for them, or I just don't want to break what we already have in place. Mostly because our network is used by our US office as well as our UK office, so I can't really do any serious maintenance until midnight if I don't want to disrupt everyone :/ I wish they'd sort out their filing so that the different offices didn't need to use the same set of files..
which is totally what she said
From the sound of it, you can probably be hired on to teach CS at your alma mater.
What are you people smocking? which sysadmin/dba does not have to code? wtf?!?! my ~/src dir is close to 20mb full of C, python, bash shell scripts and SQL queries! and though i will admit of being quite high while coding some of that stuff, i do take full responsibility for creating most of that Frank-N-Furter code.
how the heck are you gonna just ofload/automate your work if you do not code?
All H{e,ai}ll from the Scary Devil Monastery,
A Brother in A[rl]ms
----
I need people who know their way around computers.
People who aren't afraid to break and fix things.
People who are intelligent, good problem solvers, and are good at writing.
If this describes you, go here: http://geminisecurity.com/company/careers
Check out our infosecurity industry blog: http://securitymusings.com/
Become an expert on High Performance Computing/Clustering (HPC).
1) Learn about high bandwidth/low latency networking
2) Learn about fabric networking (infiniband, quadrics, myrinet)
3) Learn about cluster parallel file systems
4) Learn about cluster deployment
5) Learn about cluster verification and validation
6) Learn about cluster administration and maintenance
I currently don't have a degree, and have worked for a major international company for 9 years, the last 5 in clustering technologies. I currently make over $70K a year.
In some fields, it seems that scientists grossly under-use computers. I've seen megabytes of experimental data painfully being loaded into Excel to produce mediocre-looking graphs and generate trivial post-analysis.
With basic knowledge in some multi-purpose languages (be it Matlab, Python, Octave, or even basic scripting in Bash), it's simply amazing to see what can be done. I've seen 10-year backlogs of never-opened data files processed in an afternoon, with the results plotted on a few well-thougth graphs.
Ok I admit this is in fact a programming job, but you'll probably find it much easier, interesting and fun compared to your standard business/web programming gig. There's a dire need for people with basic computing skills in probably every science lab, though you probably won't make a fortune because this need is not widely recognized.
I disagree that a MIS degree is equivalent to a CS degree for folks who do not like to program. CS (at least at my University) was a MUCH more intense and detailed program while the MIS program was far too business related for the average geek. When I was in school, I was fairly competent at programming, but knew it wasn't something I really wanted to do for a profession. I'd expected that I would land a job some place doing sysadmin type work, but luckily found my way into networking roles. (Routers, not "windows networking".) It can definitely be a rewarding field and the pay can be more than adequate depending on where you go, what you do and how good you get at it...
There are lots of school districts in the US in need of teachers technology, math and science most especially. Certification is required, but there are countless districts with chronic shortages in these areas so you will likely get hired immediately. I have taught CS for 3 years now. You get to revisit that magical time when you first learned how to code. Maybe you'll remember why you liked it in the first place. Oh, and 3 months off in the summer to do whatever you really like to do that is not "work".
it would be more correct to say that programing is based on CS and CS is a branch of mathematics.
Electrical engineering and physics and technology is only needed to make computers, not to program or invent algorithms. Computers don't even have to be "electric".
Most algorithm studies I have done were done on an abstract computer anyway. Mathematicians are amazingly good at creating abstract tools and techniques needed to prove that something will work. Concrete technological realization of their ideas is not of their concern really.
As the island of our knowledge grows, so does the shore of our ignorance.
Before I got my first job in IT I worked in retail. I hated it. But I got experience in dealing with different kinds of people.
Coder's Stone: The programming language quick ref for iPad
Honestly I can't believe that a "major" American University would grant you a CS degree without being able to program. Yes sure CS is more than just programming but let's face it programming is a major part of it. How do you manage not being able to program and still get through all the course work? Please be so kind and let me know which university you've graduated from so I don't make the mistake and let my kid's enroll in that school.
The belief that you have to have the skills of the people you manage is a misguided one. It is enough to simply understand those skills.
In my experience, some successful managers really do have the skills of the people they manage, even to the point of obvious mastery. Other successful managers barely understand what their underlings do. The key to success is to know which kind of manager you are.
In particular, if you correctly believe that you're the shit, so to speak, then you can make the decisions and success will ensue. If you correctly understand that you don't know shit, and you therefore delegate decisions to your trusted underlings, success will ensue. If neither of these two cases holds and you make the decisions, failure is pretty much assured. (This latter is the usual mode.)
"Not an actor, but he plays one on TV."
No one "knows how to program" when they graduate. Go get a job with IBM, HP, Sun, Novell or one of the other larger world-wide companies. They actively seek out new graduates. They fully understand that these graduates don't have a clue about writing proper code. They hire them as an investment. Both sides win. The new graduate gets a real education, with a reasonable ramp-up (in terms of months to years), and the company gets some employee loyalty (hopefully). I've been in the industry for 20 years. After 20 years, I know something about writing software. In retrospect, I knew NOTHING about writing software when I graduated.
...and what *do* you like to do? You must've gotten into CS for some reason, right? What was it that attracted you? Which classes did you like/were you good at?
Downmodding is the refuge of the weak. Don't downmod, make a better argument!
I see a lot crap in the replies and a few good things. What I don't see bothers me though. You have a degree in computer science, that means you are a scientist or well on your way to being one. It doesn't matter that you aren't a natural coder, or a specialist in any specific field. You have proven you can grasp the basic concepts of a variety of disciplines. Take off the blinders and realize that coding is a small part of the Computer World. Think about a problem, any problem, and solve it. The world is short on problem solvers and heavy with nulls and problem makers. With skills in CS, just about any door will open to you if u have an interest. My suggestion...find a job where you feel that what you do helps people, if you think you are making the world a better place, money stays a tool instead of becomming a religion
I find depressingly little time to code. I love coding, but coding ends up being just a tiny, tiny part of research (trying out proofs of concept). The vast majority of my time is working through the math or reading or writing papers.
Mind you if you're not very good at coding, maybe you also wouldn't be very good at coming up with the theory behind the coding.
I hate to say it but this can be achieved without the $40,000 in school loans to pay back.
I worked a few customer support jobs for a few high profile companies and then posted my resume up on Monster. I received a call from the head of the IT department of one of the largest businesses in Iowa, and he asked if I would be willing to accept a job as the junior IT administrator, directly answerable to him and only him, for $65k a year plus benefits, and relocation costs.
I turned him down after coming down from my initial pants-shitting, because I realized I would be living so far from civilization I would hate my life.
I'm by no means a freak case however. Nearly all of my friends in the IT field have very little schooling, but can demonstrate their knowledge in an interview and have the "I want to learn it all" attitude that is so desperately needed.
You're nothing; like me.
I work for a boutique investment bank, and the level of modeling done in excel here would shock you in its complexity and functionality. Most of our hires have a CS background because the analytical thinking, understanding of best practices (versioning, programming for expandability, etc), and understanding of modualization, etc, carry through very well. An understanding of finance and accounting is really secondary. Plus, it pays better and make for a better pickup line (Hey, Baby, I'm a computer programmer?).
There is always software sales, if you can deal with the frat boys in the sales department. Our company (and many others) also has a "Professional Services" group that handles complex customer configurations - basically an in-house consulting group. They are tasked with gathering customer requirements, designing configurations, some light programming and debugging, and general customer hand-holding at a high level.
I suspect that what you really should have done is changed your major when you discovered that CS was not ideal for you - perhaps a double major in something you actually liked.