Codility – how to disrupt recruitment of software engineers and have fun in the process!
A few thoughts on a small, Polish company that helps Silicon Valley giants hire top talent.
Imagine you are Google. Or LinkedIn. Or SurveyMonkey. Or Dropbox. What is your most important asset? The one that differentiates you and drives your ability to innovate in the more and more crowded and competitive tech space? It’s not your computational power. It’s often not even your original business idea. It’s the talent that you are able to gather under your roof, it’s the people that transform the tasty meals from the company cafeteria into lines of cutting-edge code. What is your key challenge then? How to recruit the best ones. What is one of your key risks? That you will waste hours of time of your current employees on inefficient recruitment processes which won’t really deliver top talent to your door.
Traditionally, recruiting of programmers in Silicon Valley starts with collecting resumes, followed by a few phone calls with software engineers currently employed by the company. They ask candidates questions like “how would you code this or that in this or that programming language”. This process is quite inefficient, though: takes a tonne of valuable employee time (just look at software engineers’ salaries!), is largely incomparable between recruiters, and cannot be performed by non-technical staff. Codility created a remedy for that – it started as an online, automatic tool to filter out the candidates unable to deliver correct solutions to easy programming tasks.
The business model has not changed a lot since the idea appeared in the founder, Greg Jakacki’s head, about 10 years ago. Codility creates value for its clients via:
- offering programming tests – it has a pool of over 100 different tasks at three difficulty levels, which are taken by candidates from any location they choose,
- providing detailed reporting and benchmarking against other candidates – reports can be evaluated by non-technical employees of the client (saving time of programmers at the expense of HR staff),
- offering the intuitive e-mailing tool – candidates can be contacted directly through Codility’s system.
Besides that, the firm has sophisticated tools for plagiarism detection embedded in the product, it can work together with the client to create customized tasks, and offers API and ATS integration. It is also open to creating white-label solutions for its most dedicated clients. It provides 24/7 customer service.
Codility defines itself as software as a service company. It has experimented with a number of different pricing strategies, and currently charges the bulk of its customers a monthly fee, based on a number of tests to be performed within a month. However, there is a number of caveats to that. Firstly, each prospective customer is offered a 14-day-long free trial, which allows Codility to be noticed by smaller potential clients, not just tech giants. Secondly, it is open to providing discounts to start-ups, in recognition of its own start-upish roots and start-upish culture. Thirdly, contracts with its largest clients are individually negotiated, and any customization / white-label tools are individually priced. Negotiations of the biggest contracts are often run by the COO herself.
Operating model of the company very strongly supports its business model.
Clearly, just like for its clients, Codility’s competitive advantage driver is its ability to generate tests and reports that are able to filter the best prospective programmers for its clients. It is able to achieve that by efficiently transforming its assets and capabilities into the best possible outcome.
The most important “asset” for the company is its people, and Codility recognizes it: majority of the firm’s technical employees used to work for or intern at some of its’ major clients or their competitors, hence they know exactly what the clients are looking for and are able to design the most adequate product. The company also uses advisors extensively, which helps it generate leads, gain market intelligence, and establish presence.
A related aspect is the intellectual property: company founders ensure it does not leave the firm, both through contracts with its employees and clients, but also through building trust-based company culture.
Codility also pays attention to the physical capital which supports the culture-building efforts: it has funky offices, up to the Silicon Valley standards, where employees feel at home (hammocks included).
Obviously, as any software company should, Codility strives to effectively manage its capital and equipment (namely, computers with significant computational power).
The company structure is lean: hires about 30 people across its three offices (Warsaw, London, and San Francisco – recently opened to be close to Codility’s Bay Area clients), mostly as programmers and account executives. It is non-hierarchical: both CEO and COO are young, energetic, down-to-earth, and extremely open. The COO travels frequently between the offices and the employees are advised to do the same to ensure consistent company culture.
The company is still small, hence a lot of the processes are not entirely codified (e.g. recruiting). However, the most important process – generation of the product – is clear, codified, and overseen by the top people in the company.
As a consequence of the strategic alignment between the business and operating model of the firm, Codility is hugely successful: bootstrapped and growing its revenue at crazy rates (unfortunately, the numbers are not public and cannot be shared here). Let us keep our fingers crossed for the good times to continue!
Sources:
- https://codility.com/
- Interview with Codility’s COO, Natalia Panowicz
Very cool post. Love the company and the system around it is having a huge impact on the tech sector… how far can it scale? What are the internal operational bottlenecks? TopCoder in teh US provides an interesting contrasting model… organizing contests instead of testing…
Thank you! Their addressable market is huge – they have been focusing on tech clients (their client list includes LinkedIn, SurveyMonkey, etc.), but essentially every organization that hires programmers is their potential client (all industries, all countries). I can imagine that if, say, a tech bubble bursts, they can focus their sales efforts on, say, technology departments of investment banks. Or if the US economy goes south they can focus on emerging markets. There is clearly flexibility there, and the business is scalable (you can reuse the tests on different clients, within reason of course).
Their major barrier to growing at scale, though (and a current bottleneck) is the customer service (contrary to the tests, service is more costly to scale, but obviously required by clients). This is why, being in their shoes, I would perform a sensible customer segmentation and develop a low-engagement model for the least important customers.
I do not view TopCoder and other contests for programmers as a competitor. I think candidates can use TopCoder as a tool to learn and test themselves, with a limited downside risk (and potentially quote their results on their resumes if they rock it). On the other hand, Codility comes into play when a candidate is actually looking for a job (not for a challenge) – it works like an extension of an HR department and tests a candidate in a more “controlled” environment.
Thank you Gosia, Agreed about TopCoder, although sometimes I wonder if the contests are really just a rating service in disguise… I would certainly run them that way!
Oh wow, how interesting! I love it! I wonder if they can scale their business model to hire outside the software industry, for example consulting. Case interviews aren’t so different from software code, but the challenge will be to judge their interpersonal and communication skills. The other aspect of recruiting I find inefficient and inconsistent is resume filtering. Often they’re filtered by one / two people and run the risk of unconscious bias. Some level of automation would help to deliver more consistent outcomes.
Thanks for your comment, Ishan – great points!
I think their current technology works best for anything that has a specific solution. Case interviews seem a bit more complicated, but I definitely think that some sort of analytical testing – which consulting firms in certain geographies do as a next step after resume screening – would be a good adjacent business to expand to. Not being able to judge soft skills is not a huge problem – this service is supposed to compliment the recruitment process, not substitute it entirely, so soft skills can be assessed at different stages of recruitment.
Fully agree on the resume screening part – it would be great to expand into that. I know some companies try to build automatic resume screening in-house, but certainly it would be more efficient to have a firm for which it would be a core business.