We're going to start Jon off with a bit of a softball, asking him to create a linter for C#. Here’s the question:

Create a linter for C# which ensures that code structures are balanced. Specifically, code blocks starting with (, { and [.

Normally this question would take a candidate about 30 minutes, even if they haven't studied their interview questions.

Code is just a string and we're checking to make sure that certain characters have their counterparts. How would you solve this? Think about it for a minute and see if your ideas match Jon's.

We'll be using C# for this and the rest of the questions.