I applied online. The process took 4 weeks. I interviewed at Shopify (Ottawa, ON) in June 2015
Interview
The entire process is very conversational with technical questions being tailored towards your prior experiences. My process started with a Skype call with a recruiter, followed by two more sessions with a developer and a team lead respectively. The recruiter interview is mostly there to screen out fake personas/people that would simply not be a cultural fit. You are not going to get asked the stereotypical algorithmic design questions that are adored by most tech companies; although it is implied that you know them! Make sure you demonstrate your passion for coding and why you got into it in the first place. The fact that the company is taking so much time making sure potential hires are as culturally fit as they are technically was a great motivator for me!
The Skype interviews with the developers will likely be about something you want to talk about. So be sure you are ready to go into “significant" detail in whatever it is you choose. I highly recommend you put your projects on GitHub so they can see your code! I got asked questions based upon overall design decisions I made (e.g. what design patterns did you find helpful? how come you didn't do this? Is this method thread safe? etc.) and in terms of how my application would scale with a large number of users (does it work with 10 users? how about 10 million?). Again, the questions they ask you are going to be specifically related to your resume or whatever project you choose to talk about. Definitely consider talking about scalability, at least they loved it when I did.
If you made it this far, and you are out of town, you will most likely be invited for an onsite visit to their amazing office in Ottawa, Ontario. It is very Google like. You can tell they have invested serious amounts of cash in establishing their culture. Having interviewed at Google, I could tell they took their culture very seriously. To the say the least, I was mesmerized. It is roughly a 6 hour day of interviews with your potential manager and coworkers and a pair programming session somewhere in between; did I mention you get to eat their lunch, which was absolutely delicious! Interviews get more technical with emphasis on design decisions you would make to solve certain problems. Overall very fun! The pair programming session was very cool; you work alongside another developer to solve some random problem he chooses. Remember, there is no correct answer. Thing big. Be clear. Let your creativity fuel your conversations and most importantly BE YOURSELF.
Interview questions [1]
Question 1
There was a Pair Programming session in which you work with another developer to solve some problem. Be prepared to do a bit of coding!
The interview was intense and definitely exceeded my expectations. The technical rounds were particularly challenging, but I felt prepared. One of the system design questions was about creating a webhook delivery system with various complexities, and I was relieved because I had explored that exact topic on PracHub just days before. After tackling some coding problems, I faced some behavioral questions that tested my thought process. Overall, the experience was demanding, but I was thrilled to receive an offer, which I happily accepted.
Interview questions [1]
Question 1
Design a webhook delivery system that retries on failure with exponential backoff. Cover idempotency, ordering guarantees, dead-letter queues, and how you'd handle a downstream consumer that's been offline for hours.
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.
Interview process went quickly. The recruiter was very responsive and nice, and made the whole experience 10 times better. The interviewers did not ask impossible questions and focused more on the thought process than the correct answer.
Interview questions [1]
Question 1
The first 2 interviews were LeetCode-like questions. Not directly from leetcode, but if you know your data structures you'll be good. 3rd interview I had to prep a design document and share it and they asked questions about the decisions that were made and the rationale behind it.