So you want to be a software engineer? — Part 1

Engineering internships suck, here’s how to fix them

See also: So you want to be a software engineer — part 2.

“One of Azimo’s four core values is ‘for the people’. We build our products with this in mind, but we created Azimo Labs and our internship program for the same reason: we want to share our knowledge and experience so that it benefits as many people as possible.”

Internships should be about nurturing talented people and giving them the tools to succeed. You don’t need an intern to make coffee and you shouldn’t need an intern to churn out your unit tests.

We designed the Azimo mobile engineering internship to simulate, as far as possible, the daily life of a full-time software engineer. Our selection process is therefore designed to test all the skills an entry-level engineer should be focusing on. Here’s what we think the brightest and best need to succeed:

The process

Our selection process has three steps:

Remote meeting with the engineering team (approximately 30 minutes) Coding task (two-week deadline) Interview with engineering and HR teams in our office (approx. one hour)

We advertised the internships in April for a July start at our office in Krakow, Poland. Of the applicants, 25 of which were selected for a remote interview. Candidates spoke to two native app engineers and were asked to discuss the basics of: