3 ms·
I've seen the Software Architect role defined in many different ways. Some are the ones you've described, some are "paper only" architects who never code, but
by dabent 14y ago
I've seen the Software Architect role defined in many different ways. Some are the ones you've described, some are "paper only" architects who never code, but theorize to some unknown end.
The ones I've see that are most productive are the ones who more closely match the description in the article. They aren't above anyone, but they are supposed to be some of the most technically knowledgable people in the organization. Too that end, they have some of the most demanding jobs in the group and have to do more and understand more than a Senior Developer, who may only be well versed in one language or have the depth of understanding at all levels of the stack that an architect should.
Architects at my current employer will be called on to write production level code in more than one language, have the charge to watch over the commits and have the responsibly and authority to fix problems they see. They also end up being the janitor sometimes, pulling wires in the server room when the network engineers are short handed. It's a system that works pretty well.
- Ingaz 14y agoI'm main Architect in my current company now. And I hate this title - I've seen too many so-called architects who can't distinguish SOAP-call and MQ-message. Q: You have WebSphere Process Server - do you use BPEL for your scoring workflows? A: What is BPEL??
- aik 14y agoI don't think this is for your point, but here's a counter-example: A large company uses 100 widely different technologies, and obviously no one can be an expert or even slightly knowledgeable about all of them. However when you're a SOFTWARE ARCHITECT [oooh!] it seems like there's an expectation that you should be an expert at everything. As soon as you're not (e.g. your example), you're seen as incompetent. In this case there's an unfair expectation.
- Ingaz 14y agoOf course. But 100 really widely different technologies is A LOT. My specialization - telecom industry. I'm dealing with families of technologies and they are not so plentiful. Messaging is messaging, DB is DB, application servers are application servers. Backoffice-frontoffice-mediation-billing remains the same in essence even if you change every component. I think that I can become good (after 2-3 years) in banking software or manufacturing. I think it almost impossible for me to become proficient in something like game production, high performance computing, many others