You are finishing your studies, a boot camp perhaps, and start looking for your first programming job. Great… but how does that work?
We shared our experiences as recruiters at today's RubyBelgium's job meetup. I hired 10 or so people in a start-up context and wanted to share how a company evaluates a candidate. This is my personal experience, other recruiters will have other ideas. Take this advice with a pinch of salt.
We spent quite a bit of time writing the job description and have asked your future colleagues to review it. We add more than just the needed hard technical and soft skills and have attempted to map out a typical workday to sell you the position. Do read it before applying!
We also added the first test: near the end we ask you not to include a CV. You know what? Almost everyone does. It's not a blocker as such, but why would I read your motivation letter if you didn't read my job description?
I work for a small 15 to 20 something people start-up. There is no heavy HR process. Our HR responsible sits down with me, and we go over the received applications. How can you get noticed?
We don't care too much about your technical skills if hiring for a junior position. We want someone who would fit in the team. You can't change someone's character but you can teach them how to code.
Try to stand out, get yourself noticed, be creative. I once had someone applying with a one-minute video of herself. A good way to stand out from the pile of paper. Another one simply turned up at the front desk, requesting to see me. There was no appointment, and I was too busy to meet him. Two days later, he showed up a second time, unannounced, asking for an interview. Talk about dedication.
Do your research! We all know you applied at 10 other companies at the same time, that's fine, but don't let me see that. I want to know why you want to work for us, not over some random ACME company. Show me that you know what we do, and where you fit in. Research our website, have a look at the team page, learn about our products. Heck, buy one of our products if you can and share your feedback as a customer.
Be on time! Being late is a bad start, it feels like you think your time is more valuable than ours. Don't be late. Reschedule? Sure, once, it can happen. More than once? You are out, don't give me excuses to kick you off the shortlist.
Ask questions! It's a two-way discussion. We'll work together for 7 hours a day, but only have an hour to get to know each other. We want someone we would like to work with and you are probably looking for a pleasant team as well.
Dress code? Have a look at the team page, walk past the office, look at pictures of the company's events on social media. Dress alike. Do your research.
Ask to meet the team. You are taking to HR, the CTO, or CEO. Are those the people you'll work with? Who else? Can you grab lunch with the team? Can you see the office? Ask! This will teach you a great deal about the company culture. Is this a place you would feel at home?
Decide up front what you are shooting for.
An intern works (mostly) for free in Belgium. No problem, if we are on the same line: ask what your job will be. Will we take the time to train you? How much time a week will you pair with someone? How many interns are there currently working at the company? 5 interns in a team of 10 employees? Warning lights should go off. How many interns were hired last year? The idea here is to get a feeling if the company trains their interns or simply uses them as free labour.
Employee positions are probably best for a junior. I had candidates applying as full-time employees only to propose an intern position themselves halfway through the interview. How do you think a company reacts if they learn they don't need to spend the money on you since you are willing to work for free? Don't do that. Stick with the job description: if it's asking for an employee, apply as an employee. You can always offer to work a day for free if your situation allows (one day only, don't do billable work for free), it's a great way to get to know each other.
A freelancer is mostly a more experienced programmer, someone with a few years of experience. A freelancer is paid to bring in the knowledge, the expertise, not to be trained on the job. I would not hire a junior dev as a freelancer, except for someone with very a niche skill we are in need of.
When do you discuss salaries? I would mention it near the end of the first round. Having multiple interviews only to learn we can't match your expected salary is a waste of time for both of us.
No hard feelings when we don't reach an agreement on this point. You might be too expensive – that's fine – you are out of our league, we get that.
On the other side: know what you are worth before coming to the interview. Decide what you need to make a comfortable living (this differs per person) before going in. Know the market rates: ask other developers or ask us on the RubyBelgium Slack channel if you don't know where to start.
This post is an open invitation to get in touch (anonymously if you want). Ask me anything about the do's and don'ts on your first job interview. No taboos, no strings attached.
Good luck with the job search!
This post is open source. Did you spot a mistake? Ideas for improvements? Contribute to this post via Github. Thank you!