
Ask HN: What do you look for in a software engineering candidate? - trycatcthrowawy
Hi HN,<p>I am at my wits end trying to find a job and considering giving up. I graduated 11 months ago from a leading university, an active contributor and open source maintainer on Github (with libraries of my own) and have written apps that is live on the App Store.<p>Been doing over 20 algorithm challenges a day (10 on leetcode, 10 on HackerRank) and I still keep getting no response or an immediate rejection from companies big and small.<p>Went through one company which lead me on with first a phone interview then a hacker rank challenge then a take home project then a onsite interview with a whiteboard programming challenge and a final interview. I never heard back from them, only to find out later on that I had been rejected without them telling me!<p>For me this has happened so many times that this was the last straw for me after 30+ interviews from several companies I applied for. It&#x27;s getting to the point that I&#x27;am seriously considering ending my job search and I am tired of it all.<p>For those who are employers, founders or engineers:<p>what do you look for in a software engineering candidate? (CV, interview or overall)<p>what skills are you looking for the most?<p>Throwaway account for obvious reasons.
======
teapot01
Based on what you've said here: >"Went through one company which lead me on
with first a phone >interview then a hacker rank challenge then a take home
>project then a onsite interview with a whiteboard programming >challenge and
a final interview. I never heard back from >them, only to find out later on
that I had been rejected >without them telling me!"

I would suggest you could have a couple of issues (bearing in mind that I have
little evidence to go on):

1\. One might be technical competency - The only time I'll repeatedly give
technical questions i.e. HackerRank, TakeHome, Whiteboard is if I'm not
convinced that you have the technical skill by some earlier stage.

2\. You're failing the "cultural fit" test. This is in my opinion always the
hardest one to figure for an interviewer, and is usually the last question
hanging over a candidate. I understand that you're frustrated with the
process, but any semblance of arrogance during an interview is often a big
negative in the post interview recap. Particularly if the position is more
commodity than specialist developer.

To add more context can you do any or all of the following; \- Post some code
\- What sort of position are you going for? \- Where are you based?

------
sethammons
You could try a briefcase problem. My buddy at work wrote about it:

