How many years of hands-on experience is enough?
I recently stumbled upon a question on linkedin.com regarding developers in
I agree with the question originator, but completely disagree with the second person.
I personally have 18 years of hands-on experience. Over the course of 18 years I went from IBM midrange environments to Microsoft Client/Server to Unix/Linux Java based platforms. I held positions ranging from programmer analysts to development manager to CTO but I managed to stay hands-on because I love technology and I don’t believe an IT Executive can be a great leader and mentor without a solid hands-on foundation and a good mix of up-to-date knowledge of technologies, especially as a consultant.
I’ve interviewed hundreds of developers and so-called developers and for the most part anyone with 5 to 10 years of experience makes a much better developer then one with 3 to 5. What’s important in software development is the basic foundational knowledge of software development. Knowledge and solid experience with object-oriented design, distributed applications, web-enabled solutions, and databases make a better developer then experience with latest tools and frameworks. Recent tools and frameworks simplify developer’s life by letting him/her concentrate on coding business logic. This is great, but it also opens up a lot of potential problems. A developer who uses frameworks without understanding how those frameworks actually work is like a race car driver trying to drive a race car without knowing what it means to shift gears and when to actually do it.
The only way to get experience and knowledge of the fundamental design and practical skills one has to spend a number of years actually doing it. Therefore a developer who is promoted to an architect or technical manager after 3 years in the field usually fails to deliver quality solutions. On the other hand, someone with 10 years of hands-on experience is usually both a great developer and a good fit for technical management jobs.


