views:

926

answers:

20

I'm 30 years old, a programmer in DC, and I do not have a degree. I currently am taking community college classes, but I am bored out of my mind. I am actually thinking of switching to physics or some other field other than CS just to keep interested. I know Joel has mentioned several times that he would only hire someone who maintained a3.5 in a school. So what do recommend?

A: 

I think that depends a lot on the places you want to work. Where I currently work, it would be a major obstacle to getting hired. A degree in anything will get you in a lot of doors, after which your experience and knowledge can speak to your qualifications for a programming job.

Joe Skora
A: 

Once you have commercial experience, a degree isn't so important at all. I would recommend you do education only if it interests you at this point in your life.

MidnightGun
+2  A: 

If you don't have trouble finding employment that makes you happy in your current position, then no, you don't need to back to school.

In your case though, it sounds like you'd be happier doing something else. If you are losing interest in programming, then yeah, you'd probably be better off pursuing physics. And in that case, you can leverage your programming background into a future job, there is certainly a need for physicists who can also code.

swilliams
I think he meant that he is bored by the classes (probably trivial stuff), not by his job.
ΤΖΩΤΖΙΟΥ
Ah, you are correct, I misread that part. The advice applies in general though :)
swilliams
+1  A: 

Only if you are going to get some personal satisfaction out of it. If you are bored, you need to pick different classes, a different instructor or a different school. See if you can test out for credits. There is no reason you should be sitting through remedial work if you already know it.

Cade Roux
A: 

Don't send your resume to Joel? ;)

In all honesty, if you're lack of formal education is holding you back from getting a job then by all means go a head, but Im having a hard time seeing how a physics degree would help you besides giving you a grade average.

There's great many things to learn in higher studies but if you got some solid experience actually shipping software a firm grasp of current technologies and a desire to constantly grow I have a hard time thinking that it should really be a hindrance.

Torbjörn Gyllebring
A: 

a friend of mine got 15K more when he earned his doctorate degree. A degree will give you a lift.

MarlonRibunal
You forgot the opportunity costs. Getting a PhD takes 5 years during which most people take a ~$50k/year paycut.
Jose M Vidal
A: 

If you're employed and you know what you're doing and you're doing a great job at it then I don't see a reason why to go back to get a degree. Given there might be some companies that won't hire, whether you have experience, just because you don't have a degree. Those types of companies sound like the kind of place I would not want to work in. Real-world experience is a precious commodity and tool. I recommend that if you feel like you need it to accomplish some missing piece of your goals or dreams, then by all means do it.

Zee JollyRoger
+6  A: 

I managed to work my way up to a senior level position without a degree, but I live and breath code, it took just one company willing to take the risk and hire me to get my foot in the door and my resume started.

It depends on the person, if you have an impressive resume, that's more than equivalent to education in my book.

Additionally, from what I've seen from recent CS graduates, current CS courses do little to prepare someone for real work.

Companies that refuse to hire people without degree's are pretentious, and would probably be a horrible workplace. My current manager likes to say that "He's hired people without a highschool degree and fired MIT graduates, so know your sh*t and you'll do fine".

FlySwat
Respectfully, MIT doesn't know shit ;PJoking of course; they know scheme :)Seriously though, good CS courses don't exist to teach .NET or specific technologies, they exist to prove an ability and desire to learn. Good CS majors pick up the technologies incidentally while pursuing other projects
Alex Gartrell
+20  A: 

It depends what your goals are...

As far as knowledge:

Having a degree won't give you much practical experience, but it will refine your way of thinking, and open up more specialized and theoretical knowledge which can and will help you.

There are 3 categories of knowledge:

  1. What you know
  2. What you know you don't know
  3. What you don't know you don't know.

A degree will help reduce category #3 tremendously putting those items into category #1 and #2.

Having a degree also refines and disciplines your thought process.

As far as pay:

It will definitely help you get a higher paying job. If you already have a really good job that pays well, then I wouldn't worry much about the benefits here.