[https://sendgrid.com/blog/im-great-technical-interviews-
got-...](https://sendgrid.com/blog/im-great-technical-interviews-got-hired/)

I recall when this happened. For us interviewers, it was really exciting how
much thought a candidate had put towards our business. His onsite interview
was practically a checkbox after his briefcase problem (to ensure some basics
like communication and non-jerkiness).

To be more inline with your question, as an interviewer, I look for
communication, how you accept/reject suggestions, familiarity/fluency with
your choice of tooling (if you say you are a Java person, and do some Java
coding on site, you should be able to get something with simple unit tests to
compile and run), understanding on how to productionize services (what
metrics, logs, and traces you would implement on some sample code), and be
able to communication about system design and tradeoffs.

Do some digging in on the culture of the place you would be working. They
might be looking for like-minded folks in some areas. Fo us, at work we look
for candidates that have (what we call) our 4H's. They should be happy,
humble, honest, and hungry. We have some questions that help ferret these out.
But an example would be talking about past projects and team work, and the
candidate is talking about "I, I, I," instead of "we, we, we." In most non-
trivial team projects, there should be an aspect of "team" in the responses.
While this would not rule-out a candidate, it would raise a flag that all the
interviewers would talk about when deciding to move forward with the
candidate.

------
cbanek
What I look for is ability, passion, communication, and the ability to lead or
at least be self-sufficient (or for a junior person, someone learning how to
do that).

It's hard to say why you've been rejected. It sounds like you have a
reasonable resume, since you've gotten a lot of interviews, even though none
of them landed you an offer. So I don't think it's your resume or CV that is
the problem.

There are lots of automated rejection pipelines. I have a great CV and think
I'm a pretty awesome developer, and I've been automatically rejected by
pipelines many times before (elastic.co I'm looking at you). Sometimes within
hours on off days or in the middle of the night.

No response to jobs or automated rejection is simply part of the landscape
these days. Although it's hard, don't take it personally. Put out a lot of
feelers, which it sounds like you're doing.

Getting an interview is a crapshoot I think. Once you've gotten the interview,
it's mostly about skill. There is some luck involved because you never know
when there is a better qualified candidate also interviewing - although
sometimes as a person doing hiring, I've seen two good candidates for one job,
and I hire them both (sometimes for the same team, sometimes for a different
team, etc.)

Why do you think you failed at the interviews? Note, giving a good interview
doesn't mean that you're good at your job, and visa-versa. IMHO that's why the
software engineering hiring pipeline is so broken.

I think communication and likability are key to giving a good interview, and
these are skills some devs are not good at. But they are key to any job, since
likely you will be working with a team, or at least a manager, who you have to
be able to communicate with. If you're nailing all the whiteboarding coding
questions, you might just be coming off in a bad light personally.

Algorithm challenges frankly I find to be nonsense and almost a negative
signal. Instead of doing something of value, you're basically taking online
quizzes. Nobody programs like leetcode or hackerrank. While algorithms can be
important, I don't think it's important to be able to know the answers to
trick questions. It's more important to be able to learn and pick up what you
need at the time.

What you didn't mention is any internships. Did you intern somewhere when you
were at school? This is how many people out of school get their first offers,
and I find it's good for both sides. You know the culture, the job, and it's
more like coming home than starting something from scratch. No internship is
honestly a red flag for someone graduating - everyone does internships these
days.

But that's water under the bridge. Call up people you knew at university and
ask them how their job is going. See if you can get a referral (this is how
it's really done, personal referrals get past all the nonsense, and if you
have someone internal saying you're good, you basically have it in the bag).

Now if you don't have any uni friends pulling for you, I really have to think
that you might just not be all that friendly, in that you might be standoffish
or have some kind of personal trait that is putting people off. Ego in
programmers is the worst, and if someone is mansplaining to me in the
interview, I almost never hire them (pet peeve). Figure out what it is. Get
another round of interviews going and try different approaches.

And if all else fails, just start your own company or something. It sounds
like you've already launched things, which is definitely good. It's certainly
not easy though.

Good luck.

~~~
world32
Wow, you sound like a very tough person to interview for.

I agree that algorithm challenges are kind of pointless when it comes to
software engineering but you can hardly blame the OP for doing them given that
many companies do value them. And the OP did say they also have their own
libraries on github and open source contributions too..

> Now if you don't have any uni friends pulling for you, I really have to
> think that you might just not be all that friendly, in that you might be
> standoffish or have some kind of personal trait that is putting people off.

That sounds quite harsh really. Makes me feel sorry for the people you
interview who might be perfectly nice people to work with and capable of
communicating but don't get hired because they aren't good at making friends
or don't have "likeability" as you call it.

> Ego in programmers is the worst, and if someone is mansplaining to me in the
> interview, I almost never hire them (pet peeve).

Are you assuming that the programmer being interviewed is a man? Thats a bit
sexist..

~~~
mytaa
I don't think it's as black and white as you put it here. A lot of it depends
on the exact needs of the company.

Ability to solve algorithmic problems can indicate ability to find quick
solutions to novel problems. I'm not sure how else could you test for it? Not
everything can be googled, learnt quickly or have step by step instructions.

I think the "likability" also depends a lot on the job. Some jobs are more
client facing, communication and mentoring than others. I don't think one is
required to crack jokes, display complete confidence and have ability to
discuss any topic, but there are definitely things you should not do. I'm not
good at making friends and I dislike talking to people even though I don't
show it, but I can still show myself in a positive light during interviews. I
can pull the weight for 1 hour if I have prepared for it.

Not sure what was exactly meant with the "mansplaining" part, but I find this
term extremely gross and unnecessary.

~~~
world32
Algorithm challenges / whiteboard coding is a whole debate in itself. In
fairness there are arguments on both sides I think.

As for likeability or having friends at university - I really don't think that
is a fair thing to judge somebody on at all when interviewing for a
programming position. I agree absolutely that personal skills and emotional
intelligence are necessary for the job but being likeable? In a professional
environment that should not matter one bit. Its also completely subjective.

And yes, the whole mansplaining thing is really quite obnoxious.

~~~
why_only_15
I think the argument for looking for likeability is that if everyone on the
team likes one another then they probably work better together professionally.
In my understanding the primary pitfall of this is that it can exclude
perfectly competent developers. Not everyone needs to be friends.

------
Entaroadun
30+ interviews suggest poor interviewing skills. Feel free to pm me and I'd be
happy to help.

------
heeton
Send me a message (email in profile) and I can do a mock interview with you
and give some feedback.

Outside of technical ability I look for people skills, communication,
reliability, self sufficiency.

Where are you applying? Aside from iOS what are you technical skills?

------
world32
Its really hard to say without knowing you in person and there are so many
factors that could effect this I can only really make guesses as to why you
are being rejected.

Are you applying to junior roles? If not then maybe you are punching above
your weight. Also, and this might not be easy to think about, but could it be
a personality problem? Perhaps you came off as arrogant or somebody who would
be hard to work with?

In the interviews you've had were there any questions you were asked that you
couldn't answer or that you stumbled on? What were those questions?

Also I would try hard to ask the companies who rejected you, why they rejected
you. Of course they will probably say something like "we didn't feel you were
the right fit for our team" but try and push them to give you legitimate
feedback. Tell them you are genuinely trying to figure out why you are not
having success in interviews and hopefully they will be kind enough to give
you some constructive feedback. That said I'm not 100% sure this will work but
its worth a try.

------
skdjjdfnsn
Try writing a small project and sharing it. Show your passion rather than
memorising leetcode. It’s very hard to know how good a coder you are with
leetcode despite what Google thinks.

Most employers only care about if you can do the job. If I throw something at
you, would you need only guidance or a ton of help. A small project helps
demonstrate this.

My 2 cents.

------
sidcool
For general technical roles, in no particular order. In only technical rounds.
Leadership etc. rounds are separate.

1\. Ability to explain their current project technically and suggest
improvements, reason decisions, extend solution, testing strategy, testing
coverage etc.

2\. Simple algorithmic problem solving. Nothing complex.

3\. Basic data structures knowledge, again nothing complex.

4\. Depending on experience, ability to design a small part of a big system in
the context of the big system.

5\. Ability to identify entities/models for a simple use case keeping in mind
the Object Oriented principles of design. No Design patterns, just basic
separation of concerns, DRY etc.

6\. For the candidate's language of choice, knowledge of the language basics.
For e.g. in case of Rust, information of how borrowing/ownership works. Or for
Java, how equals/hashcode works etc.

7\. Passion about programming. How the candidate keep themselves apprised of
new things in tech.

------
kull
Dev team manger here and a cofounder of 100% remote team. What I am looking
for in candidates. Tech aspects: some experience in the area we hire for. But
most important soft skills: Honesty, being humble handle criticism and lear,
be able to clearly communicate which includes neat emails, be open to new
ideas (don’t be stubborn), and most important- great communication (let me
know you receive my email, confirm you are working on it, say thank you for
interview, send me email that the problem is hard you need more time, keep me
updated before I ask you for an update, keep Slack on your phone and check it
time to time). Our startup is 2 years old and the only reasons why we had to
stop working with any developer were problems with communication.

------
mkez00
Good communication skills, eagerness to learn (engineering is a career not a
job), some relevant experience with the stack we use. When I pick a specific
candidate, I give them a personal assignment. The key is only one candidate
gets this assignment. I think it’s incredibly rude of employers to give
assignmennts that take 10+ hours to complete only to reject a candidate even
though they did the assignment successfully. That’s why only one candidate
gets the assignment: pass it and you’re hired, fail and we reject you

------
tmaly
As a hiring manager, I look for smart, curious people that are good at
communication. I am ok if you do not have all the relevant skills if I believe
you can learn them in short order.

If you happen to be in the NYC area, reach out to me, I would be happy to take
a look at your resume.

~~~
pydeveloper22
Also read your older and recent posts by you that your company is looking for
junior/mid developers at Interactive Brokers in the CT/NYC area.

Well, I checked out the Interactive Brokers site and they have at least
openings available listed on there what looks to be for Junior and mid-level
Developers.

So, I see that you work for Interactive Brokers. Don't know if that still
holds up but I wanted to check if the Junior/mid level Developer job is still
available?

As someone who has been going the self-taught route where I enjoy using and
working with Python as far as learning purposes go.

And after quickly reading your post here I figured to reach out and try a
somewhat different approach than the old cover letter and resume email method
and contact you if you may have any info to this current opening at your
company?

So with that said, here I am..and I wanted to inquire to find out if this
opening is still available? If so, do you have a contact email to learn more
about this position and the things you require in regards to the nature of the
job?

My apologies in advance that this may not be the response to your post that
you were looking for but I figured why not take a chance and try something
different to reach out and learn what I can do to improve my chances to be
part of the Interactive Brokers dev team.

Any help in this matter will be greatly appreciated. Thanks

pydeveloper22@gmail.com

~~~
tmaly
Yes, I still have an opening available in my team. Please apply online and I
will review your application

There are two possible application choices to take.

With a formal degree in IT/CS or with industry experience apply here

[https://careers-
interactivebrokers.icims.com/jobs/1806/progr...](https://careers-
interactivebrokers.icims.com/jobs/1806/programmer---compliance-technology/job)

If you have no industry experience or formal degree, it is best to start out
as an analyst to learn the business side and transition to programming apply
here:

[https://careers-
interactivebrokers.icims.com/jobs/1811/junio...](https://careers-
interactivebrokers.icims.com/jobs/1811/junior-compliance-analyst/job)

~~~
pydeveloper22
Hello Ty,

Thanks for replying back to my post I apologize for the numerous postings I'm
still relatively new on here and learning how this forum structure works here.

I definitely appreciate the advice and insight you provided as to how to go
about the application process especially for someone as myself who fits more
into the second category and it's also bonus being in the DMV area.

Although the first application category is still quite appealing to give it a
try.

I also didn't realize you'd be the one to review applications so that's great
to hear.

Do you know by any chance if the qualifications are strictly required or are
they a list of items that are strongly preferred to enhance one's application
chances? I apologize for all the questions but I would email you but I would
imagine this is probably the preferred method of communication..hehe

Once again, thanks for all the help.

\--Kwaz

------
scarejunba
Put an email in your HN profile, even if it’s a throwaway email so people can
respond to posts like this personally. To answer your question: I weight the
interviews on-site the highest, then the HackerRank, and the CV is an
optimizing tool to ensure I’m not spending my time on bozos.

------
jabv
My company is hiring; email me and I'll look at your stuff and make a decision
about recommending you.

------
nunez
is it possible that the problem isn’t your technical ability but your
personality or location?

i would often hire someone that’s slightly less skilled but a great person to
be around than someone with god-tier skills that nobody will like.

i would ask for feedback. some companies won’t give it to you (pseudo legal
reasons), but others might play ball

------
SamReidHughes
The biggest red flag with this post is misspellings, inconsistent
capitalization, and bad grammar. If you're not a native speaker, then it's the
misspellings, inconsistent capitalization, and some of the bad grammar.

My best guess is, your resume has similar sorts of problems and your interview
performance is poor.

~~~
Double_a_92
He got the interviews, so he already passed that stage.

------
tehlike
Send me your resume and github (i care about this more). tehlike @ gmail

------
sloaken
First thing to do is to understand the 3 Key points of an interview. Almost
all questions break down to 3 questions. For the pedantic I know you can come
up with a corner case, but this is still a valid rule.

1) Can you do the job?

2) Do you fit in?

3) Will you do the job?

