

Ask HN: How do you *really* get a good Software Engineering job? - seeminglylost

It seems like anything I do is never good enough. I can know how to code in multiple languages and provide decent coding examples. But, there is always one little thing that I didn&#x27;t have in order to get the job. It feels like job postings are not very honest at what they are looking for either. An example would be of a &#x27;Frontend Engineer&#x27; job posting that I got an email response back from the hiring manager for, and he asked for a link to a fully functioning and non-trivial web app that I had built before. Wtf? I have not built that as of now (even though I am confident I could). And it would not have been in the companies preferred stack anyways. I just want to know one thing: WTF do hiring managers <i>actually</i> want? And why do they almost <i>never</i> seem know themselves? Sorry for the rant but it just seems like this industry is a load of bullshit.
======
enkiv2
A lot of job listings are actually for internal candidates, and although the
employer is required by law to perform interviews, the external candidate will
never get the job over the internal candidate (since the external candidate is
a higher risk). What hiring managers actually want is a candidate that has
been personally vouched for by developers they trust, and ideally an
internship or contract period at a lower pay rate so that they can pull out if
the candidate isn't as good as they say they are.

So, make friends with people who have jobs in the industry and convince them
that you have the necessary skills.

~~~
StandardFuture
This is honestly not much better than nepotism. What happened to merit?

~~~
dllthomas
What happened to merit is that "make friends in the industry and convince them
you have the skills" is a more reliable means of finding merit than a typical
interview process. It also has tremendous blind spots and will exclude many
legitimate candidates in an unequal way and that all sucks, but the goal is
"find someone reliably competent you can work with." It's really hard to
determine either of those without long term interaction.

------
dllthomas
Most important is to keep looking, and not let the search get you down (which
is _hard_ , for sure). Remember that looking for work is a full-time job.

My current position I found through a connection, and that doubtless helped,
but I've gotten jobs before through responding to university postings and
craigslist ads. I've also been turned down at plenty of places that I've found
both ways - for any given position, most of the time you won't get it (of
course, since there are going to be multiple candidates).

~~~
neduma
>> Remember that looking for work is a full-time job.

+1

Being employed is side effect of that.

------
MortenK
Hiring managers are looking for proof that you are as good as you say you are.
Inexperienced / young programmers often vastly overestimate their own
abilities and experienced managers know this. Having hired a couple of gung-ho
self proclaimed supermen only to see them not deliver, the hiring manager now
wants to see proof.

If you are new in the industry, you don't have people to vouch for you. That's
why you get requests to see your actual work, rather than own cherry-picked
code examples.

"I could do it easily if I just got the chance" won't fly if you are in a
location where there are more developers than jobs. You'll have to make
yourself stand out. The easiest way to do that is to build stuff. Doesn't have
to be groundbreaking stuff, but it should work and be within your "specialty"
language(s).

Then next time someone asks you for a non-trivial example, you can just send
them a couple of your projects, rather than a couple of clever code snippets.

------
codegeek
"there is always one little thing that I didn't have in order to get the job"

I hear you. Many times, it is not even you. Like you said, the hiring manager
is probably too hung up on _one specific item_ that they really think will hit
the home run. Now, that depends on the situation. If they need an expert in a
very specific niche for a 1 month contract, they probably care about that one
thing. If they are looking to hire someone fulltime who can grow in the
company, being hung up on that one thing is plain stupid.

"WTF do hiring managers actually want? "

I have been interviewed by tons of managers being a consultant. I would say
majority of them are not always sure what exactly they want. It can change.
For example, I interviewed once for a role which required a very specific
vendor system experience in finance. Apparently, that system was so niche and
new that they could not find anyone unless they poached from the vendor
directly. So the manager decided to look at other "relevant" candidates. The
problem: He had no clue what to look for. True story.

So don't get too upset about this. I say move on and keep looking. There are
many great hiring mangers out there who not only understand what they
want/need, they also know how to interview and find the right person without
being too hung up on one thing or other.

