Should Candidates Be Given Test Assignments?

Should Candidates Be Given Test Assignments?

As someone with nearly two decades of experience in software development and hiring, I've been on both sides of the table. I've applied to numerous jobs and have also been a lead, responsible for hiring developers. Let's delve into the debate about test assignments from two perspectives.

From the Candidate's Point of View

Junior Developers: If you're a junior developer trying to break into the industry, you often don't have a choice but to complete test assignments. The competition is fierce, and these tasks can be your ticket in.

Mid-Level and Senior Developers: Here, I find test assignments to be largely pointless. On average, they take about 5 hours to complete. Spending 5 hours on a potential job that you may not even get is irrational. That time could be better invested in applying to other companies with simpler hiring processes. What frustrates me the most are companies that send a test assignment immediately after receiving your resume. My immediate thought is, "Let's first discuss salary expectations, the team, and what you're looking for in a candidate before diving into test assignments." Why waste a candidate's time without even a preliminary discussion?

From a candidate's perspective, it's more efficient to focus on companies that value your time and are willing to have a conversation first. 

Post-Technical Interview Scenario: If you've already had a technical interview, which typically lasts at least an hour, and you're then asked to complete a test assignment, it indicates that the company still has doubts about you. During the technical interview, I usually ask critical questions to gauge if the company is my ideal employer. If their answers make me feel confident, I might be willing to do a test assignment. Otherwise, I'd rather spend my time on opportunities where my candidacy is less in doubt.

From the Lead's Point of View

My Stance on Test Assignments: I've never asked candidates to complete test assignments. I find it unnecessary. For me, a developer's GitHub repository with their projects is much more telling. If they don't have one, or their projects are under NDA, that's a significant drawback. In such cases, if I have serious doubts about their technical interview performance, I might consider a test assignment to save time. But generally, I prefer to see their existing work.

GitHub vs. Test Assignments: Reviewing projects on GitHub provides much more valuable information than a simple test assignment. It shows how the candidate writes code, thinks, and uses design patterns. You can see how they structure their projects. What does a test assignment tell us? That the developer can solve a simple task in 4 hours? It's not even guaranteed that they did it themselves; they might have gotten help from a friend or ChatGPT. You don't get insights into how they structure a project or their problem-solving approach. Simple tasks rarely showcase advanced design patterns.

Complexity of Tasks: Understanding a developer's level requires more complex and extensive tasks. If it's a paid assignment that takes a day or two, that's a different story. I've used this approach a few times when I had doubts about a candidate after the technical interview. In such cases, you can learn a lot. But discussing how to conduct a technical interview is a topic for another day.

Conclusion

The debate on whether to give test assignments is nuanced. For junior developers, it's often a necessity. For mid-level and senior developers, it's generally a waste of time unless the company shows serious interest. From a lead's perspective, GitHub repositories provide more valuable insights than simple test assignments. If doubts persist after a technical interview, a more extensive, paid assignment can be useful.

What are your thoughts? Do you agree or disagree with my perspective? 

Popular Posts

My most popular posts

Maximum productivity on remote job
Business

Maximum productivity on remote job

I started my own business and intentionally did my best to work from anywhere in the world. Sometimes I sit with my office with a large 27-inch monitor in my apartment in Cheboksary. Sometimes I’m in the office or in some cafe in another city.

Hello! I am Sergey Emelyanov and I am hardworker
Business PHP

Hello! I am Sergey Emelyanov and I am hardworker

I am a programmer. I am an entrepreneur in my heart. I started making money from the age of 11, in the harsh 90s, handing over glassware to a local store and exchanging it for sweets. I earned so much that was enough for various snacks.

Hire Professional CRM developer for $25 per hour

I will make time for your project. Knowledge of Vtiger CRM, SuiteCRM, Laravel, and Vue.js. I offer cooperation options that will help you take advantage of external experience, optimize costs and reduce risks. Full transparency of all stages of work and accounting for time costs. Pay only development working hours after accepting the task. Accept PayPal and Payoneer payment systems. How to hire professional developer? Just fill in the form

Telegram
@sergeyem
Telephone
+4915211100235