As far as I can see Solutions Architect is just a different "marketing" term for Applications Architect. Is that correct or are the roles actually different somehow? If so, how?
And yes, I have searched for this both on StackOverflow and on Google.
As far as I can see Solutions Architect is just a different "marketing" term for Applications Architect. Is that correct or are the roles actually different somehow? If so, how?
And yes, I have searched for this both on StackOverflow and on Google.
The spelling?
Seriously though - they're both BS job title fluffing. "Programmer" not good enough for you? Become an "Architect"!
Really... What is the world coming to?!
Edit: I clearly hurt some "architects'" feelings!
Edit 2: Though I agree with the sentiments that the phrasing can be interpreted to mean some people deal with the whole problem domain (eg hardware, software, deployment, maintaining), most people who want to satisfy a client (and make more money) will provide a full service, if required, regardless of their title.
In real life, it's just marketing fluff.
Basically in the world of IT certifications, you can call yourself just about anything you want as long as you don't step on the toes of a "real" professional organization. For example, you can be a "Microsoft Certified Solution Engineer" on your business card, but if you write the magic phrase "Professional Engineer" (or P. Eng) you're in legal trouble unless you've got that iron ring. I know there's a similar title for "real" architects, which I can't remember, but as long as you don't mention that you can be a "Cisco Certified Network Architect" or similar.
No, an architect has a different job yhan a programmer. The architect is more concerned with nonfunctional ("ility") requirements. Like reliability, maintainability, security, and so on. (If you don't agree, consider this thought experiment: compare a CGI program written in C that does a complicated website, verus a Ruby on Rails implementation. They both have the same functional behavior; choosing an RoR architecture has what advantages.)
Generally, a "solution architect" is about the whole system -- hardware, software, and all -- which an "application architect" is working within a fixed platform, but the terms aren't that rigorous or well standardized.
For people who have never worked in a very large organization (or have, but it was a dysfunctional one), "architect" may have left a bad taste in their mouth. However, it is a legitimate role.
When an application becomes so vast and complex that dealing with the overall technical vision and planning, and translating business needs into technical requirements becomes a full-time job, that is an application architect.
When an organization has so many applications and infrastructure inter-dependencies that it is a full-time job to coordinate the technical aspects of those without being involved in the code of any of them, that is a solutions architect.
When an organization becomes so large that it becomes a full-time job to coordinate the high-level planning for the solution architects, that role is an enterprise architect.
Note: numerous other answers have said there is "no standard" for these titles. That is not true. Go to any Fortune 1000 company's IT department and you will find these titles used consistently.
The two most common misconceptions about "architect" are:
Both of these misconceptions come from architects as a whole doing a pretty bad job, and organizations doing a terrible job at understanding what an architect is for. It is common to promote the top programmer into an architect role, but that is not right. They have some overlapping but not identical skillsets. The best programmer may often be, but is not always, an ideal architect. A good architect has a good understanding of many technical aspects of the IT industry; a better understanding of business needs and strategies than a developer needs to have; excellent communication skills and often some project management skills. It is essential for architects to keep their hands dirty with code and to stay sharp technically. Good ones do.
There is actually quite a difference, a solutions architect looks a a requirement holistically, say for example the requirement is to reduce the number of staff in a call center taking Pizza orders, a solutions architect looks at all of the component pieces that will have to come together to satisfy this, things like what voice recognition software to use, what hardware is required, what OS would be best suited to host it, integration of the IVR software with the provisioning system etc.
An application archirect in this scenario on the other hand deals with the specifics of how the software will interact, what language is best suited, how to best use any existing api's, creating an api if none exists etc.
Both have their place, both tasks must be done in order to staisfy the requirement and in large orgs you will have dedicated people doing it, in smaller dev shops often times a developer will have to pick up all of the architectural tasks as part of the overall development, because there is no-one else, imo its overly cynical to say that its just a marketing term, it is a real role (even if it's the dev picking it up ad-hoc) and particulary valuable at project kick-off.
There are no industry standard definitions for Architect job titles -- Application/System/Software/Solution Architect all refer in general to a senior developer with strong design and leadership skills. The balance of design, strategy, development (often of core services or frameworks) and management differ based on the organization and project.
The only "Architect" job title that really has a different meaning for me is "Enterprise Architect", which I see as more of a IT strategy position.
Sounds like the same to me! Though I don't totally disagree with Oli. I'd give a selected few people the Software Architect title if they want it but experience tells me the people who would actually deserve the title of Software Architect usually aint that in to titles.
An 'architect' is the title given to someone who can design multiple layers of applications that work together well at a high level. Anything that gets into a generic type of 'architect' without a specific type of technology (i.e. "Solutions", "Applications", "Business", etc) is marketing speak.
In my experience, when I was consulting at Computer Associates, the marketing cry was 'sell solutions, not products'. Therefore, when we got a project and I needed to put on my architect's hat, I would be a Solutions Architect, as I would be designing a solution that would use a number of components, primarily CA products, and possibly some 3rd party or hand coded elements.
Now I am more focused as a developer, I am an architect of applications themselves, therefore I am an Applications Architect.
That's how I see it, however as has already been discussed, there is little in the way of naming standards.
When your title doesn't fit on your business card because you wear too many hats, then someone wordsmiths a nifty title for you.
e.g. Programming/IT/Project Management/Strategy/Business Analyst
Other ways to receive an architect title:
There are valid differences between types of architects:
Enterprise architects look at solutions for the enterprise aligining tightly with the enterprise strategy. Eg in a bank, they'll look at the complete IT landscape.
Solution architects focus on a particular solution, for example a new credit card acquiring system in a bank.
Domain architects focus on specific areas, for example an application architect or network architect.
Technical architects generally play the role of solution architects with less focus on the business aspect and more on the techology aspect.
Programmer = no fluff just stuff
Architect = no stuff just fluff
Programmer + Architect = both stuff and fluff