Sunday 9 August 2009

Enterprise Architect vs Project Manager

Over the last few years, blogging has emerged as a new forum to exchange views and express opinion. I also thought of starting one but life had been too busy to try something new. Finally, I could manage to steal some time from routine activities and thought about scribbling my thoughts and views about, to begin with, Enterprise Architecture profession in a blog. The fisrt post in my blog is dedicated to establishing the clarity between the roles of Architect and Project Manager in IT context.

A lot of people struggle to differentiate between the two roles of Project Manager (or Programme Manager) and the Solution Architect (or Enterprise Architect). Others also fail to differentiate between the Solution Architect and the technical architect roles.

The terms "Architect" and "Project Manager" have been greatly abused in the IT mainstream context. I have seen designations such as "Java Enterprise Architect" or ".Net Project Manager", both of which dont make any sense at all. In this blog, I would like to put together some clarity to the the definitions and hope that it helps someone atleast to post the right job description and help them in setting the expectations right for both the job holder and the stakeholders engaging in discussions with these job holders.

Lets take the definitions one by one:

Enterprise Architect / Solution Architect: The best way to contrast these two roles is to compare them with Construction industry. A small Construction architect would design parts of building, blueprints of a conference room, floor of a building or at max a small building. Similarly, a Solution Architect would design a small piece of software, a new module/interface to existing product, or a new product with a view of making the design coherent with overall organizational IT Strategy.

a. A solution architect would normally keep him/herself updated with latest Architecture offerings such as TOGAF framework, SoA, Model-based architecture, Cloud computing, Software as a Service (SaaS) and concepts like that.

b. A Solution Architect would eventually grow into the role of an Enterprise Architect. Again comparing it to construction industry, Enterprise architect would be analogous to a senior architect in Construction industry, who would design a group of building, a part of a city or an entire township with a much broader view and impact. But again, the architect would just prepare the blue print!


As in the construction industry, an archiect needs to be aware of all aspects. eg. In construction, an architect needs to keep in mind the perspectives of builders, carpenters, plumbers in mind. Similary, in IT a Solution Architect / Enterprise Architect would need to be aware and conscious of database requirements, programmers, hardware engineers etc.


2. Project Manager: Project Manager, on the other hand, would be a person who builds products to the specifications provided. He would be more concerned about delivering to schedule, making sure teams work towards the design and solutions provided by Solution architect / Enterprise Architect. Again comparing with Construction industry, a Project manager would have to deal with construction workers (in IT, PM would deal with software developers), suppliers for bricks, cement, steel (in IT PM would deal with suppliers for software and hardware), construction PM would deal with building maintenance for handover/takeover of building (in IT PM would deal with support teams, DBAs for handover of It products)

a. An IT Project manager would normally keep him/herself updated with concepts such as Agile project management, Prince2/MSP/CMMI process frameworks, Project estimation techniques etc.

b. A project manager would eventually grow into (may be) a PMO manager, a Senior Projects manager overlooking a small portfolio of projects, or a Programme Manager

Though it is good to have a project manager to have some prior experience in executing IT projects but it is not necessary. We have seen Accountants and specialist scientists such as Geologists, Zoologists, Mechanical engineers executing the IT projects with grand success. For project manager role, you need very different skill sets and again, though (as I said before) the prior knowledge of IT does help but it still not required.

3. Technical Architect: The last role that remains is the Technical Architect (.Net Archiect, Java Architect, Oracle Architect etc): Lets compare these again to the construction industry. These are analogous to jobs of Plumbing, Carpentry, building, glass work etc. On similar lines we have .Net experts, Oracle experts which would specialize in one field and offer their expertise in their respective areas.