ASP.NET is a double sided discipline that demands skills and understanding of two very different worlds: the web as a platform and .NET development. The problem is that it is hard to find an ASP.NET developer that is strong in both disciplines. Let me elaborate.

By the web as a platform, I mean that the developer must have absolute understanding of how the web server request/response works. He must also be fluently in XHTML, JavaScript, CSS and AJAX to some extent. He must know how to deploy and implement a web solution on a web server. In order to manage these disciplines, the developer must have at least 2 years of professional experience in the field.

An ASP.NET developer must also know his way around the CLR, data binding, user controls, the page event model etc. There are a lot of things in the entire ASP.NET framework that is important to master in order to take full advantage of the capabilities in ASP.NET. In order to fully master all the ASP.NET features, the developer must have a deeper understanding of the CLR and general programming. That means at least 1-2 years of professional experience.

That sounds like two different profiles: a web developer and a .NET developer. But that is not how it works. An ASP.NET developer must master both disciplines to such a degree that no task is impossible and also carried out the right way the first time.

I see two kinds of ASP.NET developers all the time. The first kind started in web development by doing HTML etc. and then switched to the ASP.NET platform. The second started development in VB6, Java, C++ or similar and then made the move to ASP.NET. Both developers are very good at their particular discipline, but not that good at the other. The VB6 guy doesn’t care about standard compliance, CSS driven design etc. and the HTML guy doesn’t care about refactoring and separating logic from design etc.

It is very rare to meet an ASP.NET developer that fully masters both disciplines. At Traceworks, we soon begin looking for such a developer, and I think it’s going to be very difficult to find the right profile. You would think that a certified .NET developer (MCAD or MCSD) with exams in both ASP.NET and low level .NET programming is the right choice by default, but that is not the case. To master any of the ASP.NET disciplines you need experience – a lot of experience. I would choose experience over certification any time.

When the time comes, I will add a link to the job opening for a true ASP.NET developer here.