All Posts
Software Craft

How We Hire Software Craftspeople

Published on
July 24, 2024
Contributors
Arohi Parikh
Head of Operations
Subscribe to our newsletter
Share

Incubyte is a combined effort of its team. Working here entails bringing your knowledge, curiosity and authenticity to the table. Our recruiting process plays a vital role here, and it is carefully designed to identify the right people whose technical prowess, culture and mindset, all align with that of the company.

We deeply care about our core values (Why Incubyte) and strive toward making our workplace a nurturing, diverse and inclusive environment. There exists a culture of constant learning and feedback enabling an equal opportunity for everyone to thrive professionally and be the best version of themselves they can be.

A typical interview process at Incubyte involves 5 stages:

  1. Application (See our open positions)
  2. Self-paced, prerequisite learning
  3. Call with the People Success Team
  4. Technical Discussion
  5. Hands-on Pairing

Self-Paced, Prerequisite Learning

Once your application is shortlisted, you will receive an email with a list of resources and short videos. This email is meant to help prepare you for the interview process and set you up for success. The suggested learning in the email is self-paced and there is no time limit for you to complete it - we’re perpetually hiring!

Some of our favourites:

  1. Test-Driven Development
  2. Software Craftsmanship
  3. Clean Code

The email also highlights other skills needed for the interviews. For example, knowing common git operations, hands-on knowledge of your IDE (with shortcuts), and an understanding of a unit testing framework to name a few!

Call with our People Success Team

This step helps align your expectations from the role with what we have to offer. Being remote-first also means that it is important we’re aligned not just on tech, but also on culture, attitude, and core values! Our People Success Team would also love to answer any questions you have about the company, so ask away!

Technical Discussion with an Incubyte Craftsperson

A 30-minute discussion focused on your technical background and journey so far. You can expect the conversation to revolve around languages, frameworks and databases you have worked with, your prior experiences, projects, etc. This is for us to get introduced to the depth and breadth of your technical expertise.

Hands-on Pairing with an Incubyte Craftsperson

This round is where the fun begins! Fire up your IDE with the language of your choice, have a working Hello World project pre-opened, and be ready to get your hands dirty. We will solve a short Kata together as a team! Consider this round as a pairing exercise, in which an Incubyte Craftsperson will partner with you and act as a navigator. It is fine to look stuff up on the internet, we Google things while working on production projects ALL the time - it’s the thought process that matters!

It is important that you have a good Wi-Fi connection since we’d want to have your video on during both these technical rounds.

This brings us to the end of our interview process. Expect to walk away with an offer once you have cleared all these rounds. We’ve even put together some additional information to help you crack it! You’re welcome. ;)

Cheat Sheet (a.k.a. How to Crack Interviews at Incubyte)

We have broken this down into two parts:

  1. Technical
  2. Non-technical

Technical

We want to see how you code, think and generally vibe with the things that matter to us. Clean coding, Test-Driven Development (TDD), Pairing, Refactoring, Behaviour Driven Development (BDD), and working in iterations are a few practices we take seriously. In our interviews for Software Craftspeople, we look for everything from a neat directory structure to the use of build management tools like Maven, Gradle, npm; proficiency in the programming language of your choice (we majorly use Java, C#, Python & TypeScript); unit test frameworks such as JUnit, testNG, PyTest, Jest, Mocha and more!

We do not expect everyone to be proficient at all of the above, but knowing about the benefits and committing to master them is a great start. Preparing for the interview by implementing these practices on a few Katas will help a lot.

Non-Technical

Attitude, effective communication, the ability to accept and deliver feedback, how well you use your IDE (read-shortcuts), the ability to work collaboratively as a team, and a consultant mindset to name a few, are some qualities we look for in a future team member. A common thread that binds every single person at Incubyte is the passion to keep learning. We learn -> apply -> learn again -> apply once more towards the goal of achieving professional mastery. We believe that each individual owns their own career and is a lifelong learner. Here is a curated a blog on books we recommended to this effect: (here)

Life cannot be all work. Read your favourite books, write blogs, help with documents on GitHub, contribute to OSS or give back to the community, you will be provided with endless amounts of encouragement for wherever your passion lies.

To Sum it All Up

Our interview process helps us not only identify the interviewees’ technical skills but also their intrinsic qualities such as principles, beliefs and values. The key take-aways are:

  1. Code should be logically correct
  2. It’s not just about completing the task, it’s more about the approach
  3. We are huge fans of clean code practices
  4. Simplicity and readability top the game
  5. Effective communication and the right attitude are as vital as technical proficiency

We look for people with hunger for knowledge and a passion for mastering their craft. If you think you have the perfect blend of skills and expertise (or know someone who does) for this, drop us a note at careers@incubyte.co

Go to current openings.