I recently got a lot of questions about what to expect from a junior interview and what I look for. Since I have a very narrow view I wanted to open it up to the community. No need to be overly specific about problems, just a general idea of the sessions you do and what makes a candidate stand out for you would be hugely helpful for those trying to prep!
For further actions, you may consider blocking this person and/or reporting abuse
Latest comments (29)
A Junior basically has no skills, so it's really about who they are and how they will grow while under you.
The first thing I do is suggest a code test. If they tell me they don't do code tests and think they are stupid I would probably hire them on the spot, as code tests are stupid and meaningless and tell you nothing and waste everyone's time.
After I tell them that was a joke and that code tests are stupid, I look for how they act as people. I give them a lot of room to brag or otherwise hang themselves by talking about things they don't understand all the way. If they make things up or their knowledge is way off, I end the interview early.
If they clearly know their skills and where their knowledge ends, I ask them what they are interested in. If they're interested in learning, and especially if they are excited about learning, I hire them.
If they're interested in helping others, and especially if they are excited about helping others, I also hire them.
If they're assertive (not cocky, not selfish, not boastful, but assertive), I also tend to hire them.
If they don't use stop-think sentences (like "the buck stops here", or "that's when the rubber hits the road"), or use them seldomly, it shows they go out of their way to think for themselves and that also gets them brownie points.
If there is an opportunity for me to show them they are wrong about something and they take it well, they also get brownie points. Blame isn't real and being wrong is exciting and should be celebrated, if they know this then they will go very far very fast.
If they don't trip any of the above flags, they go into the maybe pile or I consider other skills or personality traits, but they usually trip at least a few of the above flags.
We don't usually talk about code.
I do basically what you described, @molly_struve .
What I look for in an intern is:
Humility and willingness to learn.
Basic coding skills β this is an internship, not CS-101.
Good (if unpolished) communication skills.
Self-discipline and a sense of responsibility for their own work.
A passion for their craft.
A healthy perspective on workplace diversity.
My hiring process is an initial interview, a take-home coding challenge, and a final interview. (This whole process is full-remote.) I've been refining it for several years, and my hiring success rate has gone up with every improvement.
This is awesome! Thanks!
You want someone you can hire who's going to go on to be the best in the company.
We recently hired new juniors and this was the process:
During this pre-screening we invite them to ask questions because in our experience, the candidates that are enthusiastic about what we have to tell and ask questions are the candidates turn out to be the best colleagues. Some candidates definitely are shy or are afraid to speak up, which is why I usually have a few questions that will result in them asking the question anyway without them knowing. It's not about the (quality of the) execution but the willingness.
If the person on my side agrees (almost always yes), I invite them to come to the office (if need be, fly them in) and tell them to bring their CV (not resume) if they have any.
At the office, there is a short interview:
Finally I ask if they have time to stay for ~4 more hours, or if they have time in the next few days to come for about 4 hours. They can give me their day-rate or I will decide it based on what we pay other candidates if they feel uncomfortable.
This is when we'll work with them, usually with more people from the team they'll actually work with. And they get paid for that work.
If there is consensus after this first half-day by the team, they can come on-board, with a month as try-out so that both they and we can separate ties without any obligations. Fire at will doesn't exist here.
That's great! I recently began a career change (from 7+ years in the commercial construction sector) with the goal of becoming a full stack developer. I am currently in the JS phase of learning and am loving it! CSS definitely provided some hiccups but managed to solve them with patience. Can I ask, would you guys hire a junior with html, CSS and JavaScript knowledge (portfolio obviously)? Also would node.js be sufficient on the backend or would it be better for me to learn something like python? Appreciate any info at this stage, just trying to feel my way into this new space.
We look for Junior Engineers who have a strong background in another discipline. A trend that we've picked up on is a lot of Juniors with experience in Customer Service end up being very successful. Most likely it's because they can put themselves in our customers shoes. And they have good experience learning products.
In a candidates first interview, we look for enthusiasm, how well they have researched the company (shows real interest) and overall team fit/personality. In terms of code, we are looking for a clear understanding of key concepts in their code (whether it be professional, personal projects, bootcamp projects). These concepts usually include DRY, understanding of CRUD, testing.
Once they've been approved by the team (we are a team of 4 engineers) - we make candidates build out a simple CRUD Rails App. Basically creating short links from website urls. And then having the ability to send those short links via SMS text. We allow as much time as needed for the candidates to complete (within reason). We also give full control over design, code, testing and more. This gives us a true understanding of how the person thinks and what their true understanding of basic concepts is. We usually don't even say you need testing or anything, just to see if they end up writing tests.
We are not big fans of in-person coding. When a candidate has completed the project, even if it is not up to our standard, we usually like to sit with these people and cover why they should be doing xyz while including things that we liked with the project.
But overall it's enthusiasm. The great thing with juniors is that you have a chance to mold their mind. And hopefully it's the first real production codebase they will be working with - so it's a great chance to really get a junior thinking their way around your codebase and the way you want them too. It truly is awesome. I love hiring junior talent and seeing them grow. We actually just send our Customer Service lead to dev bootcamp - and she starts full-time on the development team in August! We are super excited.
Where do I sign up!! 10 years of customer service & management experience trying to make the switch to developing! Lol. Nah for real though it gives me more hope for me that I can eventually land a gig in software engineering. Been working hard for over a year now! Canβt stop me now!
Cheers
That's great to hear as a junior dev with a wealth of customer service experience.
We do pretty similar interview questions independent on the seniority of the candidate.
Normally we present a problem and ask the interviewee to design a system which solves it.
We start with the first thing that comes to mind and then iterate over that to get more into detail, discuss pit falls and edge cases.
This way the experience doesn't matter too much as it's rather about understanding the problem and explaining your way of thoughts to the solution.
What we're looking for from above:
Love your second point. I actually use a big mirror to write out my problems/ plan of attack.
Would it be common for companies to have a whiteboard for this type of thing?
If I was the Interviewer, I'll just ask about git and willingness to learn, and be honest with them about deadlines, how your company finish some jobs/sprint basically how the company works. I always wish the company scare me out on interview with "this bad things that could happen if you're a developer, it could be company fault or yours depends"
My first interview was like Senior/mid level Dev Interview :( we talk about background jobs, redis, websockets, CI/CD. I failed but I learning a lot about architecture.
Oh and the take-home coding was: create a chat app using redis, make it run on two cluster, use background jobs to delete chat message every 10 minutes.
With lower-level interviews, I assume they know nothing, or nearly nothing. I'm looking for passion and perseverance. Do you just give up straight away? Or do you chip away at a problem until you can solve it? You can teach someone how to code, but you can't teach them enthusiasm.
Honesty is also very important to me. If an interviewee tells me they don't know something, that adds credibility to everything they've said before as it takes guts to admit to something like that at a junior level.
No matter what anyone's experience level whether junior, senior or anything more, this is absolutely spot-on @natalie !
In most cases, strong fundamentals, enthusiasm & a genuine willingness to learn will take us miles ahead than the best bootcamps money can buy.
100% AGREE! I have no problems if they don't know, I do if they pretend to when they don't.
I think one of the few criteria for with junior especially for junior developers it is their attitude and willingness to learn.
They will stand out to me since the last thing I want is to work with is someone with a bad attitude.