There are hundreds of questions you could ask to determine a job candidate’s fit for an ASP.NET related position. Characteristics of a good candidate include high comfort level, skill level, and an in-depth understanding of essential and advanced development concepts.
The interview questions below make a good primer for screening employees working in the .NET framework. That said, this list will just get you started. The best interview questions will grow from the specific job offer, ideally identified by those already working in that department and on related tasks.
ASP.NET is a robust framework with rich possibilities that can vary widely depending on the business and/or team. Ideally, a brainstorming session with current team members is the best way to build a list of relevant and valuable questions.
Enlist all stakeholders. Build a list of potential interview questions from the job opening’s direct reports, collaborators, internal customers, and management.
Prioritize questions. Once a good long list of potential questions is developed, team members and other stakeholders can vote on individual items to produce a shorter, more usable list.
Tailor interview questions to match each candidate. For example, if a candidate proclaims a strong knowledge of C#, have him or her write a short C# FizzBuzz script. That may seem like a weak example since the FizzBuzz problem is a good simple test for just about any developer job opening. The main point is to look through the application for question ideas.
Use prefab questions as a starting point. Begin with the list below, then tailor the questions to fit the actual job description more closely. Come up with other questions that arise directly from the position.
The sample questions (and answers) below are a good starting point and should serve as a good gauge of whether an applicant grasps the basic concepts. They’re somewhat generic, which is why a more specific approach involving existing team members is favored.
What does “PostBack” mean in ASP.NET? A PostBack happens when a user takes some action (like submitting a form) that sends information from the page to the server via POST.
Explain the ASP.NET page life cycle in brief. ASP.NET goes through a series of stages in the life cycle of each page. Per Microsoft:
What’s the difference between ASP.NET MVC and ASP.NET WebForms?
Web Forms were one of the first ways to create web apps with ASP.NET. They utilize a designer and server controls to make it easy to design a form with a point and click interface like Windows Forms applications.
MVC or the Model View Controller separates a web app into data, display, and actions. Proponents of MVC point to its simplicity, reusability, and “less buggy” nature.
In reality, both MVC and Web Forms are tools with different strengths for different applications. By the way, the new ASP.NET Razor Pages is a new framework that is sort of a hybrid of the two.
What is view state in ASP.NET?
View state is data used to preserve page values and control values of Web Forms during postbacks.
Explain briefly the use of Global.asax.
Global.asax lets us write code that responds to “system level” events like starting up the app, ending a session, or errors, without having to add special, redundant code into each and every page on a website. We use it in Visual Studio by selecting Add > New Item > Global Application Class.
What’s the difference between Server.Transfer and Response.Redirect.
Server.Transfer sends information from one web request to another, all on the server side. A response is not sent to the browser to cause the change. On the other hand, Response.Redirect sends an HTTP 302 message to the browser and causes a redirect in the browser.
What are the ASP.NET session state modes?
There are several different session state modes in ASP.NET. They provide different ways to store the session state.
List some different ASP.NET validators.
[adinserter block=”33″]
Can we create a web app with both MVC and Web Forms?
We can use both methods to make pages by including assembly references in the Web Forms app.
Write a short script that sends an email with ASP.NET.
Ask a prospective employee to perform a simple coding task like the FizzBuzz example mentioned above, or to create a simple script like the one below. This example from ASP.NET Tutorials sends a simple email:
protected void Page_Load(object sender, EventArgs e) { try { MailMessage mailMessage = new MailMessage(); mailMessage.To.Add("your.own@mail-address.com"); mailMessage.From = new MailAddress("another@mail-address.com"); mailMessage.Subject = "ASP.NET e-mail test"; mailMessage.Body = "Hello world,\n\nThis is an ASP.NET test e-mail!"; SmtpClient smtpClient = new SmtpClient("smtp.your-isp.com"); smtpClient.Send(mailMessage); Response.Write("E-mail sent!"); } catch(Exception ex) { Response.Write("Could not send the e-mail - error: " + ex.Message); } }
Here are a few tools that go beyond just asking the right questions, helping you to source top talent for your development needs.
Looking for more tips and guidance on hiring and interviewing developers? Check out the following resources:
For insight into the top interview questions and best practices, today’s dev leaders use to hire the best candidates, check out our expert roundup on the top ASP.NET interview questions. Read this post to find out about the 9 most important performance tools your team needs to succeed. And, if you’re looking for an application monitoring solution, Retrace, Stackify’s APM solution, has you covered.
Obviously, you want to hire the best developer you can find, but you also want to hire a candidate who will fit well within your existing team. By asking the right questions and using best practices for hiring, you can hire a leading developer with the right mindset and skills that complement your existing team’s current capabilities.
If you would like to be a guest contributor to the Stackify blog please reach out to stackify@stackify.com