Wednesday, December 27, 2006

Hard life of the Architect

I read sometime ago that Developer is someone who knows how tree leafs work, how they cooperate, what they like, what not... Designer is someone who knows how the whole tree works, what roots like, what bark need, how to feed leafs, etc. Architect is someone who knows how the whole forest works.

I think that such metaphor tells other guys that Architect (good one) is really invaluable person in the project team. Architect has to be well educated engineer with many years of experience and couple of projects ahead. Architect has to be a guy from the bright side of the force ;) i.e. someone who has been working as a Developer and Designer for couple of years. Architect has to have wide knowledge of state-of-the-art technologies, libraries, frameworks, standards, protocols, security mechanisms, methodologies, etc. Architect has to be decisive, charismatic and influential.

Good and experienced Architect has really hard life. It's his/her decision what technologies, frameworks, etc. will be used to implement project. It is not easy to choose but it is even more hard to convince other people involved in this project that chosen ones are good and will do for the project.

If you think that it is easy try to choose technology, language, framework in order to implement web based, distributed, system that has to have access to relational database(s). System's operations will require transactions and appropriate security mechanisms.

Even after the decision is made it may turn out that some decisions were wrong... It's not Architect's fault (not always) because requirements change very often, customers change their mind, systems change, etc. All such factors make Architect's dreams shallow and short :)

No comments: