In the second article in the series, I walk through the full hiring process, from finding opportunities and crafting a strong application to performing well in interviews.
Companies discovering you
A few years back, there were fewer qualified software engineers, and so companies would hire any promising candidate and train them instead of desperately searching for the perfect hire. This resulted in more opportunities for the few people looking for a job in this field.
Companies not only hire less nowadays but also more often lay off existing longtime employees, who then fill most of the remaining open positions. Applying to jobs the old way requires proving that you’d be willing to put in the time and to work hard to learn everything needed, but companies hire this way less and less.
Nowadays, companies prefer hiring through referrals. This especially benefits small companies with no predefined hiring processes, since it gives them some confidence that new hires already know the basics.
In a world where cold outreach is becoming increasingly ineffective, showing your impact on the community represents a harder but more certain path. And as I’ve discussed in the first article, getting these types of opportunities is easier when you create valuable connections with people who share similar interests.
You discovering companies
Getting noticed is only the beginning; the smart move is to back that visibility with targeted research. Before writing your application, look into the company, its staff, and what tools and technologies they use:
- requirements listed in the job posting
- company’s “mission” and its place in the industry
- their past and current projects and how they turned out
- tech stack they use
- core values and company culture they promote
Use these insights when writing the application to present yourself in a way that aligns with the company’s needs. This shows the recruiters that you’re interested and motivated, putting you above the majority of applicants who send generic cover letters and resumes.
Resume and cover letter
Use your findings from the research above to prepare a resume and a cover letter. They should be easy to skim, enabling recruiters to quickly spot your most relevant qualifications among a large volume of applications.
A cover letter should include one simple paragraph (of around four sentences) introducing yourself and outlining your key qualifications. This should be personalized to the position you’re applying for, matching both your and company’s values, rather than being generic.
Resume should fit on one page and include the following sections: contact details, work experience (highlighting relevant skills), education, personal projects, and hobbies. Use bold formatting for most important words and phrases to make the resume easily skimmable.
When applying for junior positions, recruiters often need to hire based on a promise of potential, as new engineers have no track record or professional accomplishments.
Interviews
When interviewing, either in person or online, the main mission remains the same - match their technical standards and informal expectations, presenting yourself as a great addition to the team.
When appropriate, challenge their questions/statements, showing that you care and understand the company (e.g., what, why and how you would change their products and how you would measure the improvements). If you don’t know the answer to a technical question, try to explain your train of thought, as the interviewer will also pay attention to how you would approach a problem you haven’t tackled yet.
Prepare some questions in advance based on what you’ve learned about the company. For example, junior candidates should be intrigued to know how they’ll be mentored and what the best way to elevate their skills as quickly as possible would be, showing they’re ready to learn.
Beyond an individual’s coding ability, clear communication to both customers and colleagues sets engineers who code just to close Jira tickets apart from engineers who actually care about product development and work in teams to deliver a better user experience. Because of that, presenting yourself as a pleasant person to work with is still one of the main criteria on which you’ll be evaluated, especially when applying to smaller teams, such as those in startups.
Too long, can’t / won’t read
Try interviewing often - if not for getting better at being interviewed, then to challenge your current skill level and improve the offers you receive. When interviewing, show relevant skills and personal traits, and demonstrate care and enthusiasm to stand out.