Follow Slashdot blog updates by subscribing to our blog RSS feed


Forgot your password?
Programming IT Technology

Getting Hired As an Entry-Level Programmer? 540

An anonymous reader writes "I received a state university degree in Computer Science. After graduation, I immediately took jobs in QA to pay the bills while waiting for other opportunities, which of course turned out to be as naive as it sounds. I've been working QA for several years now and my resume does not show the right kind of work experience for programming. On the whole I'm probably no better as a a candidate than a CS graduate fresh out of college. But all of the job postings out in the real world are looking for people with 2-5 years of programming work experience. How do you build up those first 2 years of experience? What kinds of companies hire programmers with no prior experience?"
This discussion has been archived. No new comments can be posted.

Getting Hired As an Entry-Level Programmer?

Comments Filter:
  • by Lord Kano ( 13027 ) on Tuesday October 14, 2008 @12:16AM (#25364841) Homepage Journal

    Internships are the way to go. A nice internship will give you some job experience. If you've been thinking about going back for your Master's degree, do that. And get an internship.


    • by Ethanol-fueled ( 1125189 ) * on Tuesday October 14, 2008 @12:17AM (#25364847) Homepage Journal
      First, try to move up in your current job while your foot's in the door. Make your ambition known to your co-workers and elbow into other aspects of the job with the blessing of the other departments - this could be something simple like reviewing code on your own time and then offering friendly suggestions at work - but don't step on others' toes and don't come off as a prima donna unless you're VERY good at what you want to do.

      Do not ask your boss up front because s/he may be naive and order you not to try anything else(in which case you look for another job). After you schmooze around a bit while keeping your standard affairs in order, approach your supervisor(preferably with "attaboys" and testimonials from other department heads) and tell him/her you want to move up, then you provide evidence of your qualification. They LOVE to see how much money you can save them. If they're skeptical then offer to negotiate(i.e. work half of your day in QA, half in development or alternately ask for a 1-month "contract" to work for another department for the chance to prove your mettle). If the PHB says no and dosent offer you a raise to stay(heh, you may be so valuable in QA that they wouldnt move you no matter what your skills are) then look for another job.

      If you interview for another job then emphasize the reason why you're leaving - you're capable of more, tell 'em why, and you want to move up. Stress that you have the skillsets to be capable of learning what you do not know. Ambition looks good and even though QA isnt the greatest job, it shows that you're stable and humble enough to stick to a shit job as long as it pays the bills.

      Best of luck.
      • by weicco ( 645927 ) on Tuesday October 14, 2008 @01:15AM (#25365231)

        First, try to move up in your current job while your foot's in the door.

        Three years is the limit. If after three years you haven't managed to get raise or promotion apply for another job. Especially if your professional expertise is falling behind or soon you won't be able to get a job at all...

        Now if you manage to get a better job with better salary ... well, that's great for you! But remember that expectations rise and you need to show that you are worth it. It can be stressful compared to your old job.

        But if you can't get another job then there's some serious consideration to do. Maybe you are not that great worker after all?

        • by mabhatter654 ( 561290 ) on Tuesday October 14, 2008 @04:40AM (#25366143)

          I think you hit on one point right there. Companies are only interested in what you do for them right now... if you are "good enough" then why move you someplace else? Of course you'll never be good enough to move up, because you were only good enough for the position you have right now. It's a catch 22 and HR loves it.... You're good enough to do the work, but not good enough to demand the position and pay... that's just right for the company interest and very hard to break.

      • Stress that you have the skillsets to be capable of learning what you do not know.

        IMHO, letting an interviewer think that you have to learn anything in order to do the job is the kiss of death for any interview.

        • Re: (Score:3, Interesting)

          Depends on the job.

          We're currently hiring (if you trawl through much older posts of mine, you'll probably find details, but I won't repeat them since we already had enough applicants from Slashdot! (and may well take one...)), and I really don't expect the potential hire to know everything they need to for the job. One of the reasons for this is that the main thing they need to know is our own proprietary API, so what we're looking for is a person that is going to be able to pick it up quickly, and can dem

        • Re: (Score:3, Interesting)

          by bishiraver ( 707931 )

          Not necessarily true.

          At a previous job (that I worked at for a year and a half before mergers and so forth required me to take myself elsewhere), I was hired to work on an application. I had no ASP experience, and barebones JavaScript knowledge: I was hired as an interface designer. Within six months they were paying for me to take an ASP C# class at the local university. Within a year my JavaScript skills were some of the best on the team.

          The interview tested not only my known skills - probing to f

      • by Anonymous Coward on Tuesday October 14, 2008 @04:01AM (#25365987)

        I've been a QA person in the past and now I do some amount of development in addition to some research work, so I have some idea of what you're facing.

        My suggestions:

        Find a sympathetic programmer that writes code that you are testing for. Ask him/her to show you how to set up a development and debugging environment that you can test against.

        In particular, if you discover an intermittent bug, then find out how to set up a debug version of the environment to trap the bug as it is occurring. (That saves the programmer a lot of time trying to reproduce the bug.) Learning an IDE and/or how to debug and/or how to use a source code control system is a big step.

        Also, approach somebody about writing test code against the production code, i.e. "unit tests", "white box" testing. That helps you learn the API.

        Try to sit in on "Code Reviews" if your group does such things.

        Start reading as much source code as you can. You learn a lot from reading other people's code. In addition, you can sometimes spot errors in the source. The sooner a bug is found and fixed, the better off you are.

        Once you can start suggesting fixes to the errors you find, then you've demonstrated that you have developer skills in addition to being a good QA person. That combination is great, because you could become a developer who makes fewer mistakes than average.

        Doing all this shows initiative which is also a big plus.

    • by plover ( 150551 ) * on Tuesday October 14, 2008 @12:40AM (#25364995) Homepage Journal

      A master's degree will certainly help, as will an internship, but those will take time and money to complete.

      Is it possible the development team you're working QA for is hiring? Do you have contact with the developers? Have you built a reputation as someone who catches the hard-to-find bugs and documents them well? I know I value a competent tester, and if one of the good ones came to me looking for a way up, I'd be putting in a good word for him with management. Social networking is a good place to find hidden opportunities, and if it's people you've impressed with your skills at work, so much the better.

      • by Abm0raz ( 668337 ) * on Tuesday October 14, 2008 @09:37AM (#25367877) Journal

        Moving up in your own company is a shot, but never forget what you can do in your spare time counts. Getting a master's degree is one "spare time" option, but others are Project Coding (such as, getting on a fairly large and active Open Source project, or creating your own applications under your own name and putting them out for prospective employers to see.

        If you are really serious about getting into a CS development position, I recommend the Open Source route because it will teach you how to code in a group setting and deal with code reviews, QA, and the whole enterprise process.

    • Re: (Score:3, Insightful)

      by Anonymous Coward

      A Master's in computer science to jump in as an entry level programmer? By god you are right! Throw another $20,000 at the problem! That will do it!

      Seriously, talk to some smaller programming companies around and look for something that you can squeeze into. See if you can participate on some joint pro bono work and add it to your resume. All potential employers want to see is some actual skill and not a useless piece of paper that you acquired during four years of partying.

    • by Mad Merlin ( 837387 ) on Tuesday October 14, 2008 @01:02AM (#25365171) Homepage

      Interships are probably a good option. I did a CS degree with Co-op (four 4 month work terms integrated with regular classes, but the degree only takes 1 extra semester, as you don't get summers off), and I had no trouble at all finding a job after graduating (above entry level even, or at least well above entry level pay scale). For me, the already existing relevant job experience was pretty valuable.

      Though, job experience isn't the end of the story, if you don't have job experience, you can still work on related stuff in your spare time. When I was applying for my one of my Co-op positions, I was able to show off Game! [] as something substantial that'd I'd already done, and that pretty much clinched the job offer. Game! wasn't something I created with the intention of putting on my resume, I just wanted to make a game, but it certainly turned out pretty well.

      So, code something you like in your spare time. If there's nothing that interests you that you want to develop, perhaps a programming job isn't actually what you want to be doing.

    • Re: (Score:2, Insightful)

      Mod parent up. A Masters is the cleanest way out - rather than spending 2 years again building up dev experience, do a Masters. The GRE isn't tough, a couple of months hard work should land you a good enough score and ensure that you get funding in at least one university.
    • You don't have to be a student to get an internship. Save the $100K and offer to be an intern for one of your target companies.
    • by twoallbeefpatties ( 615632 ) on Tuesday October 14, 2008 @01:53AM (#25365431)
      And it's worth noting that many internships can turn permanent once you get out of school. "Oh, so, your internship is over. It's been nice having you. Hey, Steve, could you go put a new posting up for an intern on the website. Oh, by the way, also put up a listing for that second-rank programmer that needs a year's experience and preferably knows something about the kind of systems we use. Gee, where are we gonna find someone like that-- Oh, hey!"
    • Re: (Score:3, Informative)

      by SL Baur ( 19540 )

      I agree with the subject.

      Your best bet is get working on an Open Source project that interests you. Documentation as well as coding will help as both will get your name into search engines (and is not necessarily the most important one). The skills you learn will make you a better programmer while honing your skills. Writing new code is somewhat important, but the majority of your time will be spent maintaining code and being able to diagnose and fix bugs is by far the best way to ensure job s

  • Repeat (Score:5, Informative)

    by HornWumpus ( 783565 ) on Tuesday October 14, 2008 @12:18AM (#25364855)
  • Build something (Score:3, Insightful)

    by Anonymous Coward on Tuesday October 14, 2008 @12:19AM (#25364861)

    Pick a technology you find interesting and build an application in it.

    I got my first programming job by showing off a simple web based contact manager I built for myself.

    -Jim Bastard

    • Re: (Score:3, Insightful)

      by Chabil Ha' ( 875116 )

      Right on the dot. I found no problems whatsoever getting a job right out of school. I did have a 4 month internship, but I spent a lot of my time writing my own web applications for the last year or so in college. That counts as experience. My employers found it impressive that I wrote applications to solve problems and were even more impressed that I had commercialized one of the them as well.

    • Re: (Score:3, Interesting)

      by dubl-u ( 51156 ) *

      Pick a technology you find interesting and build an application in it.

      Amen to that. When I'm interviewing people, my main concern is that they can do the work. If that's job experience, that's great. But as long as you have to maintain code in production, then that's the main thing.

      Personally, I have a mild bias toward hiring people with hobby projects. It shows that they're doing the work because they like it, and it lets me see what they can do themselves. With a resume item, it's always hard to tell who did what, but with a solo or open-source project, it's much clearer.

  • by dubious_1 ( 170533 ) on Tuesday October 14, 2008 @12:19AM (#25364863) Homepage

    Even though you have graduated, most Universities will help you find a job if you graduated from there. The jobs for entry level ( new graduate ) positions are not typically going to be posted on Monster, Hot Jobs, etc. since we look for those people at University Job fairs.
    I have been to many of these as a prospective employer, and there are always several Alumni who are there looking.

    • The way I found a job was with google. There are plenty of places looking for entry level programmers, but they don't always advertise on Monster or craigslist, and if they do, they likely have trouble sorting the multitude of bad applications they get.

      Seriously, do a google search for "entry level programmer" and you will find what you are looking for, because everyone advertises on their website.
  • College Recruiting (Score:3, Informative)

    by Mongoose Disciple ( 722373 ) on Tuesday October 14, 2008 @12:20AM (#25364865)

    Research which companies are recruiting at your and other area colleges. Not that you necessarily have to go to a college career fair (although it's not a terrible idea), but it's a good way to get a feel for which companies will hire with no experience.

    A couple companies in my area are very much of the "hire people straight out of college and try to keep them forever" mindset; it's no coincidence that these companies also do a ton of college recruiting. A company like this may not be where you want to spend your entire career, depending on your aspirations, but it's not a bad way to get started.

  • Simple (Score:5, Funny)

    by FooGoo ( 98336 ) on Tuesday October 14, 2008 @12:22AM (#25364887)
    Lie on your resume...but you better be able to keep the job once you have it.
    • Re:Simple (Score:5, Insightful)

      by sjames ( 1099 ) on Tuesday October 14, 2008 @01:04AM (#25365185) Homepage Journal

      At one time I would have been against that, but then I realized that most job postings are primarily a bunch of random bullet points HR tossed in that have little or nothing to do with the actual opening. That is, when they're not just wasting your time to inflate their folder of resumes 'just in case'. Then, of course, there's the postings demanding 5 years of experience in a 3 year old technology...

      When it comes down to it, if you can't quite do the job, it's not like they'll say anything if your next potential employer calls them. They'll verify your employment without further comment as a matter of policy, no matter how good or bad you were.

      • by piojo ( 995934 )

        At one time I would have been against that, but then I realized that most job postings are primarily a bunch of random bullet points HR tossed in that have little or nothing to do with the actual opening. That is, when they're not just wasting your time to inflate their folder of resumes 'just in case'. Then, of course, there's the postings demanding 5 years of experience in a 3 year old technology...

        I'm not qualified to give much advice, besides that that's a dangerous game. Especially if an engineer asks you about something that you put on your resume and you start to flounder. The goal is just to get past HR to people who know what they are talking about. In some companies, you don't even need to have all the qualifications they are demanding--sometimes they know their demands are absurd, and the person going through resumes is not the same person that wrote the job requirements.

      • by Sycraft-fu ( 314770 ) on Tuesday October 14, 2008 @07:03AM (#25366725)

        It is to match buzzwords. For example if they ask for experience with TCP/IP, make sure you have that, not network experience. HR is often, literally, just matching buzzwords. They look at the requirements list and make sure the words are in there.

        So it isn't a matter of inflating anything, it is a matter of having the terms they want. Now I realize there are postings out there that are just plain silly/impossible but the majority aren't. The answer isn't to try lying about it, just make sure that someone who has no idea what they are talking about, which is what you have with an HR person hiring for a technical job, can see matches.

        Think about it like you were trying to hire, say, a commercial artist. You know nothing about the field (if you do, pick another one for this). You also can't research it. So you are given a list of requirements and a stack of resumes and told to filter out the ones that aren't qualified. How do you go about it? Well you probably start off filtering out the ones that are just crap, poorly written and such. However what about requirements? You don't know anything about the field, so how do you see if they have what you want? Check for terms most likely. The requirements sheet says you want X, if they have X, they go in the good stack. Now maybe it turns out Y is another term for X. However you don't know this. So people that have Y get tossed, because you just don't know they are qualified.

        Well, that's how it is with HR people reading tech resumes. They don't know that "network" pretty much implies "TCP/IP" these days. So put the one they ask for, not whatever you'd call it. If they are super specific, then you be specific. IF they are general, you be general. The person doing the initial filtering won't know when something is the same as something else.

    • by mcmonkey ( 96054 )

      Lie on your resume...because it's the only way you'll ever get another technical job.

      If you've been doing QA for several years but are still looking at entry level programming work, either your skills aren't growing or your evaluation of your skills isn't growing.

      Either way, what's next? "I've been programming C++ for several years, how do I get an entry level job programming Java?"

      Entry level is just that. Unless you completely jump fields, you should never have another entry level job again in your life

    • Lie on your resume...but you better be able to keep the job once you have it.

      REALLY bad idea. A competent interviewer will catch this, and if you came through a recruiter, when the recruiter follows up to say "how did it go" the feedback won't be good. Recruiters don't want to piss off companies, so you won't be working with that recruiter again.

      If you don't go through a recruiter (and if it's been two years then you should consider finding one) then at best you won't get the job and won't be considered if an opening occurs in the future. At worst people will talk and there will

      • Re: (Score:3, Insightful)

        The IT community is small. Once you get down to metro areas, they're stupendously small. A quick look through Linked In gives some good insight in that arena:

        Your Connections 120
        Two degrees away 10,500+
        Three degrees away 1,154,500+

        Don't get blacklisted over something stupid when there are viable alternatives.

  • Try Harder (Score:2, Interesting)

    I did the same, only caught in QA for 6 months though.... I can tell u this, some companies(mine) hire Jr. programmers when they cant get anyone else, for one reason or another. I found out the reason for my company soon, startup short on funding regularly misses payroll. Currently Im 3 paychecks behind...ughh But at least Im not "Unemployed" during this messy market, and Im getting bonfide Programmer experience on my resume for when I chose to bolt!
    • Re: (Score:3, Insightful)

      This is actually the hard truth. If you want to get a good job, you need experience. The only way to get experience is to work for someone who is desperate. That's what I did. Look for small startups. You might not get paid well. You might not get a project you like. Best case, you work on some new idea and help bring a cool new start up off the ground. Worst case, you eke by for a year and presto! have a year of experience as a commercial software developer!
  • by Nefarious Wheel ( 628136 ) on Tuesday October 14, 2008 @12:23AM (#25364893) Journal
    Get stuck into an Open Source project, find out how it works, dive deep. If it turns out you can make a contribution that has even reasonably broad acceptance, that will add to your credibility as a programmer. At worst, you'll be keeping up your currency in at least one field.
    • Re: (Score:3, Interesting)

      by darnok ( 650458 )

      Agree completely. Find a FOSS project that uses the same technologies as you'd like to use in your 9-5 job, and get stuck in. It (generally) costs nothing more than your own time.

      Given a choice between 2 programmers with similar skillsets and experience, I'd be inclined to go with the guy who's got FOSS coding experience in his background. The implication is that you're prepared to put your code out there for peer review (which takes some guts), and you're prepared to write code to scratch your own perso

    • by jamesh ( 87723 ) on Tuesday October 14, 2008 @01:34AM (#25365337)

      I've been involved in two open source projects over the last 12 months and have received (tentative) employment offers as a result of both of them. A decent contribution to a large project shows that you can do the job, can work well with others, and can be motivated to do things, so even if people don't come looking for you, it still helps a lot, and keeps your experience current.

      If you do participate in OSS projects via public mailing lists, remember that most of the related mailing lists are publicly archived and your name will show up in a google search as a result of this, particularly if you state "I have been heavily involved in project xyz" on your resume and they go and google using your name and that project as keywords. So be nice to others online :)

  • Start coding (Score:5, Insightful)

    by robogymnast ( 755411 ) < minus pi> on Tuesday October 14, 2008 @12:25AM (#25364903)
    Build up a small portfolio by contributing to an open-source project, or start your own, or code that cool project that you have been thinking about in your head from time to time. Do whatever you have to do to start writing some actual working code.

    Don't undervalue your QA experience either. QA experience means that you know how to test and debug, which is a rather large percentage of development. If you don't meet the requirements exactly, apply anyway, or look for jobs that mix QA and development, but make it clear that you want to move into a development role as soon as you are ready. Good luck!

  • by jmorris42 ( 1458 ) * <> on Tuesday October 14, 2008 @12:29AM (#25364921)

    Unless you had a very good program in school, odds are you haven't actually written many real world programs. The stuff in school usually isn't finished programs, just enough to demonstrate the concepts being discussed.

    So join an open source project and do some real world programming. Learn how to finish the job, catch those return codes, use a version control system, track down bugs in non-trivial programs, work on getting the documentation to actually match the program, etc. Learn how to work in a real team. Be a big enough contributer that you can rightfully claim to be a major contributer so when a prospective employer follows up by looking at the credits, commit logs and mailing list traffic you aren't seen as inflating the record.

    • by phidipides ( 59938 ) on Tuesday October 14, 2008 @01:45AM (#25365397) Homepage

      "So join an open source project and do some real world programming."

      Mod the parent up - without significant experience no one will hire you. When the company I work at is hiring people we generally get a ton of resumes, most of which are an alphabet soup of people who read a lot of O'Reilly books. In an interview it becomes apparent very quickly who actually understands the technology and who has merely crammed a bunch of knowledge. By joining an open source project you'll get some real-world experience that will force you to dig deep into a project, to make decisions about how best to solve a design problem, and force you to work with tools and technologies like Subversion, Tomcat, automated testing frameworks, etc.

      In addition, when there are multiple candidates that are qualified for a job (and with the current economy there usually are) a company has the luxury of hiring people that are easy to work with, so make a good impression in the interview. Be friendly, be well groomed, and show some social skills. This aspect of an interview may not seem that important, but if you don't have strong experience then you'll need whatever help you can get, and making sure you project yourself as someone that people want to work with is a huge advantage.

      Last of all, how are you looking for jobs? Consider asking friends for recommendations or going through a recruiter rather than just posting on Monster. Have a look at sites like - those are usually contract positions, but many companies will hire someone on a short contract and offer them a full-time job if things work out. If you really want a new job in today's economy try every possible avenue you can find and eventually one will pan out.

  • by BountyX ( 1227176 ) on Tuesday October 14, 2008 @12:32AM (#25364941)
    If you cant find decent internships or jobs, become a key player in some well-known open source projects so you can throw them on your resume. I've been pretty impressed with some entry level guys who played key roles in open source jobs it shows intiative and and passion.
  • Three ways (Score:5, Informative)

    by jwhitener ( 198343 ) on Tuesday October 14, 2008 @12:32AM (#25364945)

    There are 3 ways to get that first job:

    1. Know someone in the company
    2. Gain experience through personal projects and showcase it.
    3. Be extremely charismatic and up to date on the job's focus areas and especially the companies specific mission.

    Right out of college, with a degree in Anthropology, my first job was as a system analyst for a health care corporation.

    For years I had tinkered with computers, and kept somewhat up to date on modern programming techniques, enterprise systems, and had created several little programs that resided on public servers that I could show off.

    The interview was successful because I:
    A) Knew exactly what they wanted for that position.
    B) Researched the relevant "buzzwords" and lingo beforehand.
    C) Was generally easy going and relaxed.

    Despite having no formal education in computer science or programming, my obvious research into their business and corporate culture (thank you anthropology!) really showed well during the first encounter.

    People with technical skills are a dime a dozen (unless you are striving to get into some very abstract programming job), and usually, a hardworking, motivated person should be able to convince a interviewer that they are up for the challenge.

    Basically, apply for the job in front of you, do not apply for "a programming job". If you treat the job as something unique, do a little research on the company and their culture, and can "seem to be one of them", you are in.

  • Write test code (Score:5, Insightful)

    by Smallpond ( 221300 ) on Tuesday October 14, 2008 @12:35AM (#25364961) Homepage Journal

    The natural step from doing QA is writing the tests for QA: specs, scripting, network, database, there can be a lot involved.

  • by xquark ( 649804 ) on Tuesday October 14, 2008 @12:39AM (#25364991) Homepage

    Ask yourself this, do you really want to be a programmer?

    Many people think its the "it thing" in IT, and that being a programmer and eventually an architect is the pinnacle of their career.

    The truth is most people will not make good programmers, they wont end-up enjoying what they do, and something as mentally straining and intensive as programming requires you to continually have a good/positive mindset to be productive and to churn out top notch solutions.

    I suppose this is the same for all types of careers - is it really for you?

    That said most people will undoubtedly tell you to do some open source, start some of your own projects.
    I have another suggestion, take your QA role, and ask yourself this: what tasks that you're doing now can be further automated, is there an area where something can be solved with a program?

    If you can find that area(s), and build the program(s) to solve those problem(s), then you're probably a good fit for programming, if you're the kind of person that needs someone to tell them any one of those things, then perhaps its not for you...

    • Re: (Score:3, Insightful)

      by Revvy ( 617529 )
      There are ample opportunities within QA to do programming. I have yet to meet a developer who says, "No, don't write my unit tests for me."

      Have you heard of Selenium? How about Groovy, FIT, JUnit, JMeter, or ant? How's your svn-fu and when was the last time you mucked around in an apache.conf file? Know some SQL that you've used for verification? Got any handy shell scripts? Had to mess around with Prototype, JSON, JavaScript, Perl, PHP, Python, or Ruby?

      C'mon, be honest with yourself. What's really ho
      • Re: (Score:3, Insightful)

        Out of interest (this isn't just directed to the post I'm replying to), what's the deal with the amazing amount of web related posts I always see in any threads about programming?

        I've been coding for most of my life, and doing so professionally for nearly all of my adult life, and I've never once written a web app. I do realise there's a lot of web development stuff going on out there these days, but it seems the posts on Slashdot are extremely skewed towards that end of the spectrum.

        I'd be really quite ke

    • It got most of my programming positions by working in another department. I worked in QA and designed automated tests for the hardware receiving before it was installed. I worked designing software for systems control in chip fabs and I programmed at night on things I enjoyed because it was just not fun at work. Meetings, politics, bad choices, Windows, corporate games, and everything that is work. I enjoy doing open source more than any job I could ever have. The commercial programming like Windows device
    • Re: (Score:3, Informative)

      by pla ( 258480 )
      Ask yourself this, do you really want to be a programmer?

      He should have asked himself that 4 (or 5... or 6...) years ago. Now, he needs to either like coding, or suffer through it for a decade to afford a go at a new career.

      I agree, though, far too many people seem to go for CS (or related) degrees who really don't like coding. Big mistake, IMO. Now, personally, I truly love programming... I did it before college, I did it to help pay for college, I do it for a living, I do it in my spare time, hell
  • So the answer is pretty simple. Apply for the jobs that match your skillset even if you lack the experience. What you will see, if you're lucky, is a company looking to hire someone they can offer a relatively low payrate compared to what they posted but will do nearly as good of a job minus the expected failings of a newbie.

    Essentially they get a good deal and you get some experience.

    Secondly, make friends who have jobs at programming companies, and make those friends impressed with your skills. Network

  • Small companies pay programmers with no experience, likely substantially less; however it gives you the opportunity to get your foot in the door. Additionally small companies often develop a breadth of experience because you are required to take on many roles. For a developer this might mean developing across multiple software layers and getting involved in many aspects instead of being slotted into one focused area. Small companies don't have the stability. Be ready to give a lot. Years later you can take
  • by h4ter ( 717700 ) on Tuesday October 14, 2008 @12:43AM (#25365027) Homepage

    I got a non-technical post-graduate degree and now I'm a programmer. Only took a couple of years to get my first programming job. Here's how I did it.

    First of all, I did as much programming as I could at my tech support jobs. Not all of it was company sponsored, but if I figured out something I could write that would help *me* do my job I would write it. I wrote all kinds of little things, and then I was able to truthfully add to my resume that I developed software.

    I was also going to user group meetings for the language I was using most and meeting people there. I ended up getting my first job (and all subsequent jobs, actually) through people I met at those meetings. At least for the language, city, and time I happened to be in, the meetings were filled with people who knew about more work than they could take. And the recommendations you can get there are worth "2-5 years of experience" on a resume.

    I'm currently helping my company's QA guy get some programming tasks so he can make the switch and give his job to some other poor CS grad. Is there anyone on the development team where you are that might help you out?

    There's one more option: recruiters. I know they're not great, and the jobs you get through them aren't all perfect, but there are some recruiters who can help you market yourself without the exact "2-5 years of experience" someone's looking for.

    One last thing: If you're any good at all you'll be way ahead of most people in this field. If you can get an interview, showing your abilities and desire to learn can be enough.

    Good luck.

  • your summary speaks of an expectation that the rules of employment are hard set in terms years of that, experience with this, etc. not that a lot if not most employment opportunities do work in the way you understand. however, you'll find that there is a lot of wiggle room out there. some relaxation of requirements comes from a wildly unprepared employer, belying an unpleasant work experience. other times requirements are relaxed and gambles are made simply because you are in boom times, or its really hard

  • by wild_fire1979 ( 1384927 ) on Tuesday October 14, 2008 @12:46AM (#25365057)
    You could use the QA experience to your advantage. Since you have a QA mindset you will make a great SDET (Software Dev Engineer in Test). An SDET writes code to test the code written by Devs. This involves writing service level automation frameworks. Test tools to make automation tasks easier and also UI level automation. Such a job allows you to keep your QA skills and at the same time showcase your coding talent. If you show enough panache for being a coder, you can make a move as an SDE which is a much easier transition than going from QA to SDE. Plus SDETs are paid nearly at par with SDEs. Companies that you should be looking at: Amazon Microsoft Research in Motion Real Networks Google. Another way is to join consulting firms like Volt which allows you to work as a contractor in Microsoft. If you do well and get recognized, you can apply in MS and get selected. Hope this helps :)
  • Because I was in the exact same situation, when I received my BS in 2001. In fact, I even ended up getting a Master's Degree, while I continued working in tech support to make some cash. In a lot of ways, I enjoyed my older job a lot more. As someone who wanted to be a professional programmer (and was a hobbyist programmer for years), I was severely disappointed in my job. When you do something you don't enjoy, programming can be the dullest career possible. As someone who enjoys coding for the PSP in my s
    • Re: (Score:2, Interesting)

      by Trevin ( 570491 )

      I was in the same situation when I graduated in 1991. In hindsight, I probably would have been better off if I had decreased my academic workload and gotten a part-time coding job like a lot of my classmates did. Instead, I took all the classes I could to finish college in 3 years (with AP credits + a summer term), and ended up with a degree but no work experience. It took me years to find each of my programming jobs, due to both my lack of experience and also market trends.

      Two of the jobs I did eventual

  • by Lafe ( 595258 ) on Tuesday October 14, 2008 @12:49AM (#25365067) Homepage
    I hire programmers.

    I hire entry-level programmers. For what it's worth, the last couple I've hired have been from India.

    I look for a couple of things when I'm hiring entry-level. The first is experience. I'm not talking about professional experience, you won't have any of that yet. But what have you done? Have you done an internship? What have you done in your spare time? What have you done on your own? Can you demonstrate useful skills? Can you debug a program?

    The first thing I'm going to throw you into if I do hire you is maintenance. Find a bug, fix a bug.

    It's about attitude. Technical competency will be low at your level... but do you know how to find out what you don't know? Do you know how to research a problem? Do you know how to find an answer off the internet? Do you know how long to work on a problem on your own, and when to ask for help? When I show you how a certain thing is done, can you watch me once, and then pick it up?

    Most programmers are bad at interviews. Most stink at writing resumes. So it's mostly going to be about other things. If you can make friends in the right circles. If you can get a recommendation from someone I've heard of. If you can show me that you have hunger and drive to get ahead... then I'll hire you in a heartbeat.

    I'll keep you on if you don't mess around, but dig deep into the problems you're given. I'll be delighted if you bug me for answers when you need them. I will gladly explain concepts if you'll gladly listen and run with what you've been taught.

    I only get so many openings per year. I've turned down folks for the wrong attitude most of all. I've turned down folks with professional experience if they kept a narrow focus and never ventured out of their comfort zones. I've passed on people who believe that programming is something like FrontPage, and that they shouldn't have to work hard, or understand much, to make a cool application.

    I guess, mostly, I look for people who would be programming something even if they weren't getting paid.

    Is that you?
  • traditionally (Score:3, Informative)

    by discogravy ( 455376 ) on Tuesday October 14, 2008 @12:50AM (#25365079) Homepage

    a) work cheap
    b) work someplace crappy that doesn't care
    c) build some exp with self-made projects (OSS, make your own game, etc)
    d) expand the duties of your current position (depends on how viable this is in a particular job, of course, and how receptive they are to it.)

    alternately, you could make your skills attractive by hitting up the keywords they want to hear (php, perl, scripting, java, c, whatever)

  • If you like the company that you are in start programming your own tools and solutions, let other people use them. There are tons of things you can do in QA along those lines. Also, it is important to start talking to the software engineers. Most companies like to hire internally if you can exhibit some capability.

  • by fluffynuts ( 1004256 ) on Tuesday October 14, 2008 @12:53AM (#25365105)

    I know *exactly* where you are coming from, having finished a programming course about 8 years ago, and having to deliver pizza (hey, a job is a job!) whilst waiting on the people who ran my course to find me a job (as they had promised). Of course, they started demanding the money for their course (which they were supposed to extract from the people they got me a job with... catch-22 deluxe).

    Long story short: you should first see if there is some way you can relocate within your current company -- if they are forward-thinking, they will try to help you "be all you can be"; if they aren't, you're better off somewhere else anyway. Which brings me to the other point: you will have to accept the first programming job that you can find, irrespective of pay, or even environment. If you can prove flexibility, it doesn't matter where your programming roots are: a good company will realise programming talent irrespective of development environment. Take this from someone who initially had a side-course of C on a Chemical Engineering degree, which lead to taking a focussed programming course in COBOL (yes, I know, horrid stuff!), which landed my first job doing VB, which got me my second job doing ASP (and then PHP), which prepared me to work for myself for a while in TCL/TK, PHP, ASP; on to a job in primarily Delphi, and then on to a C++ position, now a C++ / "whatever I want to use" position. Of course, there were helpings of SQL, shell scripts, Python (yum!) and Perl (scary!) along the way. I'm quite sure I've forgotten at least one...

    I know there will be people who object to such diversity. But hey, it's worked well for me. I have a good idea of programming principles and which tools will deliver what benefits to my current project.

  • Social connections are vital for getting a job unless you have some other remarkable skill that's going to land you a job, or you happen to stumble upon a company during a hiring phase. Most of these connections should of been made in college, or in QA over the past couple years. Since you haven't made any of these connections I'm guessing you're an introverted type that tends to go unnoticed. I would suggest doing more to be sociable, and make a likable impression on people. Don't be clingy, and don't
  • Hide the QA experience by telling them that you really worked as a developer in a finance house for the last few years, but you're too ashamed to give details. They'll understand ;-)
  • by CrazyJim1 ( 809850 ) on Tuesday October 14, 2008 @12:57AM (#25365145) Journal
    If you can't get hired in the first year of looking, it makes it even harder to find a job because employers assume there is something wrong with you. I've only worked in a programming position for six months in the past six years I've been out of school. And nooooooo one wants to hire me because of it. I'm not crying myself to sleep though. My family is happy to support me, so I don't need money. I just keep working on my personal projects. Right now I'm wrote a 3d fighter that can have over 1000 people in the same room. I'm considering making it into a 100 level deep dungeon crawl like Angband crossed with a 3d Zelda. Its not easy, but eh, some people aren't lucky enough to get a job in programming.
  • Write Code. (Score:4, Insightful)

    by jcr ( 53032 ) < .ta. .rcj.> on Tuesday October 14, 2008 @12:58AM (#25365151) Journal

    Write code that interests you, sell it or give it away, and build up a body of work that you can point to.


    • Re: (Score:2, Insightful)

      by pifmag ( 633623 )
      JCR gets it right. And to the question the original post posed: "What kinds of companies hire programmers with no prior experience?" The answer: All kinds of companies - provided you show a passion for what you do, have some interesting pet projects you can point to, and think critically about problem-solving. When reviewing candidates for our openings, I rarely look at the education section of a resume. I instead focus on, in this order, (1) the pet projects a candidate can point to that they feel stro
  • I ended up doing IT out of college (between the first Internet bubble and the Web 2.0 one). I did manage to convince the IT department that a few custom scripts/programs here and there would be helpful to their operations. Still, 75% of my time was spent moving computers around, helping people with issues, and graduated to managing servers. That, however, made me really hunger for programming so I ended up thinking up projects on my own and coding them. I learned web related programming and AJAX when it

  • Open Source (Score:3, Insightful)

    by nEoN nOoDlE ( 27594 ) on Tuesday October 14, 2008 @01:04AM (#25365189) Homepage

    How can you read slashdot and not know about this little movement called "Open Source?" There are tons of projects out there that require programming help, and it's the best way to build your resume up. I'm a 3D Animator and it's somewhat the same hiring circumstance as programming. Nobody will hire you unless you've done something, and the only way to do something is to do it yourself. As a lead, I would never hire an animator who has nothing on their demo reel. All of the demo reel material that people come up with out of school is from projects they've worked on in their spare time. Why would it be different for programming jobs?

  • I didn't even finish my CS degree, and now have a decade of work experience programming. My first company was a small start-up that couldn't afford to pay much and was willing to accept my insistence that I could do the job they needed. Yes, my salary started at $30k. Two years later at the same company, it was $45k. And with that two years of work experience I found a job at a new company... for $75k. It worked for me, at least!

  • from a manager (Score:5, Informative)

    by jaydonnell ( 648194 ) * on Tuesday October 14, 2008 @01:18AM (#25365245) Homepage
    I've been hiring programmers for a few years now and here is what I can tell you. 1. don't be afraid to send your resume to a job asking for 2 years of experience. Most applicants are absolutely terrible! I've often waited 6 months just to get one good resume from a programmer that wasn't asking for a ton of money. 2. Build something. Build something in your free time and put that on your resume. There are many times I would have hired someone in a heartbeat if they had simply done this and could talk intelligently about their project (for an entry level position). 3. aim for smaller companies if you are having a hard time getting hired. They don't use HR departments that filter resumes based on buzzwords and x years of experience.
  • by Eskarel ( 565631 ) on Tuesday October 14, 2008 @01:18AM (#25365247)
    Employers in general, and in the US in particular, are, for the most part, totally crap at writing job adverts.

    They write up things they'd like as opposed to what they actually need, and guess what, they don't get them.

    When I first graduated, I saw a job looking for someone with 5 years experience with .NET. At the time, even the educational version of .NET had only been out for about a year and the commercial version had been out for about 3 months.

    Since this company was not paying well enough to steal developers away from Microsoft, and wasn't anywhere near Redmond, one must presume that their eventual candidate did not actually have these skills.

    Most employers ask for way more than what they're going to get, and in most cases more than they actually need.

    This is particularly the case for people in entry level jobs, they want a guru for intern pay, and it's not going to happen.

    Try for everything position you think you can do, be willing to take a pay cut if you have to in order to get your foot in the door, and have some good clean code samples to provide if you're asked.

    When I was fresh out of Uni I did the same things you did, but I've since learned, that if you don't try you'll never get anywhere, and, especially when you've still got a pay check coming in, the cost of throwing out resumes is pretty much nil, and the rejection isn't so bad.

    You should of course, as others have said, also make sure that folks in your own company know you want to move up in the world, and take whatever opportunities you can get your hands on internally. Even if the job isn't exactly where you want to go, moving up will make you look a lot better on a resume than sitting on the bottom for years.

    • I'll second that (Score:3, Insightful)

      by Sycraft-fu ( 314770 )

      Even in good job advertisements they sometimes ask for more than they are actually after. Reason is they'd be willing to hire someone more high level and/or they don't want to scare people away in thinking it's a crap position.

      One of my first tech jobs in university was like that. The school paper had an ad that said they were looking for a webmaster. My roommate told me I should apply, since I was computer related and I wanted a job. I didn't think so. While I had web experience, it wasn't a whole lot. Cer

  • Work for free (Score:2, Interesting)

    by Tablizer ( 95088 )

    You need to get some real experience that you can use as a reference. Put an ad on Craigslist or the like to program for free in exchange for a reference. You'll have skip the $ for a while, but it takes money to make money. You still have your QA job, right?

    I've had to low-ball when changing languages in the past in order to get that experience for reference. It goes with the profession (unless you are a good liar with a lots of liar friends).

  • Here's what I did. (Score:2, Informative)

    by mabersold ( 1171751 )
    I got my degree in computer science and began grad school, but dropped out after one quarter. Not having had any real world experience, I felt like I was up a certain creek without a certain instrument. I began to use a local placement agency (one that specialized in tech jobs) to find a job in the Seattle area, and after a few searches I found one that looked interesting. No, it was not a full-time job, it was an internship, but it was a development position with an up-and-coming company that would, at
  • I dont understand (Score:3, Informative)

    by JimboFBX ( 1097277 ) on Tuesday October 14, 2008 @01:23AM (#25365283)
    I work in QA and I do plenty of programming of multiple varieties. I'm A CS graduate 1 1/2 years out of college. I can see where your coming from, in that QA work isn't exactly solving mathematical problems, and often involves "plagiarizing" someone else's code (i.e. from another department who had to work with the product before you did). However, it can also be a lot of black box debugging, and forces you to look over your code and check that it works before you call it "released". Its not exactly the skill-set I prefer, but the fact I consider myself better than some of the people who've been here for 6 years already show I possess the skills to get good at another type of job, even if the skills for my current job are, IMO, stuff I learned in AP CS in high school.

    Another question is- what kind of QA? Does your job title contain the words "engineer"? Are you writing programs for hardware that tests an object or code for test programs? You shouldn't have to worry about much if it does, QA is a very common entry level position and getting out of it is usually a matter of simply other positions opening up and less to do with your own skills.

    And this isn't a dupe, QA is NOT the same as tech support.
  • tech support... (Score:2, Informative)

    by Anonymous Coward

    when I got out of college with my CS degree I couldn't find an entry level programming job at all. I had plenty of interviews, a few site visits event, but never any offers, and it was always because I did not have any out of school experience.

    I ended up getting offered an assistant manager position at the bagel shop where I worked, I was happy because I made my age and then some, (salary = my_age * $1000) but I soon found that I was not getting as many interviews as I once did.

    I ended up quitting my job t

  • People in this business move around so much there's always a ridiculous amount of recruiting and interviewing. Until you have a real resume with real experience, just play the numbers. Send out 6-10 resumes a week. You'll find someone desperate enough to give you a chance.

    These days I'll let my network know, cherry pick a couple of openings to apply to and if I get desperate, put my resume on Monster. I got my first programming job by working for free and only stayed in the game by resume spamming wh
  • by VirexEye ( 572399 ) on Tuesday October 14, 2008 @01:40AM (#25365371) Homepage

    Right after graduating I managed to get into the game industry as a programmer. The trick?


    If you look on craigslist (I'm in the SF bay area so your mileage my vary) there are tons and tons of postings looking for cheap/free programmers in the form of internships. You gota put in your time there instead of putting in your time in QA.

    Since you have been in QA a few years, you should talk to your manager about moving on to a jr level programmer position in your company. If they are willing to work with ya, problem solved. If not, time to move on ASAP.

  • From your current position in QA, see if you can get permission to add unit tests and other automated tests to the Developer's code base. Introduce the developers who aren't writing tests to Test Driven Development.

  • by il dus ( 244149 ) <> on Tuesday October 14, 2008 @01:49AM (#25365419) Homepage Journal

    Why not move from QA to dev in your current company? You (should) already know the product, so moving over internally will be a lot easier than switching to an entirely new place where, not only are you an entry-level developer, but you also don't know the product and the internal processes.

  • Most smaller companies can't afford to hire someone without experience. Big companies like defense contractors or the Government can afford to hire newbies and train them. I got a job straight out of undergrad working for the Navy with a BS in Computer Science. I can stay here for 4 more years and then move around once I am "experienced". But, there's something nice about telling the contractors what to do.
  • I never did get a CS degree. I started off in technical support at a printer company (had to be able to rip a laser printer apart and reassemble it and have it work before I could touch a phone, so I find most tech support these days insulting), then got into QA at the same company.

    Once that company laid me off, I got into QA at StorageTek, where I wrote test tools in C, Perl, and various Shell scripting languages. I was doing development there, too, before they closed our office.

    From there I got another

  • by JoeMerchant ( 803320 ) on Tuesday October 14, 2008 @08:23AM (#25367181)

    Write programs, open source, hobby, whatever. Then, apply to those jobs that "require 2-5 years experience", and show projects you have worked on in the last 2-5 years.

    If you're applying to work for me as a programmer, you will be performing a small programming test before being hired. I weigh 60% of my hiring decision based on that test - with strongest consideration given to communication skills, did you understand the problem before writing the code?

    Lots of guys with 10 years programming experience leave the room frustrated after an hour (there's a sample program already written and compiling, all you have to do is write additional code to add a couple of features.) Kids with zero "real world" work experience tend to do better on the test for some reason, and they also seem to make more productive employees. We started giving the test when one of these $150/hr consultants with 12 years of experience (in a field that was 8 years old, but he had an explanation for that...) couldn't program his way out of a paper bag, given a month's time.

    Results count.

Things equal to nothing else are equal to each other.