To be clear, I think that most companies won't pay you more because of the degree, but you'll have a higher chance of getting the job in the first place.

As far as getting a job:

Some companies will look down on a resume that doesn't have a degree. But most will realize that your experience and practical knowledge trumps not having a degree.

Education is also a good place to meet a lot of contacts in your field. You will be able to get jobs from these contacts in the future if you want the jobs.

It depends on where you are in life:

Can you afford to get a degree and lose out on potential earnings? If you can now you should seriously consider it, you probably won't be able to later in life when you have more dependents. Most people that get a degree are also proud of that accomplishment and this tends to help with a positive outlook on life.

As far as learning new technologies:

I don't think you'll learn things like the newest version of .Net or anything else that is practical and in the front lines right now. But you will open up some industries that you didn't know about before.

Many universities and colleges also have a great intern or co-op program which will get you into workplaces that you would never have a chance getting into on your own.

Do you need it?

Absolutely not, you can have a very successful career and if you have the drive you can learn everything on your own.

When posting on stackoverflow.com:

Having a degree will also help you organize your stackoverflow.com answers :P (j/k of course)

Brian R. Bondy
I personally think that hiring someone based on having a certain GPA is silly. I would hire based on past experience and if the developer codes for fun. I do see education as a plus when reviewing resumes though.
Brian R. Bondy
Actually, there are four learning stages (categories of knowledge):1. What you don't know you know (unconscious competence)2. What you know (conscious competence)3. What you know you don't know (conscious incompetence)4. What you don't know you don't know (unconscious incompetence)
Totophil
Unconscious competence being the most automatic, natural.
Totophil
Totophil: Cool I never realized that, thanks.
Brian R. Bondy
So what about having a non-CS-related degree vs. a CS degree vs. no degree?
VirtuosiMedia
field of interest I guess.
Brian R. Bondy
There are known knowns. These are things we know that we know. There are known unknowns. That is to say, there are things that we now know we don’t know. But there are also unknown unknowns. These are things we do not know we don’t know. - Donald Rumsfeld
Skilldrick
+1  A: 

Are you unhappily stuck in your current job? If you are growing in your current job then I do not think a degree is useful per se - unless it is a course which adds value. However sometimes we do hit glass ceilings and you just have to get some of those degrees under your belt to pass the HR robots:) The plus point of going back to education is you are more focussed now and will have a clear idea what you need from said education. However the experience of 10+ years of work will stand you in good stead too.

brijwhiz
+4  A: 

That depends on what is your ultimate goal. Here's what I've found:

Management - At least a Bachelor's, but a Master is probably better

Scientific programming - Bachelor's in the specific field (physics, genetics, bioinformatics)

Embedded programming - Usually an EE degree

Business programming - Not really, usually an Associates will suffice

Do change the major if you find it extremely boring. You should probably have at least a minor in CS if your plan is to stay programming.

hectorsosajr
A: 

A degree is an attention getter, the more famous the institution the more attention. It often gets you through a first resume screening by HR. For these reasons, it may be worth it.

As for the GPA threshold, I never felt that was a good hiring criteria. For instance, is it the same 3.5 for a community college as for an ivy league school? If not, what is the adjustment? Is that fair?

dacracot
+2  A: 

I am 27 and also do not have a degree. I got lucky enough early in my career to have some employers take chances in me, but now I have a lot of experience and it's irrelivent in my day to day activities. I even started my own company a year ago (http://simplovation.com)

I am actually thinking of going back to get a college degree myself, so I have a backup just in case. I never know when I'll need it, but then again it'll take awhile to obtain going part time. However, instead of a plain CS degree, I'm thinking about going for Computer or Electrical Engineering so I'm challenged more and don't get bored.

There are plenty of companies that wont hire you if you don't have a degree, but as you know there are a lot that will. This is something I've struggled with myself, when changing jobs. Also, some employers may hire you, but will pay you substantially less if you don't have a degree, no matter how much experience you have. I also wouldn't rely on your current employer giving you a raise once you graduate, you may have to change jobs for the pay increase.

