Getting Hired As an Entry-Level Programmer?
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?"
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.
I assure you that I work with some of the best devs that are in the market right now. They are really good, but when you have to deal with millions of lines of code across a extremely complex system, bugs happen!!! :)
Unit testing, code coverage tools, continuous build systems can just mitigate the effect not eliminate bugs.
Even QAs just make sure that the quality is within acceptable parameters they can't eliminate them completely.
Are you a professor? or do you work in theoretical software practices? Have you EVER worked on commercial software? I work for a certain media co., on a certain well known video player. There are so many things that simply cannot be tested except by a human. Management is always begging QA and engineering to try and come up with ways to automate testing of these things, but no one ever gets anywhere.
How can code analysis ever verify:
* YUV->RGB color conversion (there isn't even a single right answer to this, it's subjective)
* A/V Sync
* Audio language selection (how do you write code to tell if the guy is speaking in french as opposed to spanish?)
* GUI Widget alignment
* Subtitle Placement
The list goes on and on. Some of these things do have unit tests, but bugs pop up anyway, bugs which never could have been caught by any unit test. Some parts of our code lend themselves to unit tests (file parsers) and those sections are heavily tested. Other sections simply don't offer the opportunity for analyzing the results via code. All-in-all, a major update to the player can require over two months of QA by a team of 8 testers. This is in addition to the thorough unit tests you claim _should_ take care of all that.
"The GPL is viral by design, like any good religion."