I wondered whether people had any ideas for a means of escaping an internal IT job under the following circumstances:-

  • No Computer Science degree
  • Very passionate about programming
  • Trying hard to develop progranming skills outside of work

As argued so well by Joel Spolsky and many others, internal IT has no, or very little, business motivation to produce great software and to support programmers who really want to write great software, whereas a software house has got a motivation to do so, as a better product means more sales.

I wondered whether anybody has specific, practical advice on how to achieve this.

Update: Just to make it clear, my 'friend' does have a degree from a good uni, only not in Computer Science, in an engineering discipline.

+2  A: 

I'll make a slight edit to Ryan's comment:

  1. Find a new job at a place you love
  2. Then quit.

Step #1 might take a while but there are great jobs out there at great companies. You just have to spend some time looking.

There will be companies that are willing to take a chance on you, degree or not, provided you know your stuff. You can also make up ground by emphasizing people skills. Being someone that others can stand to work with means just as much, if not more, than raw technical talent.

Mark Biek
just please clarify #2 as "then quit your current job"

I have no computer science degree--mine's in English. I've never taken programming courses. But I know my stuff and I interview well--that can very well be enough for you, too. Best of luck to you.

Brian Warshaw
+3  A: 

I hope I understand your question correct.

The following ideas are quite easy to implement and can provide a huge advantage:

  • Start or contribute to an open source project.
  • Enhance your soft skills
  • Be active in the community
  • Have a weblog

@kronoz: My condolences on your soul-sucking job.

My advice would be to find smaller companies, or startups that are hiring. They can be (but aren't always) less picky about who they're hiring. They are much more likely to give you an interview than larger companies, because you're probably willing (if you're not, and that's the problem you're having finding a job, then you may need to lower your expectations a bit) to work for less money than someone with a degree.

Once you get that first programming job (beyond your internal job which, depending on how long you've been there, may be working against you), things get a lot easier.

+1  A: 


Is it at all possible to put a stick in the sand and say, "I'll leave by then"?

I'm talking a far while out in the future, say several months, maybe a year.

Then look at what you can take as "a positive" away from where you are.

  • What can you use this company for to learn about techniques, technologies, methodologies, etc.? Even if not what to do! (-:
  • What do you see that you could improve the current situation? Processes, automate some aspect, provide feedback from post-mortems, etc. I'm talking baby steps here,
  • Take this as a chance to put a positive spin. The glass can be seen as half full as well as half empty. Along with the engineer seeing a 50% undercapacity problem according to Dilbert. (-:
  • Are they willing to provide any training in the immediate future? Can you suggest a roadmap of what you want to learn?

See what you can get from your current situation.

And remember misery loves company.

Just sitting there "with your thumb in your bum and your mind in neutral" spending most of the day "discussing amongst your colleagues how bad things are here" will just drain your energy.

And they'll always agree with you!

And one another! (-:

Best thing to let a company know how bad it is?

Get what you can from them and then use your new found expertise to get a new job. And quit, but only after a suitable time of getting your new knowledge and expertise.

Good luck.



Rob Wells

There certainly is a jobmarket for developers without formal degrees, but perhaps you have to prove yourself more than those with degrees.

I've hired developers without degrees, and just as developers with degrees, they gave a good impression in the face-to-face interviews, and delivered good solutions to the programming test. Not all companies have programming tests, so without that you might not be able to actually prove you have the skills.

Try to apply for jobs in smaller companies, they might not have formal requirements for applicants such as degrees, and it might be easier to get a job somewhere that doesn't have a large bureaucracy.

+2  A: 

First of all, don't worry about the degree thing. The last four or five interviews I conducted I didn't even glance at the education section of the resume. Our team here has a wide mix of majors, and several don't have degrees at all. What matters is passion for the job and the ability to adapt.

Now, specific advice. Start a blog right now, and focus on showing your passion for code there. Your blog should be your primary way you market yourself. Communication is at least as important as coding ability in your job search, so make sure you write well.

Start attending local user group meetings. Once you get comfortable there consider doing a presentation. As you get to know people, make sure you let them know you're looking for a new gig.

Build your professional network on LinkedIn, and make sure you have a complete profile -- that makes a damned good resume right there.

And, of course, post your resume on Monster. Make sure it's searchable (screen out your current company, of course). I've gotten my last 3 jobs from Monster, and it was always from recruiters searching (as opposed to applying for a position directly).

Last of all, be patient and picky. Sure, your current job is a soul-killer, but you want to make sure your next job isn't. Don't jump if it's not the perfect opportunity for you.

Good luck!


I don't have any qualifications in Software Engineering, I dropped out of both College and School so I only have some sketchy GCSEs.

I have zero problems in finding work because of the commercial experience I have. In the UK 2 years commercial experience (or even 1 at a push) is all you need to get jobs.


Suicide is painless.


I would not focus exclusively on software companies. I was recently taking a lot of interviews (done thank goodness), and I found that the majority of software companies I interviewed with asked a different kind of questions, and because I don't have the background in computer science I did not know the right words to answer them. I generally do alright with the design/architecture type questions thanks to grad school but when they ask about the really low-level details I am at a loss.

While an internal IT job is often too focused on "just getting the job done" I think there is a careful balance to be struck between that and idealism. In a software company you still need to make the same business decisions (feature X would be pretty cool, but is it worth spending ZZZ hours on?). At the end of the day its' still a business, and its' success is determined more by making money than making great software (though ideally it will be doing both!). The only difference is that great software to a software company is software that sells (and presumably works - though some of the "professionally" developed software makes me wonder if they really care), and to a different kind of business it is software that works.

Whether it is a software company or another internal job, your "friend" should try to find a place that understands the value of sound software design, and how much more profitable they will be in the long run if they take a little extra time to do it right from square one. Those seem to be the places that I would like to work the most. Heck, maybe they won't even destroy your soul ;)


I would suggest finding an experienced programmer you respect, and get them to look at your résumé. As with most people you may be underselling yourself.

There's probably loads of stuff with regards to your passion which you should be adding to your résumé. For example:

  • Blogs
  • Taking part in software betas ;-)
  • Answering postings
  • Etc...

I've been there in the past when I was stuck in a rut and wanted to move. The biggest hurdle was myself.

Good luck :-)