Chris Pietschmann
+1  A: 

I have had an experience that may be helpful to you. I got into this business during the beginning of the Internet revolution, when a computer hobbyist with no formal degree (like me) could get a job just by demonstrating some basic coding skills. Piece of cake.

Years later (in 2003), I was "downsized" in a staff cut (I had become too senior and too expensive). In looking for another job, I discovered the market had tightened up considerably - too many people like me with experience but no degree, in addition to lots of job seekers with experience and a degree - many of us displaced by continuing fallout of the dot-com bubble bursting. Guess who had a harder time finding a job? Employers had to narrow the field somehow, with a glut of candidates from which to choose.

With a wife and kid to support, this started to frighten me, so I decided to go back to school part time and get that piece of paper - not so much to learn things I did not already know (I could frankly teach most of the classes I have taken) - but to make sure that lack of a degree would no longer be an obstacle.

I now work at arguably the most recognizable software company on the planet - not in what I would call a plum position, but not bad, either. There is room to climb, yet, and my degree (if I can ever finish the darned thing, at this pace!) should help me take advantage of those opportunities.

I don't know your individual situation, and maybe a careerer change is what you ultimately need. But if your circumstance is anything like mine, a degree will not hurt you. That's my opinion, for what it's worth.

I wish you well!

Wing
+1  A: 

To quote myself: The answer is an overwhelming "definitely maybe". The difference with your question is that you sound like you need a new direction and some new focus. You probably will learn something, you might well get more, better opportunities and it might well get you in some doors that are currently closed to you.

Degree courses are sometimes ends in themselves. Too many people are chasing the bit of paper without actually taking full advantage of the course, their peers, their lecturers and the university's resources.

I wouldn't refuse an interview to someone purely because they didn't have a good degree from a good university - but I'd want to know your story and that's harder to get across in a small resume. A degree is a shorthand for someone able to learn hard concepts over a sustained period of time. You're displaying some drive, so that's a good start.

Unsliced
+2  A: 

Personally I think degrees are overrated. I have seen programmers that had no degree (self educated hackers) who were able to write a ready to use solution to any problem faster than average programmers have created a plan how to implement it. On the other hand, I have seen programmers who had a whole list of degrees (actual high university degrees) and needed half an eternity to produce some code that; well, how should I call code that is unreadable, absolutely full of bugs, and inefficient?

What do you have to do to get a degree? You take part in educational classes, however, whether you really learn something or just fall asleep, nobody knows. In the end you usually write some kind of test. However, such a test usually just asks you a couple of very restricted questions, short ones, with simple answers to make the test easy to correct. Such a test is not the same as having to write a whole application. Thus degrees you can obtain by just passing a couple of simple test are absolutely worthless. They only prove that you had enough knowledge to pass the tests, but programming is not just about knowledge. You can know everything there is to know about programming and still be a bad programmer, that is what people overlook.

If you can choose between various degrees, try to get one that really shows your abilities. A degree you can only get by really doing some serious programming is a good degree. I don't know if there are any. Better than a degree is if you can show some of your own work.

Mecki
A: 

Depends on which area of programming you are specializing in.

Since coding is turning more and more into a Art Medium (the final product, no the act of coding) If you are a game or simulation developer your portfolio is going to be just as, if not more, important than the degree.

If you code in a more business / security related field, a degree is going to hold much more weight in getting a job... though loses its value the more it ages.

gltovar
A: 

Are you bored because the classes aren't interesting, or because they're not challenging enough? Perhaps you could try a different school, or test out of the lower level classes. But it sounds like you're thinking about a degree before you've given thought to what you really want to learn.

A: 

If you want to take 3years out and spend a 100K - start your own business. You will leanr more, earn more and become more valuable than sleeping through a few classes on big O notation.

Martin Beckett
A: 

FYI, All computer science degrees are not equal. Not even close. Getting a CS degree at CMU is far different than getting one at Devry. Getting a GOOD computer science education will make you a better, more informed programmer.

Jen A
I take it you went to CMU?
Seth Reno