Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am wondering what are the chances of a career shifter (mid 20's), who have maybe 3-6 months programming experience vs. younger fresh IT/Com Sci graduates?

You see, even though I really love programming (Java/J2EE), but nobody gives me a feedback when I apply online. maybe because they preferred IT/ComSci graduates vs a career shifter like me. So can you advice on how to improve my chance on being hired?

How can I get a real-job programming experience if nobody is hiring me? I can make my own projects (working e-commerce site blah blah) but it is still different from the real job. And my code is working but it still needs a lot of improvement and no one can tell me how to improve it because no one sees it (because I'm doing it alone?). Do you know any open source websites (java/j2ee) / online home-based jobs who accept java/j2ee trainees?

share|improve this question

closed as off-topic by MichaelT, Kilian Foth, Bart van Ingen Schenau, Dan Pichelman, GlenH7 Oct 9 '14 at 17:54

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – MichaelT, Kilian Foth, Bart van Ingen Schenau, Dan Pichelman, GlenH7
If this question can be reworded to fit the rules in the help center, please edit the question.

What does that 3-6 months of experience consist of? Is that just the time you've been studying, or have you been working on a job/project? Basically, 3-6 months isn't much experience. Any company that might consider hiring someone without a degree is probably going to be looking for quite a bit more. (I don't think the problem is your age or the fact that you're trying to switch careers.) – vjones Mar 19 '11 at 4:03
STUDYING... :( So any advice on how to improve my chance of being hired? – user20596 Mar 19 '11 at 4:06
It's a difficult problem. If you need paying work right away you might have to fall back on your previous skills & keep studying & looking for projects on the side, or come up with your own. Also, if it's an option, you could consider going back to school and getting one of those degrees for yourself. – vjones Mar 19 '11 at 4:12

3-6 months of coding experience without a background in the fundamentals of computing really isn't going to get you far.

Here's what you could try, but you need to patience to sail through:

  • Work on an open source project thats relevant to your line of work. Make sure that its an active project where you may solicit feedback for your changes from other developers.
  • Get yourself enrolled in some course if you cannot afford to do a full degree. Loads of online universities are around that allow for distance learning.
  • Download the courseware for CS from and start going through the material.
  • Yet another excellent source is Google's Tech talks available on youtube. Do some search, you should get what you need.
  • Get some cool books on the subject. Stuff like data structures, algorithms, operating systems etc. I would recommend Levitin's book on data structures and algorithms here.

And yes, please have incremental targets as you move along.

share|improve this answer
This, and also look out for techy groups in your area. Some people run free or very cheap CodeRetreats, where you get to pair program, learn how to do TDD, etc. If you haven't got one, start one. Good luck! – Lunivore Mar 19 '11 at 10:21

Do you know what would make me hire someone? Do something. Build a small system that does something, anything even vaguely useful, and put it on GAE or AWS or somewhere. Include it on the site with all of the code along with your résumé.

I was trying to explain to a friend of mine, who is a doctor, why I usually do not hire CS graduates right out of school. I asked her, "Would you let someone who just had a Bachelor's degree in biology work as a physician?"

Being able to do a job is much more impressive than being trained to do the job.

share|improve this answer
+1 for the bachelor's degree in biology for a physician being equal to a CS degree for a real software engineer. Excellent analogy. – Bobby Tables Mar 22 '11 at 23:30
@Malvolio - While I agree about the CS graduates aspect, but unlike the course load a physician might take, an computer science student can go 4 years without getting any experience outside of their classes. Everyone has to start at some point. – Ramhound Mar 5 '12 at 13:07
@Ramhound -- he can but he doesn't have to. Nothing stops you from just writing software on your own or with friends. The analogous option is not advisable for physicians. – Malvolio Mar 9 '12 at 4:51

You could consider trying to get into either testing or technical support as a starting point for an IT career that would eventually give you a developer position. Starting out in testing or technical support has the advantage of the bar being low enough that one doesn't need to have a lot of credentials to get their foot in the door. You do need to be detail-oriented and possibly enjoy problem solving to some extent though the idea is that the experience you get in that role helps to give you an edge in transitioning to a developer as you now know more about the software you could be developing by being on the other side of things. You could think of this as baby stepping your way to the position you want.

share|improve this answer

You mentioned you like Java so I'm guessing you are familiar with the syntax and can get things done with it. If you have some ideas about mobile applications then one thing you could do is write an application for android. It wouldn't need to be anything too fancy but something that solved a real need for you. Doing this kind of thing would teach you a lot more about software engineering than the various open courseware offerings.

share|improve this answer

There are many disciplines in IT that you can consider. Project Management, Business System Analyst, Development, Production Support, Testing / QA, etc.

Without a computer science or engineering degree it is really hard for you to find a software development job. That's the reality.

Having good and valid certificates may help you get a phone interview, but you can easily fail technical interview. Even if people have computer science degrees from decent collages or universities, doesn't mean they can become a developer.

And to your question about company that accepts trainees... that's what the coop and internship programs are for. The market is tough.

Bottom line is this:

  • You want to join open source projects on Github, SourceForge, and actually contribute to those projects.
  • Blog about them if you have something to say, even reviewing, or creating tutorials.
  • Understand where your skills are. Front-end, back-end, database development, if you are so kin on becoming a code monkey.
  • Understand what sort of company you do want to work for. i.e. if you don't have a comp sci degree, I assume that you don't have the Math background. Hence, you probably shouldn't attempt to get an internship or apply with/to Healthcare or Energy companies since those usually hire folks with strong math background for mission critical or advanced systems.
  • Have a plan B. Again, that are many discipline in IT that you can work on.

And good luck!

share|improve this answer

As a start you should get certified. A certificate will get you your first job. Later jobs will depend on your experience.

share|improve this answer
certification doesn't mean you can actually get stuff done, it just means that you can commit to something, in this case, study for the exam. – Mahmoud Hossam Mar 19 '11 at 9:03
Certificate means you have an idea about some topic. This will do for a junior position. – M.Sameer Mar 19 '11 at 13:00
Maybe, it depends on the certificate itself, check this out. – Mahmoud Hossam Mar 19 '11 at 13:19
I am talking about certificates of programming languages like C# and Java. If you do not have a CS degree and no experience and applying for developer position your certificate will be the only thing that speaks for you in the resume. – M.Sameer Mar 19 '11 at 14:25
Yeah, I know, but being certified doesn't mean you know why the X approach is better than Y, certification doesn't teach you that. – Mahmoud Hossam Mar 19 '11 at 14:53

Don't fight it head on - you will lose every time. The recruiter for every online posting for a programmer will see you as more expensive and less skilled.

You don't mention what you did before but you should tack that way while you build credibilty. I you worked in Marketing, find a way to be a BA or tester for Marketing software, and get as technical as you can in the project. If you waited tables, find who created that software and find a way to use your abilities to help as a BA. You will have to learn and demonstrate your tech skills above and beyond the 40 hour workweek, but it's a path you will have a huge advantage on against any new grad.

share|improve this answer

I did my under graduation in statistics. But later shifted my career to software programming.

It was a long journey but fruitful now. As you, I also tried to get into a software firm right away without any real computer science qualification. I was decent in programming. And I got through in one of the interviews. But the job was production support and it hardly involved any programming. I worked for 2 years and meanwhile gathered feedback from fellow developers who sat right across my cubicle.

There advice was simple - "get a real qualification from a good university". And I did it. It's my last few months of college education and I got a job in one company too.

share|improve this answer