Future of Work

Follow-up: How to assess the quality of a developer

Follow up interview with Emile Baccaini - Business Development Manager at CodeControl

In recent years “software developer” has become one of the most sought-after professions. But not all developers are on the same level and as in most professions there are clear qualitative differences between a newbie and an experienced developer. Software development is an extremely dynamic industry. You always have to be up to date and evolve your skills. Experience is an important criterion when it comes to finding the right developer for a project. But it’s not everything you have to look out for during the interview with the candidate.

Often the person hiring the developer does not have the necessary technical knowledge to assess the quality of the candidates. Maybe you know more about software development than the average. Maybe you even have some basic coding knowledge and are very familiar with the terminology. But is that enough to be able to judge, “That’s the right developer for my project!” ?

At CodeControl, we specialize in finding and recruiting the best freelance developers in the industry. In our first interview with Emile Baccaini, Business Development Manager at CodeControl, we already revealed how CodeControl is tackling this challenge. In addition to experience and good communication, empathy also plays an important role when it comes to evaluating a developer.

A person must be empathetic and able to accept feedback...

We have the advantage of working with a pool of more than 450 software development professionals and can call on the expertise of our freelancers at any time during the recruitment process. However, as this is not always the case, Emile now gives a few useful tips on how to best assess the quality of a developer as a non-tech person.

How can I assess the quality of a developer, not having any clue about coding or software development?

It’s important to learn how to recognize the red and green flags during an interview, especially for people who are not too comfortable navigating this industry. So we wanted to know from Emile just that: What are those red and green flags to look out for?

I don’t really know much about coding and software development myself, what do I have to look out for in an interview with a developer?

That’s really difficult, because then you can’t judge at all what level the developer is on and whether the code is bug-free. If at all possible, I would advise you to bring an experienced developer into the interview with you, to test the candidate’s coding knowledge. Friends, acquaintances or former colleagues might be able to help you. If you’re really completely on your own, I would advise you to read between the lines, and focus on the behavior and the candidate’s language. A good question is, for example: “Which areas do you think you are not 100% familiar with yet? This kind of self-assessment helps you to recognize certain qualities. Another good question is: “How do you want to develop and improve yourself?” For example, if the candidate replies that they already know everything and there are no gaps, that is a very bad sign. Even if the person talks around the question and doesn’t give a real answer, it’s not good at all. It shows that they are too arrogant on the one hand and cannot express themselves precisely on the other. Good communication, not only about coding and software, but also about general topics, is incredibly important.

And how can I recognize green flags?

Someone who has a good understanding of software development would say something like “Something new just came out and I wanted to take a closer look at it” or “I’m still learning this and that” when asked what they’re not so familiar with yet. There are millions of new features, tools and learning opportunities in software development and a certain interest in what’s new, pluts the curiosity to take a closer look is a very good sign.

Another good question is “Are you working on a side project right now?” We think that a developer who is a passionate developer doesn’t do the job for the money. A really good developer always tries to develop himself further, goes to conferences and meetings or has projects with friends going on on the side. This passion and enjoyment of the work itself is also a very good sign of good quality.

Otherwise, I can only recommend taking a look at GitHub. Most developers with enough experience are registered on GitHub, where all their projects can be found in so-called repositories. At GitHub a developer can collect stars and followers and with both it goes, the more the better! Because you can’t buy stars or influence the number of followers. You can only get both by doing extraordinarily good work on software projects. Even someone who has no coding knowledge can see from the GitHub repositories at which level a developer is approximately at.

In summary, one can say:

Red Flags

  • Arrogance
  • Apparent perfection
  • No interest in / knowledge of current events in your own industry

Green Flags

  • Several years of experience (the more experience, the better)
  • Curiousity
  • Honesty when it comes to knowledge gaps
  • Learning successes from past projects

What if it doesn't work out despite all efforts?

It happens to the best of us: You hire a developer and after a few weeks you realize that it just doesn’t work our. After all, an interview is just a glimpse at a person’s personality and their skills and sometimes, despite intensive screenings and a time-consuming hiring process, it can turn out to just not be a good fit.

One of the advantages of working with freelancers is that you can end the collaboration just as quickly as you started it. This may sound a bit harsh at first, but as Emile explained in his interview about the hiring process of a developer, they’ve got to “have it all”. If you want to find out how CodeControl handles problems between clients and freelancers, read our Insights article on the subject.

Of course, the best thing is not to let it get that far in the first place. How can this be avoided? According to Emile it helps to clearly define the expectations, the scope and the challenges of the project:

What can I do to avoid failed cooperation?

Emile, what would you say is the most common reason for failure of a collaboration between client and developer?

I’d say it’s mostly false expectations. When clients come to us with a particular product, such as an app or website, we look for the right developer for that project. But sometimes, after a few weeks, clients change their mind, want more, less or something completely different, that wasn’t discussed at the beginning. If this happens more than once, a developer may not want to work on the project anymore. As a developer, you need a certain structure and the workflow simply can’t change all the time.

Another reason is the challenge. A developer usually decides to work freelance because he wants a challenge and doesn’t want to worry about the constant maintenance of a single product. If it turns out after a certain amount of time on a project that the learning process and the challenges are not big enough, the developer may jump off the project.

Even if the expectations and demands of the project are well defined in advance, problems can sometimes arise. To avoid that, you could start with a small test project. If you couldn’t assess the quality of the developer properly in the interview, or if for some other reason you’re unsure whether the collaboration will work, smaller test projects are an excellent way to find out. The testing period can be a few days or a few weeks, depending on which mini-project is currently available. During this period, you can gather feedback from team members and managers who are working with the new developer and also ask an existing developer at the company to keep an eye on the newcomer. If the collaboration fails, you haven’t wasted too much time, and if things go well, you can hire the developer for larger projects.

CodeControl support

If you want to save yourself all the trouble of setting up a procedure and reduce the risk of hiring the wrong person, just work with CodeControl. Our advantage is a large pool of the best and most diverse talents. We don’t hire someone just because they are there. We are looking for the best talents worldwide, because today’s technologies makes it very easy to work remotely. After each project, we get feedback from both sides and thanks to this ongoing feedback process and the reach of our pool, we can always find the perfect match. We also offer general HR assessments to help you with your hiring approach right from the start. Read more about that in the Insights article with Emile.

Katharina Herbst Profile Picture

About the author

Katharina Herbst is a Localization Specialist living in London. Being an avid traveller, painter and cook, she's enjoying the freedom of remote work as a fulltime freelancer.

Interested in getting great fow updates?

Sign me up!