Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
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:
  • 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

  • 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.
  • Start coding (Score:5, Insightful)

    by robogymnast ( 755411 ) <crobichaNO@SPAMgmail.com> 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 Anonymous Coward on Tuesday October 14, 2008 @12:27AM (#25364913)

    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.

    I am not sure why you feel QA is a shit job. Try working as an SDET (QA) in comps like Microsoft or Amazon, it is way more difficult than an SDE.

  • by jmorris42 ( 1458 ) * <{jmorris} {at} {beau.org}> 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 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.
  • 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...

  • 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 Ethanol-fueled ( 1125189 ) * on Tuesday October 14, 2008 @12:40AM (#25364999) Homepage Journal
    I personally don't feel QA is a shit job, I was just using strong words to improve contrast.

    There's nothing wrong with having a stable job which has something to do with your degree.

    I blame our parents :) for telling us that a college degree will land us a badass job and a big-ass house right out of college when the unfortunate reality is that the fresh mechanical engineering graduate will take their first job as a hinge or pipe designer or that a CS grad will have to code lazy kids' homework assignments for hire!
  • by bishiraver ( 707931 ) on Tuesday October 14, 2008 @12:43AM (#25365017) Homepage

    A good QA developer is just as necessary as a good developer. We all like writing original code, and it takes a special kind of person to write smoke tests, et al, for someone else's code. At my previous job, our product's QA department was just as important as our development department to get the monthly releases out on time.

  • by Anonymous Coward on Tuesday October 14, 2008 @12:45AM (#25365053)

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

    >>start some of your own projects

    Agreed. If you really want to be a programmer, you'll find yourself doing it. You'll make opportunities wherever you're at to program. Websites for family, for small businesses, etc. Or small applications that are generally useful. These small things can lead to bigger things.

  • 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?
  • by Anonymous Coward on Tuesday October 14, 2008 @12:52AM (#25365093)

    Top flight developers producing quality code don't need large QA departments. They've already written well-designed, bug-resistent code, unit tests, integration tests, and performance tests, all in the course of producing something that works (the first time).

    This is one of the funniest things I have ever read. You're not being serious, right?

  • 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.

  • by jrhawk42 ( 1028964 ) on Tuesday October 14, 2008 @12:54AM (#25365107)
    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 be judgmental these two things ruin social interactions. Eventually you'll find yourself moving in the right circles if you have the ability to actually become a good programmer.
  • Comment removed (Score:4, Insightful)

    by account_deleted ( 4530225 ) on Tuesday October 14, 2008 @12:58AM (#25365151)
    Comment removed based on user account deletion
  • by Anonymous Coward on Tuesday October 14, 2008 @01:01AM (#25365167)

    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! [wittyrpg.com] 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: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.

  • Open Source (Score:3, Insightful)

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

    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?

  • by Revvy ( 617529 ) on Tuesday October 14, 2008 @01:13AM (#25365221) Homepage
    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 holding you up?
  • 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?

  • Re:Write Code. (Score:2, Insightful)

    by pifmag ( 633623 ) on Tuesday October 14, 2008 @01:16AM (#25365235)
    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 strongly about (and if they're not work related, that's better), and (2) how long (or short) of time they've spent with previous employers. To me, if you love doing what you're doing, you'll do it for free. And if you're willing to do it for free, you'll find a company (like ours) willing to pay you to do it eventually. Just stick with what you love.
  • Resume spam (Score:2, Insightful)

    by PathologicalLurker ( 732399 ) on Tuesday October 14, 2008 @01:30AM (#25365321)
    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 when times were bad.

    Try recruiters. I get contacted by recruiters every few months asking if I know any junior candidates. It's always a possibility.
  • Re:Try Harder (Score:3, Insightful)

    by Cynonamous Anoward ( 994767 ) on Tuesday October 14, 2008 @01:38AM (#25365361)
    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!
  • Re:Repeat (Score:5, Insightful)

    by mooingyak ( 720677 ) on Tuesday October 14, 2008 @01:41AM (#25365379)

    There's a world of difference between a guy who's been doing help desk and a guy who's been doing QA. The responses to these two questions aren't going to be the same.

  • by kaka.mala.vachva ( 1164605 ) on Tuesday October 14, 2008 @01:42AM (#25365385)
    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.
  • 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 dice.com - 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 il dus ( 244149 ) <`ten.skeegkcor' `ta' `noj'> 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.

  • 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!"
  • by cdavis.7m ( 1232536 ) on Tuesday October 14, 2008 @01:55AM (#25365441)
    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 actually agree with you, but want to play devil's advocate to your examples here... Hopefully to improve whatever your well known media player is (I use VLC exclusively these days, but I'm always open to alternatives if something better comes along)

    * YUV->RGB color conversion (there isn't even a single right answer to this, it's subjective)

    Which is why it should be a user option... give the user advanced controls over this and they'll love you forever. Just find one nice default and leave it at that for the less savvy users - this is simple enough for the developer to do without needing someone in QA to do it.

    * A/V Sync

    I'll grant this one.

    * Audio language selection (how do you write code to tell if the guy is speaking in french as opposed to spanish?)

    Again, simple enough for the developer to do without needing someone in QA

    * GUI Widget alignment

    Make your app skinnable. You'll never please everyone otherwise. For the "default" skin, just keep it DEAD simple and follow standard practices on your OS for layout (I'm thinking, as an example, Visual Studio's "snap to place" placement stuff)

    * Subtitle Placement

    Again, should be a user option. What I would like to see in this realm though is something clever enough to recognise text on the movie I'm watching and avoid placing the subtitle over it. This, I'm sure, would be extremely tricky, but VERY cool.

    My comments referring to "simple enough for the developer to do" also relates to the kind of project you're talking about here. When the dev goes home from a hard day at work and wants to put a movie on, he'll probably fire up the media player that he's been working on. Nothing makes for a real world test like an actual real world test!

  • by foeclan ( 47088 ) on Tuesday October 14, 2008 @02:05AM (#25365501)

    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 QA job where I wrote more test tools and automated a lot of tests (C, Perl, Java, various shells). They pulled me out of testing and into development, where I spent the last 4 years.

    Test tools and automation worked for me as a gateway out of testing and into development. Talk to your manager. Let them know you're interested in a development role. On your resume, play up your skills, not your job title. If you're not doing much programming in this QA job, use it to get into another QA job that does call for it.

  • by Anonymous Coward on Tuesday October 14, 2008 @02:12AM (#25365543)

    All our last several hires we have done have been directly due to their involvement in open source projects we are directly or indirectly interested in.

    So, find an open source project which you really like and actively work on it. It matters less what the project is than to find one that you can be passionate about and get fully involved.

    If you can't find an open source project that really brings out your passion for development, it's probably not the right career field for you.

  • by YttriumOxide ( 837412 ) <yttriumox AT gmail DOT com> on Tuesday October 14, 2008 @02:18AM (#25365569) Homepage Journal

    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 keen to hear how many people here are developers that DON'T do web stuff...

  • Top flight developers producing quality code don't need large QA departments. They've already written well-designed, bug-resistent code, unit tests, integration tests, and performance tests, all in the course of producing something that works (the first time).

    If you have to pay a phalanx of QA engineers to find bugs post-facto ("just as important as our development department"), you're doing it wrong. The bugs shouldn't have been there to begin with.

    If you really believe this, please tell me what company you work for, I want to short their stock for when the company's poor quality and shlock coded applications cause it to go bankrupt!
    (Only partially kidding)
    And you spelled "bug resistant" worng. :) (Yes, I know that's 'wrong' but one of the rules of the Internet is that spelling flames must invariably have a mistake in them!)

  • Re:Simple (Score:3, Insightful)

    by bigtangringo ( 800328 ) on Tuesday October 14, 2008 @02:31AM (#25365623) Homepage

    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.

  • by Doogie5526 ( 737968 ) on Tuesday October 14, 2008 @02:42AM (#25365671) Homepage

    Which is why it should be a user option... give the user advanced controls over this and they'll love you forever. Just find one nice default and leave it at that for the less savvy users - this is simple enough for the developer to do without needing someone in QA to do it.

    This sounds like more work (QA with optionX on, QA with optionX off, evaluate if optionX does what it's supposed to do)

    Make your app skinnable. You'll never please everyone otherwise. For the "default" skin, just keep it DEAD simple and follow standard practices on your OS for layout (I'm thinking, as an example, Visual Studio's "snap to place" placement stuff)

    Now this sounds like a whole lot more work. I agree with a dead simple, standard practices, default skin, but I HATE this obsession that each and every tool needs to be completely skinnable. Why the heck would anyone want each an every app to look and work completely inconsistently? 99% of the themes are junk and most have the same layout of the original app, just different colors. I don't know how or why, but many have backgrounds/text that make the most important parts of the app hard to distinguish from the rest of the app. There are very few skins that are decent out of the many sea of horrible ones. I can't think of any instance where I preferred it over the default (since the default skin is what the whole app was designed around), and I've tried themes for winamp, gtk, kde, windowblinds(xp), wmp, firefox, and probably 20 more applications that don't need it.

    They would still need to QA to see if widget and placement were working. In addition to writing this theaming engine.

    * Subtitle Placement

    Again, should be a user option.

    From what I understand that information is usually encoded in the original track. So they're just testing if the video player is positioning properly.

    You make it sound like they wouldn't have to write or test the code that does these things. In practice it causes way more testing and limitations when refactoring code.

  • Re:Simple (Score:2, Insightful)

    by dartarrow ( 930250 ) on Tuesday October 14, 2008 @02:53AM (#25365711) Homepage
    Not at the WhiteHouse it aint
  • Top Cod3r? Is that you?

    Get back to TDWTF - we're already missing you your tasty flamebaits... ;)

  • 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 nvatvani ( 989200 ) on Tuesday October 14, 2008 @04:31AM (#25366103)

    I feel that is a bad idea because an Internship implies that the inexperienced individual will be a slave of authority and incapable of setting his own direction of specialisation.

    My advice instead is to keep your QA job, but be inflexible with it. By inflexible I mean you walk in the office and 8am, and then shoot out at 5pm - regardless of the circumstance. Ofcourse you must exercise your own judgement if you need to break this rule assuming a deadline is looming. But if you break this rule more than 20% of the time (more than once in every 5 working days) - you have lost your objective.

    The reason for the very inflexible hours is so that you can shoot home and spend 2 hours each working day actually working on your programming skills. There are bucket-loads of Open Source projects that require actual people - regardless of your talent or experience. The only condition all projects require is that you are able to learn new things relatively quickly and are good at the new things you are learning - something which should be a breeze given your CS background.

    For example - take the Ubuntu project - they actually have a Wiki page for peeps like yourself wanting to get into the game: https://wiki.ubuntu.com/ContributeToUbuntu [ubuntu.com]

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

    by Sycraft-fu ( 314770 ) on Tuesday October 14, 2008 @07:11AM (#25366751)

    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. Certainly not enough to run a site of that magnitude. However, my roommate said do it anyhow, since it doesn't cost anything so I did.

    Well I got an interview, then got hired as the assistant webmaster. Turns out that is really what they were after. Old webmaster had left, assistant was moving up, they needed new assistant. However, they didn't want to preclude someone who was real good from coming on as as the webmaster. Had a good enough candidate applied, the assistant would have stayed as an assistant and they'd have hired a new webmaster.

    So while I wasn't what they were asking for as a webmaster, and even not ideally what they wanted for an assistant, I was the best applicant they got so I got the job.

    Remember that it doesn't cost anything to apply. So if you see a job you like, that you think you could do, apply for it even if you aren't ideally qualified. Might turn out that you are what they are looking for and they hire you/

  • by Rigbyd ( 1190441 ) on Tuesday October 14, 2008 @08:06AM (#25367041)

    A good QA developer is just as necessary as a good developer. We all like writing original code, and it takes a special kind of person to write smoke tests, et al, for someone else's code. At my previous job, our product's QA department was just as important as our development department to get the monthly releases out on time.

    Top flight developers producing quality code don't need large QA departments. They've already written well-designed, bug-resistent code, unit tests, integration tests, and performance tests, all in the course of producing something that works (the first time).

    If you have to pay a phalanx of QA engineers to find bugs post-facto ("just as important as our development department"), you're doing it wrong. The bugs shouldn't have been there to begin with.

    Speaking as a software engineer that works for a small software company, QA Engineers are essential. Not because we have sloppy developers who write poor code, but because software engineers can't predict every possible way someone will interact with out code. QA Engineers have proved invaluable in finding those edge conditions we never coded for because it never occurred to us. ... Plus they help catch the *stupid* mistakes that everyone makes from time to time. (-;

  • 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.

  • Freelance (Score:1, Insightful)

    by Anonymous Coward on Tuesday October 14, 2008 @08:24AM (#25367185)

    Freelance in your spare time. Being able to show examples of your work may be as good as a line on your resume that says you were at company $x for $y years.

  • Write FOSS (Score:1, Insightful)

    by Anonymous Coward on Tuesday October 14, 2008 @08:48AM (#25367331)

    You can join an open source project. Doing so will provide you with experience if not fame, and it'll look good on your resume. Moreover, that way, people can read your code and see that you rock as a programmer.

  • by gdad2 ( 740677 ) on Tuesday October 14, 2008 @09:20AM (#25367671)
    I got hired as a programmer five years into my career by a senior programmer friend/mentor who joined a start-up company. All I had done before that was help desk and sales support. He knew me pretty well (we were longtime drinking buddies) and knew I had the aptitude for it. The company sucked, but working for/with my friend was a great learning experience and set me on a great path. Thanks to him, I'm making twice as much as I would be if I had stayed on that career path, after I put up with working for a shakey start-up.
    Therefore, I suggest "playing golf with the right people" is the way to go. Obviously, if golf is not the thing, figure something else out. Try joining programmer user groups and giving presentations. If you look like you know your stuff, they will trust you even if you don't have the resume to back it up.
  • by Anonymous Coward on Tuesday October 14, 2008 @09:52AM (#25368103)

    I blame our parents :) for telling us that a college degree will land us a badass job and a big-ass house right out of college when the unfortunate reality is that the fresh mechanical engineering graduate will take their first job as a hinge or pipe designer or that a CS grad will have to code lazy kids' homework assignments for hire!

    Maybe you should try blaming yourself for not checking it out thoroughly...

  • Re:Build something (Score:3, Insightful)

    by Chabil Ha' ( 875116 ) on Tuesday October 14, 2008 @10:01AM (#25368241)

    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.

  • by raehl ( 609729 ) <raehl311@@@yahoo...com> on Tuesday October 14, 2008 @07:36PM (#25376343) Homepage

    I pulled it out of my ass. The actual number is going to depend heavily on the particular task at hand.

He has not acquired a fortune; the fortune has acquired him. -- Bion

Working...