A Recruitment Guide to Screen .NET Core and .NET Developers

woman-3597101_1920
Image by Gerd Altmann from Pixabay

It’s great that you have received a ton of applications and CVs for your .NET/.Net Core developer position, but there isn’t enough time to have a sit-down interview with each of them. You will need to carry out a technical screening process.

A good .NET developer is hard to find, so the interview there is no room for errors in the interview process, and you certainly can’t skip over CVs in case you pass over the perfect candidate. The solution is to screen your candidates, filtering those who don’t pass the bar while being able to interview those who have the skills.

This guide will briefly explain what .NET technology is and some of the best methods to screen candidates in a fast, efficient manner.

What is .NET?

Microsoft created the software development framework .NET, a controlled environment for developing, installing, and executing operating systems. It’s most commonly used with Windows but not always. It has many similarities to the Java platform.

When using the .Net platform, you will be able to code in a variety of languages including C#, Visual Basic, F#, and C++. There are also numerous libraries and frameworks for you to easily create different apps for mobiles and desktops, both basic and sophisticated. .Net has a huge advantage because of the natural integration with other Microsoft tools and software. This framework is both mature and stable with a large developer community.

What does an IT recruiter have to know about .NET?

Your .NET developer will have to know various languages, libraries, and frameworks like ASP.NET, MVC, or Entity Framework. .Net frameworks are at times quite similar, so it’s not necessary for your candidate to know each and every one of them. If they aren’t familiar with a framework, check if they at least know the principles behind it. A university degree is great, but it doesn’t count for as much as hands-on commercial experience with .NET. Even non-commercial experience is a head start.

.NET Core Framework

This was created to overcome previous problems with porting the framework to other hardware and operating systems using .NET. .NET Core framework is now open source, supporting Windows, Mac, and Linux.

.NET Core isn’t a replacement, in fact, the two are being developed simultaneously. Applications built in .NET still need to be updated and maintained. Due to technology and/or finance, it may not even be possible to update an app from .NET to .NET Core.

The different skills needed for .NET and .NET Core

In general, the two are alike and the differences may boil down to the libraries and components. It shouldn’t require a great deal of effort for a .NET developer to get used to working with .NET Core. Certain aspects of .NET (such as ASP.NET Web Forms and .NET C++) aren’t supported by .NET Core at the moment.

Some .NET components can be used in .NET Core apps, but not vice versa. A company may choose to rewrite the software they are using into .NET Core, to do so, you will need a developer with knowledge of both. Others prefer to write new modules directly in .NET Core. The most common use for .NET Core is with low-risk projects that are in the early stages- startups.  

From here on in, we will refer to .NET and .NET Core as .NET, unless we need to specify differences.

Verifying .NET developer Skills during Screening

  1. Their CV

You need to be able to decipher valuable information without getting lost in .NET terminology. Recruiting a .NET developer means you need to understand its frameworks, build tools and other resources. It’s about speaking the same language as your candidate. Keep a .NET vocabulary list nearby just in case.

Azure is a Microsoft cloud platform and its demand is forever increasing. It is worth scanning CVs for experience with Azure. .NET developers with Azure knowledge could be familiar with:

  • Web apps
  • Serverless functions
  • Cosmos DB
  • Service fabric
  • Blog storage
  • Containers and microservices

Azure is still very new and is quite a deep topic.

.NET technology and its interchangeable names

One thing you will notice is how some of the technology names are abbreviated or interchangeable. Here are some examples:

  • ASP.NET, ASP.NET MVC, .NET MVC
  • EF, Entity Framework, ADO.NET Entity Framework
  • Windows Communication Foundation, WCF, SOA, Service Orientated Architecture

There are also a number of others that are similar or with just a smaller difference. For example, ASP.NET 3,4, and 5 are all similar. C# 7.0, 7.1, 7.2, and 7.3 are similar, whereas C# 6.0 is different.

It is also worth making a note of some of the extreme differences. Again, the list is rather long but a couple of examples are WPF being completely different to Windows Forum, and ASP.NET is nothing like ASP.NET Web Forms.

Are .NET certificates necessary to assess .NET developer skills?

Companies’ opinions on certificates will vary. Some feel they are the best evidence of knowledge, others feel they focus too much on theory and not enough on practice. At the same time, some developers don’t have any and others think additional certificates will make up for their lack of commercial experience.

Starting with the first level, here are some qualifications issued by Microsoft:

  • MTA- Microsoft Technology Associate
  • MCSA
  • MCSD: App Builder

Other certificates and exams may not be around anymore, but they are still a good sign of the candidate’s .NET understanding.

Other relevant .NET developer skills that can be found on a CV

The following points are strong signs that your candidate could be a valuable member of your team:

  • Experience in large projects/large volumes of data- showing they are capable of dealing with problems that may arise in the project
  • Participation in conferences/hackathons/programming meetups- this demonstrates a higher level of dedication to their job
  • Taking part in open-source projects- an indication of above-average knowledge in .NET technology
  • Phone/Video Interviews for Technical Screening

Once the CVs have been narrowed down, you may still need to reduce the numbers before the sit-down interview. A phone or video interview provides the opportunity to get to know the candidate better.

Questions to ask

The questions to ask will depend on the position you need to fill and the skill set you are looking for. There are some general questions that should be included on your list. Asking what the most interesting project they have worked on gives you the chance to see the levels of difficulty of their projects and even their preferences.

A good question for your candidate is to ask them if they can explain the difference between two similar frameworks. It’s not a test to see if they know the answer, but more about if they can explain it in a simple yet effective way. Also, try to include some questions that involve the candidate’s opinion. Open questions give the candidate the chance to express himself or herself more.

Finally, include a behavioral question during your phone/video interview. Find out about a mistake they have made, or an alternative decision they could have made for a more successful outcome. This is particularly important if you want to learn how a developer learns from their mistakes.

  • Online Code Testing for Technical Screening

The chances are, an online coding test will give you far more insight into your candidate than a phone interview or their CV. Let’s discuss how programming tests can be beneficial and what should be included.

.NET Online Coding Tests as a Primary or Additional Screening Method

This is something that will depend on the company. Some choose to use it as the primary method whereas others will use it alongside the CV and/or the phone interview. There are advantages to using online coding tests as a primary method:

Programming skills are one of the most important for a .NET developer. It is essential to verify these skills early on in the recruitment process.

It makes sense only to invest time in candidates who can demonstrate their programming skills. You don’t want technical recruiters wasting time on candidates who won’t be able to perform the tasks of their job.

When a candidate takes part in a coding test, they are more engaged and less likely not to show up on the actual interview.

Which .NET Online Coding Test Should You Choose?

The coding test you choose must be fair and assess the candidate’s .NET abilities to the full. They also need to be based on real-life coding challenges that aren’t based solely on theory. Multiple-choice tests aren’t the way to go because they don’t provide the opportunity for the developer to show the experience they have.

Here are 5 tips to help you choose the right .NET coding test for you:

  1. A .NET programming test should assess general .NET developer skills, libraries, and frameworks. Someone who has talent in all areas will bring more to your company.
  2. The test should have a difficulty level similar to the tasks they will be carrying out in the job and it must be based on real-life coding challenges.
  3. You could prepare a programming test that is based on the companies exiting codes, another way to provide a test that is similar to the tasks in the job.
  4. Some coding tests include programming tasks with a code review challenge. This will focus on the experience a candidate has had, especially with debugging. If you are filling a senior developer vacancy, this is a must.
  5. In the real world, a coder has unlimited resources to write codes and solve coding problems. There is no sense in creating a test where a programmer can’t use external sources, as it doesn’t mimic the real world.