Core skills vs. Current skills

time to read 2 min | 265 words

Given a choice between a developer who can explain what MVC is vs. a developer that knows .Net 3.0, I would always choice the first developer. I just had finished talking about this with Jeremy Miller and Udi Dahan about the most important things that you need to have in your developers. The converstion started from talking about making design "compromises" for non-advance developers. And moved to the reasoning behind this approach.

Basically, there are a lot of developers that chase that technological rainbow, investing all their time in technology, and not on understanding. This is a great treatise about the subject:

... Job requirements for engineers have an alphabet soup attached to them. I've been rejected for jobs because the version of Sybase I last used is too old, and this is for a role where SQL isn't even the core requirement ...

Frankly, it is a much better investment to understand the design of software than the mechanics of it. It makes it much easier to pick up the mechanics at a later date.

Companies that don't understand that is doing themselves a dis-service, because they are basically hiring a programmer whose only interest is to use current technologies, not the business problem or the best way to solve that. Technical solution isn't the only way, or even the recommended one.