------
phantom_oracle
I feel your pain buddy.

A lot of good advice given so far.

Perhaps I can add another perspective to it.

Relocate to where demand outstrips supply by a big amount. Relocation is
tough, but if you pick the right spot, you will get a job by applying some of
those networking principles others have mentioned.

Cities/Areas I'd consider (where you will find it easier to get a job and do
interesting stuff) in no particular order: Silicon Valley, San Francisco, New
York, London, Berlin, [insert city name here], etc.

I can't think of anymore right now, but those are great places to look at
(unless you have enterprise-knowledge, in the form of C#, .NET - which changes
things).

It's ironic that programmers use technology everyday to eliminate
inefficiencies, yet nepotism in hiring is something even programmers face.
Based on this, consider your CV dead for a little while and hustle till you
find something.

Good luck!

------
pascal1us
Don't assume it's your fault.

Hiring, often times has biases. There could be any number of reasons: either
technical or personal. Hiring decisions are often subjective, despite the fact
that they try to be somewhat objective. And it's especially hard for people
with less than 5 years of experience. Keep trying, you'll get it eventually.

------
JSeymourATL
One way to get a good software engineer job is to zero-in on firms that look
like they are doing interesting work. Don't send them a resume. Instead,
approach individuals in a friendly peer-level manner. Start a conversation--
as a fellow coder, I was curious about the work you do.

------
dccoolgai
Avoid recruiters like the plague. Go to Meetups in your area. Got my current
job through doing that and it's awesome.

In DC, the custom at tech Meetups is to have a 10-minute "who's hiring" litany
before the talks start. I'm pretty sure it's that way in most other cities,
too. For mid-to-senior level devs lately, I hire pretty much exclusively from
the pool of people I see as regular attendees at deep-language meetups. They
are spending their free time getting better at their craft: best 1st-line
filter ever.

------
ankitgarg43
[https://medium.com/@mikeleeorg/how-to-find-great-software-
de...](https://medium.com/@mikeleeorg/how-to-find-great-software-
developers-15355bfb5880)

i guess this would help to some extent

------
TheFiachna
In my experience, even having non-trivial apps won't get you anywhere.
Networking is the only sure fire way to get a position where I am, and a lot
of that comes down to luck in finding the right people at the right time.

------
srblanch
I would say that besides technical skills, the number one reason I didn't
recommend people for hire is because of poor communication or interpersonal
skills. In today's environment, these are essential skills and you should
practice if you struggle in this area. Nobody wants to work with somebody that
is not a team player, no matter how brilliant they are technically.

------
wturner
I couldn't find anything so I gave technical tutorials a shot. I found some
companies to contract me, but the time involved basically makes the work a
less-than-minimum wage 'job'. I know front end development to a degree, but
I'm also below the poverty line. I can't answer your question but I can at
least validate your perspective first-hand.

------
gesman
Position yourself not as a programmer (or glamorous version of that: software
engineer), but as a person who can boost residual value of a business. People
like these are assets.

"Programmers", "developers" and "software engineers" are essentially
liabilities. These are the first to let go when things gets uncertain.

~~~
wturner
This sounds great but there is one caveat. The person that does the hiring
probably doesn't care about the business, they usually just care about their
job. It's two different things. The exception are start ups where the person
doing the hiring might be the founder or closely tied to them.

------
whichdan
"know how to code in multiple languages and provide decent coding examples" "a
fully functioning and non-trivial web app"

If you haven't written a full app in a language, can you really claim
proficiency in it?

------
mc_hammer
get a open source contrib on your resume - something they will recognize by
name, and hopefully quote something cool - "sped up rendering by 99%"

get a good past job that they will recognize the employer name

and you will have an easy time.

~~~
useyourloaf
+1 for this. A caution: don't just "join" a project: you have to _do_
something in the project and be able to point at the actual code contribution
you made.

