The true ASP.NET developer

by Mads Kristensen 17. July 2006 17:09

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.

Tags:

ASP.NET

Comments

7/18/2006 3:19:32 PM #

 Karl

Those are really good points.

I consider myself to be good on both fronts, but I also have to admit that it is hard to keep up with both and stay fresh.  As an ASP.NET developer though, I pride myself on being very creative, and using semantic code with standards in mind.

Karl

Karl |

7/18/2006 8:59:43 PM #

 Jon

The ASP.net developer is likely someone skilled at least in 5 levels of development:

-- html, xhtml, css, javascript (Presentation )

-- Request/Response model  (ASP and ASP.net)

-- database development ( design, stored procedures - goes beyond databinding )

-- multiple languages ( C#, VB, regular expressions, ? .... )

-- environmental tools (IIS, SSL, FTP, Visual Studio, SQL server manger...)

No one can learn it all.  ASP evolves continually and just when the last version starts to come together, out pops a new version which deprecates the old version.  

To compound problems, the old version products never go away and don't always get upgraded, so downlevel knowledge continues to pile up.

Now, if developers could just find employment.....


Jon |

7/18/2006 9:21:23 PM #

 Mads Kristensen

Jon: I agree that it's hard to learn all of it, but I do think it is important that an ASP.NET developer is skilled in all disciplines with no exceptions from your list.

Mads Kristensen |

7/26/2006 8:10:29 PM #

An American Developer

Now if only  you had offices in the USA for such a developer Laughing

An American Developer |

8/23/2006 2:36:09 AM #

 Andrew Norris

I've done a lot of work with asp.net, but more and more, I've started wondering if a model that allows you to stay closer to the HTML isn't a better solution long-term.

Fundamentally, the idea of asp.net is to take a web platform and hide enough details so that it looks like a desktop UI platform. This is a fairly leaky abstraction, and there are a lot of times when I wish I could make the abstraction go away and just deal with it as a server of web pages. And I say that as someone who didn't really learn web standards until I came to ASP.Net from the world of framework-based desktop and server applications (C#, Java, C/C++, etc.).

There are some incredibly cool things about asp.net -- for me, the ability to work with HTML element objects rather than messing around with manually emitting strings for dynamic content heads the list. But I think that platforms like rails show that you can have a well-architected system without having to resort to some of the tricks asp.net uses.

I don't want to dismiss asp.net, but I can't help feeling like it's two technology stacks forced together rather than a harmonious combination.

Andrew Norris |

8/31/2006 6:11:42 PM #

 Carl McDade

"but I can't help feeling like it's two technology stacks forced together rather than a harmonious combination."

Exactly. This is one of the main turn-offs of ASP.NET and the larger reason for ASP.NET not gaining the same popularity as classic ASP and losing out to PHP.

I think the author is wrong in his thinking. A web developer is just a web developer and should only know as much as it takes to implement a web application. If the same person knows enough about programming to carry it further then more power to them. But it is not requirement and no company should make it one.

The writing goes more to what the author or his company is looking for than the general requirements needed to hold down a position as a web developer using ASP.NET.

Carl McDade |

11/8/2006 2:28:17 AM #

 Regnard Kreisler Raquedan

Hi Mads,

"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."

What has been the usual feedback of desktop app developers from VB to .NET web applications?

Regnard Kreisler Raquedan |

4/26/2007 9:46:05 AM #

pingback

Pingback from theusualsuspect.com

theusualsuspect.com » Snobbery of the .Net Developer

theusualsuspect.com |

8/31/2007 3:08:04 AM #

Hank

I agree, it is hard to find people who really understand what is going on in an ASP.net application, both in terms of what is happening on the client, and then on the server.  How many read-only pages do you find out on the web with huge viewstate for example?  And how many people really ever use any event other than onpageload to accomplish what they need to at the server?  Developers who even know the other events exist in the page lifecycle, much less what they are called, or what they are used for are all too rare.  I don't want to get too critical of others, but sometimes it can be very frustrating following in on code that was written by folks who just clearly don't get it.
By the way, just installed BlogEngine today, and so far I'm loving it.  Nice work.

Hank United States |

7/10/2008 10:50:13 PM #

Tom

I just have to say that it is very true.  I got my degree as a programmer working mostly in assembler and moved on to vb/c++.  I love C# though and worked with it at home and now doing it at where I work.  I spend lots of time refactoring and making excellent code.  But I stink at CSS design and waste stupid time trying to figure out why something looks fine in IE but not Firefox and have no idea how to fix it.  

Tom United States |

Comments are closed

About the slave

Mads Kristensen Mads Kristensen
Web developer at ZYB and founder of BlogEngine.NET. More...

LinkedIn ZYB Facebook Last.fm Twitter View Mads Kristensen's profile on Technorati

The Lounge

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2008