One of the essential elements that set us apart is our people. Over the years, we've been able to refine our hiring process to find developers whose personality and skill set are great matches for the projects we're working on.
After the initial application, our HR team does a preliminary interview to learn more about the personality of the developer. Once determined that they are good match for us, we move them onto the next step, which is to take our Technical meeting, which we candidly call: Upstack's Coding Challenge. Our coding challenge is conducted by senior developers who specialize in different and versatile technologies, covering a very large platform.
Who They Are And What They Know
While it is highly technical, the Coding Challenge also gives insight into the personality of the applicant, as well as it's a highly personal experience. Our senior developer, Adrian Taralunga for example, approaches the Coding Challenges he conducts from a contextual place. He questions the applicants about their background, experience, and work portfolio to determine the kind of challenge he gives them.
Pablo Picasso once said, "Learn the rules like a pro, so you can break them like an artist." While development is characterized as a technical field, the best developers are, without a doubt, highly creative problem solvers. This is why when we conduct Coding Challenges, we start with foundation skills. A truly skilled developer will understand the basics of the technology he is working with and not just the advanced aspects.
See How They Work
After the basics comes the fun. The developer is given a small task, where our senior developers can observe how they work in real time. Watching how they discover bugs, and then how they subsequently debug, informs us of not only their skill level, but their work persona. All of this info helps us build teams that are as cohesive as they are productive.
In the end, it's all about perfection (or at least the perfection we know, use and desire from others) when looking for good candidates. A mix of skill level, personality traits, and ability to learn quickly lets us know who will work well within our company culture. How well they mesh is a quintessential element of us being able to continue to build awesome products that matter, in the most efficient and profitable way.