

Ask HN:  Can we end the "anyone who can code has a job waiting for them" meme? - mspaint

How many of you honestly know of a job available for anyone who can crank out some interpreted code and knows HTML?  Or even positions open to recent college graduates who "only"[1] have a CS degree?<p>It would seem the actual threshold for a software engineer position, is at least:<p>* CS degree<p>* Good knowledge of algorithms and ability to recall and implement them<p>* GitHub page and some nontrivial tool or open source contributions<p>A typical non-senior-level job description might call for ruby, javascript, SQL, knowledge of algorithms, and personal projects that would (presumably) impress whoever is hiring you.<p>I have seen anecdotes recently of liberal arts people learning one language and getting programming jobs, however I have trouble believing that this is very common at all, because I can't imagine where they are finding these "give 'em a chance" jobs.<p>Let's not confuse competition for mid and senior level software engineers with JOBS FOR EVERYONE.<p>[1] Even at a state university, its more than possible for an engaged person to work with everything from algorithms to Lisp to robots to compilers and many other things HN holds dear, just from classes.
======
apsurd
I've always assumed when people said "if you can code" they meant, _well_.

From what I've heard/experienced the thinking is there is an overwhelming
percentage of software developers who are mediocre. So all that I take your
meme to mean is that if you are better than that majority then yes, a job is
waiting for you - I agree.

I don't think your average developer knows how to write native, optimized, sql
queries. I actually am peeved more and more with rails because you basically
spend all your time learning how to be a _rails programmer_. Your world
becomes AR voodoo, and you work toward _gem integration_ mastery. It's kind of
weird imo. I doubt most rails devs know how to write a gem!

So that's just my take on it from things I've seen and experienced. It's
generally good advice to not reinvent the wheel. Well in the rails community I
feel they take it too far. How do you expect to get better if you let everyone
else program for you? Forcing yourself to build out some of your own
components may take a lot more time but those are the things that level you up
as a developer.

I can't say this approach is common, and therefore, _good programmers_ are
rare.

~~~
caw
I was noticing this, as I've been trying to learn Rails. I already know some
Ruby and I wanted to try to learn the web framework so I just didn't know
CakePHP. The gem thing is getting to me. I understand gems as a function of
something like user authentication or sending emails. That works great, it's
like Perl modules.

Now I wanted a Ruby based shopping cart to make an e-commerce site. From my
googling, there pretty much was only spree. It's all voodoo because, no,
you're not supposed to modify the source code. You're supposed to use _yet
another gem_ to patch the code so you can have your custom additions, or you
code based on hooks. But the documentation for this is scarce, especially
since it seems they just changed this in one of the latest releases. Drupal,
on the other hand, has extensive documentation and random blogs. I don't know
if everyone else "just gets it" and I'm just left out here in the cold because
I'm new.

I gave up and just worked on the Agile Web Development with Rails shopping
cart. I now understand 100% of the code base I'm using and can make it do
whatever I want.

I would like to think I'm a decent coder, as I can produce readable code,
albeit not at a super fast speed, but I think that's a function of not doing
it every day at work since I'm in IT and not web development.

------
SHOwnsYou
Honestly, I would expect someone with the qualifications you listed to be able
to easily get a job at a highly desired company (fb, MS, google, fogcreek,
etc).

Only having experience with a scripting language can easily land someone a
job. I don't know anyone that is good at javascript or PHP that is also out of
a job.

I don't know anything about algorithms, how to write a bubble sort, and I
refuse to do anything open source. Still, I've always had a good job and even
now have a decently successful consulting practice.

------
glimcat
Anyone who can code, no.

Anyone who can code well while remaining sensitive to business concerns and
doing some level of networking? Depending on location, it can be far easier
for them to find a job versus the average, even normalizing for factors like
level of education. But at this point, we may be talking something like the
top 5% of the industry, perhaps less.

------
jnbiche
Less and less web/software development jobs are specifically requiring a CS
degree, based on my own observations. The ones that do are typically large
companies with codified hiring standards, and governments.

------
JoeCortopassi
That being said, if you find one of those "give 'em a chance" jobs for an
iPhone developer, feel free to throw it my way :-)

------
Tangaroa
Don't forget about prior work experience. A few of my college classmates did
manage to find work after graduation, but that requirement held me back for a
long time. I've tried asking companies to offer internships, but most have no
concept of hiring below the journeyman level.

The bar has also been rising for entry-level experience in the rare cases
these jobs are offered. Back in the 1990s, entry-level programmers were not
expected to know SQL, HTML+Javascript, the LAMP stack, or how TCP/IP works.
Now it is quietly expected that everybody knows all this, and except for SQL
these skills are not taught at university. Students who do not pick up these
skills on their own time will face an especially difficult time finding work.

All of the anecdotes I've heard of someone learning one language and getting a
job in it involve hard-science postgrads and professors who already had very
good analytical skills and were programming something related to their field
of interest. It has been at least a decade since you could get a job by "just
knowing HTML" -- which was not true at the time, since you were also expected
to be an excellent graphic designer -- and fifteen years since I've heard
anyone say you could get a programming job by being fairly smart and "good
with computers". As for the presence of job opportunities, journeyman and
senior positions each easily outnumber entry-level positions. Most companies
do not hire at the entry level at all, and it is getting harder to find jobs
that are slightly above the entry level in requiring only 2-4 years of
experience rather than 4-6. It's a sign of the times.

Employers want experienced coders, and can get them with the economy the way
it is, but everybody has to start somewhere. Most people who "can code" could
barely code when they got their first jobs, and they got better by facing new
challenges and having their code reviewed by more experienced supervisors. The
experts-only economy is going to leave a lot of people behind by failing to
give them these opportunities.

------
davidhansen
This meme originates in the tech "hotspots" such as silicon valley, nyc, etc.
Outside these insular communities, the job market for developers is not nearly
as accomodative.

If you live outside these areas, I am guessing you're comparing the kind of
things said in the HN echo chamber to your own experiences outside "The
Valley", and finding some dissonance as a result.

~~~
decadentcactus
This is what I'm starting to realise. I live in Australia, and, well, it
doesn't seem that way.

Either that, or I suck, and aren't a "good developer who can get a job on the
basis of having a github account"

