I stumbled upon a home page for a list of things every software architect should know. The number one item was an essay written by Nitin Borwankar entitled “Don’t put your resume ahead of the requirements”. Nitin said that architects are called on to recommend technologies for clients. He cautioned good architects to choose technologies that would benefit the customer, not the architect’s resume. You should always choose the best solution for the project. This policy will benefit you in the long run as you will have less stress on the job and happier customers.
Nitin cautioned that his principle did not mean you should not keep up with emerging technologies. However you should learn that stuff on your own time. If you truly want to use a hot new technology, you should search out a project where that technology would fit best. You should not try to use that technology on your current project and customer just to beef up your resume.
I found this principle to be sound on the surface. However I got the feeling that in this day and age, your ability to get a job through normal channels requires you to have all the good buzzwords on your resume. And recruiters don’t want to see this as a result of home projects. They want actual work experience in the field. This coincides with a shorter term perspective in the software industry. You often are judged by whether you know the latest hot tech. That makes it hard to make good decisions when looking out for your own interests on a project.
Now I know that the best way to get jobs is through personal networking. That being the case, it would behoove you to have successful projects and happy customers so that you get good references. Maybe this is what applies more to a more senior individual at the software architect level.
Personally I have seen great disasters when some new technology was forced onto a project I was working on. One time it was as simple as moving to Windows NT 4 as the target operating system. The project was already in a tough schedule. Then the architect decided it would be good to have NT 4 experience on his resume. We found some of our main code to break when switching to the new OS. Disaster ensued. This example is not a lone one. Time and time again some hot shots in charge chose a new and unproven technology. The result was long hours, and usually a project that got the plug pulled.
I am ashamed that I have been on more than one of these in my career. Both times I was not the software architect. It might be time to step up to the next level. Things may fare better if I have this golden principle under my belt. Thanks Nitin for your timeless essay.
Backtrack Linux - Backtrack is a Linux distribution based off Ubuntu. It is used for penetration testing and forensics. The distro was a combination of WHAX and Auditor. It...