So let us address each of these, although they all sound VERY obvious.

CAN YOU DO THE JOB:

This is mostly answered by your resume. If they did not feel you could do the
job they would never have had the interview. BUT during the interview they do
VALIDATE your resume claims. Or at least they try to. All of the extensive
white boarding and testing is just because (or should be because) they are not
sure your claims are valid. If this is not the case, then they are not being
intellectually honest and are just grandstanding. But, per your claims this is
probably not the issue.

DO YOU FIT IN:

This is about communication. How well do you express yourself, how well do you
communicate ideas. I like to ask a question I know the person cannot answer,
but they think they should be able to answer. I usually build up to it with
ones they definitely should know. I do not remember the answer. A real jerk I
am. The objective is to have the person admit they do not know. I would rather
hear you do not know something than feed me BS that will waste a lot of
resources. I do not need a 'Know it all' that does not know anything. If a
person provides an answer I write it down word for word. Then I go look it up.
Like I said I can never remember the answer.

Final note on this point, the more the interviewer talks the better they think
you are at communicating ... (this applies to dating too)

WILL YOU DO THE JOB: (an entire book could be written on this one point)

This seems like the most obvious, 'You pay me I work!' how much simpler could
it be....

BUT:

When crunch time comes are you willing to put in the extra work?

If a competitor offers you 1% raise are you out the door?

Is this JOB / COMPANY / INDUSTRY your passion?

Coat and tie? Show up early? Well groomed?

Send a thank you note? Bonus points if you answer the unanswered question from
'Do you fit in'. Include commentary about the interview. Make the note brief,
but have key points.

Did you research the company?

Are you ready to work now! Do you know where your desk will be? If not, why
did you not ask? Only excuse for not finding this information is you really do
not want the job. You must bring a list of questions to ask them.

Be sure to have a separate list that are HR related. Asking your future boss
about vacation time means you are just there for a pay check not the passion.

I need coffee so I will leave it with that.

------
cvaidya1986
Have you tried finding a job at the university? Also, university PhD students
get paid that’s another route. What states are you trying in?

~~~
Jeremy1026
Yes, they get paid, but not as much as tuition is for the PhD.

~~~
cvaidya1986
Tuition is free for most PhD Comp Sci students.

