We’ve said it before, we’ll say it again — Cobalt is scaling crazy fast! Over the next year our Engineering team is doubling in size to continue to support and secure our customers. To do that, we need to hire a lot more engineers who are eager to leverage innovation and creativity in the pursuit of solving real-world customer challenges.
Cobalt’s Engineering interview process is constantly evolving and adapting to meet the intricacies of each career path or team. We aim to hire candidates that adapt quickly to a fast-growing, ever-changing, remote-first environment. Successful candidates are those who connect with our values and what we consider important. True Cobalters execute at speed, are humble learners, lead with grit, and truly embody the respect, inclusion, and collaboration that makes us one Cobalt.
All interviews are conducted remotely via Zoom and right now our process looks something like this:
The application review process involves reviewing your CV and your socials (LinkedIn, GitHub, etc.). The key criteria we look at during the CV screening is your location, level of experience, and tech stack knowledge:
- Location is important as our entities are in the US and Germany for now. We are looking at expanding so we can work with more global talent soon.
- We try to ensure that you have the appropriate level of experience for the role you are applying for. If we see a match for a different or future role, we’ll let you know.
- If you have worked directly with our tech stack, that’s a bonus, but we’re all about humble learning. The key element is for you to demonstrate curiosity and commitment to learning our technology.
We aim for a balance between those who have worked for fast-growing smaller startups, and those with experience working for bigger enterprises. Most importantly, we seek candidates that want to work specifically for Cobalt and show an interest or passion for the work we do.
The Initial Interviews
The Initial Interview involves a Screening Call by a member of the Talent Team and/or the Hiring Manager. The first interview aims to focus on how closely your skill set and experience match the requirements for the role. We’ll also touch on logistics like your availability, salary expectations, and location or related Visa requirements if applicable. This initial interview is also an opportunity for you to learn more about Cobalt, the role, and whether we are a good fit for your career ambitions. Just as much as we’re interviewing you, you’re interviewing us, so ask questions about life at Cobalt, the team, the management style, and challenges you may face.
#PROTIPS: do a bit of research on Cobalt so we know you are interested in us and we’re not just another company you’re applying to. When scheduling interviews, we include a link to your interviewers’ LinkedIn profiles, so do some digging!
The Technical Interviews
The Tech Interview is split into two parts. The parts differ depending on the role and level you have applied for and allows you to meet different engineers from the team you will be joining.
During the first part, the engineers will assess your technical skill set through discussion on past issues, solutions and best practices you have used. Your past performance is the best indicator of your future performance, so it’s best to discuss specific examples and use the STAR method when responding:
- Situation — What was the problem you were trying to solve?
- Task — What were you responsible for?
- Action — What was your solution/approach to solving the problem?
- Result — How did it turn out? (Note: The result doesn’t always need to be successful. What did you learn from mistakes made?)
The second part (if applicable) is the Technical Challenge, which involves either a take-home exercise or a pair-coding exercise. This allows us to understand if you are able to work collaboratively with our engineers to solve a problem. It also gives you the chance to familiarize yourself with how we work and if you connect with our engineering team and approach. Effective communication is critical, particularly when working remotely.
#PROTIPS directly from our Engineers:
Konrad (Senior Software Engineer): “Technical skills can be obtained when you have basic problem-solving skills. I’m fine with people not solving the task but walking me through it, or using pseudo-code in a way that convinces me they understand it and really thought about it.”
Sergey (Staff Software Engineer): “It is important that an Engineer understands that the code they write is written 99% for humans. Just being able to write code that runs without errors is not enough. Machines need much less clarity than humans. You can think of engineers as writing a book together. Almost nobody writes machine code directly anymore. Huge amounts of CPU and memory resources in modern computers are ‘wasted’ so that engineers, developing products we use, could understand each other when they work. All architecture abstractions, patterns and books are dedicated to establishing a common language to write the book from the first sentence.”
Ivan N. (Software Engineer): “If you don’t know the answer, tell us what you think it is. A lot of the questions have no right or wrong answer but are more about your opinion based on your knowledge. Ask what we think would be a proper answer, from our point of view. Show a good balance between pragmatism and engineering craftsmanship = Pragmatic Craftsmanship.”
Paul (Software Engineer) discusses his top 4 criteria when interviewing engineers:
- “Communication: You should be able & willing to focus a lot on your communication, and try to participate as much as you can in team discussions. Hiring a top engineer won't be of much help if that person doesn't share his/her knowledge and help the whole team improve.”
- “It's not about what tools/technologies/frameworks you use or you're familiar with, but more about why you use a certain tool, what does it do for you, why is it better for solving certain types of problems compared to other tools. Such understanding is fundamental for making educated choices in the future. We're at an early stage where we're building a lot of new things, and we don't want our choices to be based only on familiarity with a tool, but we want to be sure we're using the best tool to solve a problem.”
- “Passion & Engagement: You love writing code, but you understand that is only a part of your job, and you put the same importance in product discussions, providing your feedback and expertise to help the product & design team during the refinement process.”
- “Curiosity: You don't settle with the set of skills you have, and you're always interested in learning new things and stepping out of your comfort zone. Whenever you learn something new, you're excited to share that knowledge with the rest of your team.”
The Final Interviews
The final interviews are conducted by one or multiple of the following, depending on the level of the role: Product Manager, Engineering Manager, Director of Engineering and/or VP of Engineering.
Product Manager (PM)
The PM will try to understand how you will partner with our Product team to deliver quality at speed with multiple iterations, using agile best practices. They will also assess your ability to proactively communicate progress updates and potential bottlenecks.
Engineering Manager/Director of Engineering/VP of Engineering
The Leadership Interview will give you a deeper look into the team dynamics, our values and culture, the direction the team is moving in, and how you could contribute.
#PROTIPS directly from our Engineering leaders:
Nick (Director of Engineering): “Each person you hire influences the next. I need to think about how they will complement the others on the team and how they will work with the Engineering Manager and Product Managers.”
Our hiring process continues to evolve as we grow and as we get more feedback from our Engineers and candidates. We’re all about iterating and improving, so if you have any suggestions, drop us a line and check out our open positions.