| Author |
12 Essential Skills for Software Architects - What we call things?
|
Luke Murphy
Ranch Hand
Joined: May 12, 2010
Posts: 295
|
|
Hi Dave,
One problem I find with the role of "architect" is the word itself. In different companies it means very different things. Some companies don't have anyone with the "architect" title and a tech lead or very senior Engineer(s) do the architecture. Other companies can call a role a "Technical Architect" when in reality the role is more like what many would call a "Solution Architect" role. Other companies will just throw the word architect onto a role to make it sound fancier.
If we take a step back, the word Engineer traditionally was always more technical in significance than the word Architect. The Engineer ensured the bridge would stay up and the Architect made it look nice. Now, the roles obviously blurred and the Architect had to be concerned with structural soundness, but traditionally, the Engineer was always more technical. However, in our industry anytime the word Architect is used it generally has the implication the role is more technical than an Engineering role.
I wonder was this a mistake. Yes we need a word for someone who understands non functional requirements, the problem domain in great detail - but why can't this person just be a Principle or Master Engineer?
Furthermore, the more experienced an Engineer is the more they should know about things like non functional requirements, their problem domain, best practises etc etc.
The lines become blurry between Architect / Senior Engineer and as any good Architect / Engineer knows when you don't have a clear separation of concerns you don't have good design :-) What's your opinion on this?
Regards
|
 |
Dave Hendricksen
author
Ranch Hand
Joined: Dec 06, 2011
Posts: 31
|
|
Hi Mark,
I agree with your statements.
The word architect can be ambiguous and varies from company to company.
I believe you generally nailed it when you said it entails “non functional requirements, their problem domain, best practises etc”.
I also believe it also may include activities such as estimating, technical project oversight, working across multiple groups, working with management, working with areas such as new product development, and selling/promoting your ideas/technical vision.
I know I have heard my role also described as glue – I do whatever I need to help ensure the project is successful (even success can be ambiguous at times).
Depending on the specific area, you may also have application architects, network architects, storage architects, …
In general, someone is occupying the role of architect. Generally, I view this as the person that is technically responsible for a project or major system/platform component.
Thank you for the post!
|
Dave Hendricksen [12 Essential Skills for Software Architects]
|
 |
 |
|
|
subject: 12 Essential Skills for Software Architects - What we call things?
|
|
|