Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Possible Duplicate:
What are the things necessary to become good technical architect

I have many years of development experience mostly in Microsoft technologies and looking forward for an architect role now and I have some questions regarding the same.

How imporant is domain expertise for an architect? should the knowledge level be same as a business analyst? any one domain is enough or some experience in multiple domains is required?

should an architect know multiple technologies (.NET and Java both)? even if one of them is enough, Is he expected to be knowledgeable about all the tools and technologies for example Workflow, MSMQ, Sharepoint,.NET mobile, Silverlight, WPF?

should an architect know about other things like preparing estimations, RFPs (proposal) etc. as well?

share|improve this question

migrated from Dec 7 '11 at 18:25

This question came from our site for professional and enthusiast programmers.

marked as duplicate by Yannis, maple_shaft, Adam Lear Dec 7 '11 at 20:59

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

though the title is the same, the other question is a generic one and I have asked some specific questions in my post for which I couldn't find clear answers in the other one. – RKP Dec 8 '11 at 11:59

How imporant is domain expertise for an architect? should the knowledge level be same as a business analyst? any one domain is enough or some experience in multiple domains is required?

Some domain expertise is almost always a good thing. However, in many organizations the responsibilities are laid out as described in this image. The architect can and should reply on product management to own the domain expertise end of things.

enter image description here

share|improve this answer
Does anyone know where the original of this image is? I whipped this up in mspaint ... and I'm sure it shows... – Kyle Hodgson Dec 7 '11 at 18:58

I've never gone into a role as a technical architect. It's usually something you fall into. Basically, once you're "that guy" that everyone on the dev team looks to for an answer or a strategy for tackling a complex problem you become a "de facto" architect. I've had the fortune of having a few managers observe the phenomenon and make it a formal role.

Look at the SWEBOK or even Steve McConnell's (one of the original SWEBOK contributors) professional development ladder. Specifically, you should be targeting a level 11 or level 12 for supplementary knowledge (beyond coding proficiency).

He also provides a sample progression guide for what I would define as being a technical architect here

share|improve this answer

I think that a good, solid development background is a must. It is probably the most important thing for becoming an architect. You need to understand the solutions you will be building, and the only way to do that is to have actually built solutions.

The other areas (multiple development technologies in your background, working on estimates, RFPs, and design documentation) are important, but "nice to have".

If you have experience as a lead developer at your current employer, or another, this will help also. I would even say that if you don't have experience in this role, get that first. You may find that you like it, and might not want to go further. Often becoming an architect means you will write much less (if any) code.

Note that this is different depending on whom you work for. Some employers will have different requirements for the role.

share|improve this answer
I think an architect should continue writing should be more along the lines of "exploratory" than day to day coding tasks, but writing code is still important although as you say it will probably be less of it. Your goal is to create a kernel that can be used to grow a larger area of the application. – Michael Brown Dec 7 '11 at 19:09
Yes it is definitely a good idea for an architect to continue doing coding tasks. The reality is that, depending on the organization you are in, you will see much less coding as the architect role progresses. Some may not see any at all. The one nice thing is that most architects probably have enough experience and say in their day to day role that they may get to still write some code by just saying so. – Alan Delimon Dec 9 '11 at 13:55

Not the answer you're looking for? Browse other questions tagged or ask your own question.