How to succeed during Shapr3D's engineering hiring process
If you’re reading this, there’s a good chance you’re thinking of applying to Shapr3D - or maybe already have - which is really exciting! 🚀 Here's a handy guide to our engineering interview process, to help you nail the interview rounds with confidence.
What are we looking for during the interview process?
Our recruitment mission is to build a world-class engineering team to develop an iconic, mobile-first CAD app for the 21st century. Our interview process is designed to help us understand each candidate’s values, engineering principles and experience, and to find evidence for whether they can successfully contribute to this effort in the long run.
What makes someone successful at Shapr3D?
The most important values that Shapr3D software engineers have in common are their commitment to lifelong learning and dedication to excellence. We are building a CAD software product, tackling one of the most complex engineering problems out there. We aspire to do things that no one has done before and we have the ambition to disrupt an industry that has not changed in the last 30 years.
Solving problems in our domain requires in-depth knowledge of computer architecture, operating systems and computer science - which we assess across multiple stages of our interview process. In each round we give you insights into how we work at Shapr3D, and also gather information about how you might fit into the company's journey going forward.
The tl;dr version of our typical interview process, goes like this:
And step-by-step it goes like this:
1. Application
The first step is the application form. Here we ask you to include your CV, detailing your past experience and achievements. We’re also super interested in your pet projects or in contributions to open-source projects. Depending on the position you are applying for, we might also include some role related questions.
What kind of info should I include in my application?
Make sure your CV is easy to read and clearly lays out the personal contributions and achievements you made throughout each of your past experiences
In your CV, quantify the impact of your work whenever possible (e.g. improved conversion rate by 20%). Also, tell us about the product/projects you worked on, and show us achievements you’re proud of! Showcase this from a product and user/customer perspective mainly and don't focus that much on the tech details at this stage. We’re a product driven company, so understanding what other products you built and how those impacted the people using them is important to us
If you attach a cover letter, tell us why you want to join Shapr3D specifically - try to link your interest with our values, our way of working, or the industry. Show us how your interests are connected with Shapr3D and why you want to join us. Bottom line, don't just do a one size fits all cover letter. Dig a bit deeper into your motivation by going beyond the stack or career opportunities.
Be sure to attach anything that shows your passion for engineering, from your GitHub portfolio, to blog posts or conference talks.
2. Intro chat
If our hiring team thinks your skills and experience might be a good fit, they’ll schedule a short chat to introduce you to Shapr3D and get to know you a bit better. This will probably be run by a tech recruiter via Google Hangouts or Zoom and take between 30 to 45 minutes. You won’t need to prepare anything in advance.
We’ll talk through your experience in more detail, about your stack background, and why you’re interested in joining us. You’ll also be able to ask us any questions you might have and we'll align at this stage on possible next steps.
How do I nail the intro screening call?
Be ready to dive deeper into your past jobs and to talk about the projects and products you work (or worked) on. Walk us through what you’ve accomplished and learned along the way, and what you’re proud of.
At this stage we also want to hear about your motivations. Why Shapr3D? Why this role and what are your expectations? How do we as a company, our product, values and way of working match your criteria and interests?
Make sure to communicate your thoughts clearly and give relevant examples of previous experiences to showcase your skill level. Be ready to showcase your engineering philosophy and how you live that and our values in your work.
Last but not least, we’re looking for hands-on engineers with a problem solving mindset. So those with an ability to independently identify user problems and solve them efficiently - alone, in collaboration with others, or across teams.
3. Homework
If we’re aligned in the intro call, we’ll give you a take home technical exercise customized as per the role you applied for. This test allows you to showcase your technical skills using your preferred tools. As it is a customized exercise by our engineers, the homework also gives you very good insights into what types of problems a software engineer typically faces day to day at Shapr3D.
Based on historical data, we've learned that candidates usually spend anywhere between 8 to 16 hours completing the homework exercise. We know that’s a lot! We appreciate your commitment and always make sure to pair it with detailed feedback on your solution, no matter the outcome. We are also conscious that you might wonder why so much, so early in the process? There are a few reasons:
We really want you to understand what a typical feature development task at Shapr3D would look like. This will help you decide whether you are passionate about the problems we try to solve here, and also help you make an informed decision between this role and concurrent job alternatives.
We’re truly committed to building a world-class product in a highly complex industry. With that in mind we believe that every engineer joining the team should be able to tackle a representative technical exercise to a satisfactory level.
Our goal is to make sure that we make responsible hiring decisions, bringing on board people who are deeply motivated about our challenges and mission.
Last but not least, the test solution will serve as a discussion base for a big portion of the tech interview. It’s designed to spur a meaningful discussion on engineering principles -- we are stack agnostic, and thus more focused on your engineering philosophy. We don’t believe in writing code on a whiteboard during the interview, so your homework provides the foundation for a facts based assessment of your work. This also saves you additional preparation time for this stage.
Some tips to navigate the take home test stage:
Practice your coding, problem solving, algorithm, data structure and software design skills. Generally speaking, we care a lot about how you solve problems, how you design systems, and build high quality and scalable solutions. These are the criteria that are going to weigh the most in our assessment of your take home test solution.
We also look for quality more than anything else. Make sure you are proud of the code that you submit. And last but not least make sure you own and can walk the team through everything you submit. The team will challenge your solution and dig deeper into it to better understand the trade-offs you made, and your in-depth understanding of your solution and its possible implications.
The below links provide more info on how to prepare for specific positions tests:
If your homework results are successful, you’ll be invited to our office for a series of interviews with potential team members and management.
One90-minute technical interview: We’ll use your homework solution as a jumping off point to better understand the design decisions you made while working on your project. We ask questions, point out possible failures and test your understanding of the depth of your solution. The best you can do is to be thoughtful about every decision you make and aware of how your code operates in various scenarios. We’ll also go through various engineering problems that relate to your background and depth of experience. This can sometimes turn into a software design exercise on the whiteboard where you are asked to create a design for a known problem in engineering.
Two 45-minute cultural fit interviews - back to back: Half of the time is spent on personal motivation, including attitude, leadership and product sensibilities. We are interested in understanding how you have performed in certain situations in the past, how you live our values on a daily basis, and what your product mindset is. All questions will focus on past examples, situations that can lead to either success or failure, which means that there are no correct answers. Here we’re more interested in your principles, rationalization process, and ability to learn from past experiences.
Tips on how you can be successful in the final mile:
Homework review: We’re looking for a demonstration of a detailed understanding of your own code, so make sure there are no grey zones left behind (e.g. areas that you are not familiar with, decisions that you’re not comfortable with). We try to understand your design thinking and how you can use your depth of knowledge and experience from the past to solve completely new problems, so we care a lot about your rationalization around the "why" part;
Engineering deep-dive: Refresh your memory and in-depth understanding of the technologies that you used for submitting your homework, as well as common CS and software engineering topics - our engineers will dig deep into your background with that stack and topics;
Cultural fit (or the leadership interview as we call it): During the leadership interview we want to make sure we are a good fit for each other. We hold everything we do to our values. This is the stage where we make sure we'll keep these alive with new teammates. This is what makes the Shapr3D team unique.
The best advice we can give for the cultural interview is to come prepared with specific examples from your past that generally portray your own principles and values, or examples of situations where you demonstrated our values. Think of situations where you solved a complex problem, failures that changed your thinking, work that you are proud of, what situations or feedback you learned the most from.
In general this stage is more of an unstructured conversation. We ask a lot of open questions so we can learn a lot about you, and we encourage you to do the same!
Best of luck on your application process, and if you haven’t already, check out another useful link about our engineering team & culture here.