I applied online. The process took 4 weeks. I interviewed at Shopify (Ottawa, ON) in Mar 2021
Interview
There are not a lot of good companies in Canada and Shopify is amongst the rare good ones that exist. Which means a lot of people are probably trying to get in.
I have to preface the review by saying what I think about interview processes as a whole. I think the number of people interviewing for software jobs is an order of magnitude higher than what "good companies" can hire. At the same time the number of software jobs that exist is probably around the order of candidates! This means that getting into a good company is hard and competitive but finding some job isn't!
Also the amount of skill that is needed at a job isn't necessarily a lot. I would imagine only 0.1% of the people work on anything groundbreaking. There's nothing new to solve. That belongs to the research department.
What this creates is this unique situation where the job has just enough barrier of entry for normies to not enter and at the same time isn't specialized enough. Anyone with a decent brain and decent background can work at any software company and do well if they want to. The amount of skill needed to work at Facebook/Google/Shopify isn’t much different from any of the 100s of companies that would be a couple of tiers below them.
So what do the top tier companies do in this situation? They create artificial barriers of entry. You need someone to write an API and move a bit of data around?
Facebook in this situation: Well why don’t you tell us how you would solve these 5 DP problems within 45 minutes because that’s what the remaining 285 candidates can do and we can hire you.
Shopify in this situation: Here are some easy questions for you about day to day stuff, show us how you would write production ready code.
The interview at Shopify is “easy” in this regard because it mimics the job. The job is really effing easy! You write some code, make it pretty /readable/modular, you write tests, you name variables well and you’re good to go.
But we’re back to square one! Any of the 285 candidates can do this! Ooof. What a nightmare.
So what can Shopify do in this situation? Barriers of entry. Sprinkle some culture, sprinkle some arbitrary conditions, sprinkle some life stuff. I am guessing any of the 5-6 interviewers have a veto to not taking you in. They only need the very strong positives.
So there you have it. The questions, the answers, the preparation isn’t what’s important. There’s nothing to do. There’s a few coding rounds, one technical deep dive and one life story round. On the day of the interviews what impression you leave and whether the things you said sat right with ALL the interviewers is more important. Ultimately you’re up against 285 other candidates in an interview process that cannot distinguish anyone based on skill (neither can Facebook by the way, solving hard DP problems in 30 minutes isn’t skill, it’s rote learning).
There’s no perfect answer to this dilemma. But I would choose Shopify’s interview process where I can come in with little preparation, over 6 months of solving leetcode problems.
typical interview process, one round with hr. followed by a 75 min coding interview pair programming with one of the engineers. In the coding interview it was encouraged to use ai.
Interview questions [1]
Question 1
create a autocomplete system for search based on a list of search frequencies.
There was a first round with hr followed by a 1hour interview, use of AI was encouraged. Interviewer was not very knowledgeable and I had to discover a solution that she understands
I applied through an employee referral. The process took 2 weeks. I interviewed at Shopify (Toronto, ON)
Interview
Lots of rounds and meeting multiple team members enjoyable experience and the interviews really ensure that the job is a right fit. There are multiple checkpoints to ensure both parties are on the same page
Interview questions [1]
Question 1
Walk through a past technical project you worked on or owned.
Software Engineer applicants have rated the interview process at Shopify with 2.5 out of 5 (where 5 is the highest level of difficulty) and assessed their interview experience as 50% positive. To compare, the company-average is 45.6% positive. This is according to Glassdoor user ratings.
Candidates applying for Software Engineer roles take an average of 28 days to get hired, when considering 62 user submitted interviews for this role. To compare, the hiring process at Shopify overall takes an average of 33 days.
Common stages of the interview process at Shopify as a Software Engineer according to 62 Glassdoor interviews include:
Phone interview: 28%
One on one interview: 25%
Skills test: 13%
Presentation: 10%
IQ intelligence test: 6%
Personality test: 5%
Background check: 5%
Drug test: 3%
Group panel interview: 3%
Other: 2%
Here are the most commonly searched roles for interview reports -