What is software architecture? What is the role of a software architect? How do you define software architecture? How do you share software architecture? How do you deliver software architecture?

The key difference between developer and architect roles

Vision, responsibility and leadership

At our last user group, we asked people what they thought the key difference between the developer and architect roles was. I said that I'd publish the results, so here they are :

  • Architect has responsibility for ensuring coherence of all aspects of the project as an integrated system.
  • Architect responsible for overall technical quality, developer for lower implementation decisions.
  • Authority and knowledge.
  • The architect holds the vision and forsees the system before it is built.
  • Being the holder of the vision.
  • How long your mistakes take to get rid of.
  • Money and the willingness and drive to lead people.
  • Authority and leadership.
  • A leader who can apply/share their broad experience.
  • Pragmatic overseer of the technical solution.
  • Power, fame, money.
  • Accountability and responsibility.
  • Communicating with the business as well as the techies, selling the vision to both.
  • (always?) Having the best design ideas.
  • Vision.
  • Scope and vision.
  • Responsibility.
  • Altitude (the size of your horizons) or the amount of time spent in meetings :-).
  • Architects are more handsome.
  • Outward looking not inward looking from development team.
  • Your impression of yourself and other people's impression of you.
  • Their view of systems. Architects can see both micro and macro (inwards and outwards) while developers see micro and outwards and need to be carried by the architect to see macro/outwards.
  • Maintaining and communicating a consistent macro vision of the system under development.
  • Needing to have an opinion but delegating and listening to others.
  • An architect takes a holistic view and is (hopefully) able to understand the bigger picture.
  • Making bigger design decisions (which cannot be easily "undone") and taking responsibility for them.
  • Concerned with the bigger picture.
  • Architect defines architecture, infrastructure, general layout of the system, technologies and frameworks. Developer implements it.
  • There's not a single key difference, but one is developers don't have responsibility for the whole project but architects do.
  • Responsibility, i.e. scope, unifying teams and clients.

I think you'll agree; there are some really interesting responses. Vision and "seeing the bigger picture" are the most common themes, although responsibility and leadership also feature heavily. If you're reading this and didn't come along to the user group, what are your thoughts?

Speaking of user groups, the next one is scheduled for Tuesday 4th March and we'll be presenting/discussing a case study of a small project that a couple of us were involved in last year. More details will follow, but this is your chance to dissect a small project and take a look at the reasons behind the decisions that we made.



Re: The key difference between developer and architect roles

It should not be missed that an Architect should not only work from "above", or at a higher level than a Developer. An Architect (or at least a good Architect) should have at least a reasonable understanding of all of the components within the architecture from the technical as well as the business angles. More generalist than specialist.

Re: The key difference between developer and architect roles

How did everyone miss the most important distinction? Although "selling the vision" comes close. The principal skills of an architect are the soft skills necessary for building consensus and getting buy-in. Technical skills are a dime a dozen, but getting people to put aside their egos and work on ideas that they didn't originate or even agree with is what makes a successful architect.

Re: The key difference between developer and architect roles

Architect is a person responsible for performance,scalability and extensibility of an application

Re: The key difference between developer and architect roles

Morgan perhaps you're getting confused. This article is talking about a 'software' architect....

Re: The key difference between developer and architect roles

I on the contrary agree that Morgan's point is a very (if not the most) important point. I'd say a successful architect's second biggest asset are soft skills, the first being good awareness of technology and the ability to think strategically and see the bigger picture. It can get very challenging at times to sell one's ideas and vision to other stakeholders (I'll refrain from using the M word) even when one can see that those ideas will lead to success. Being able to create consensus and make others feel that they've also contributed to the overall idea is critical and not many can do that. That apart, engaging with peers in a constructive manner and getting development teams to think in terms of their contribution to the overall solution is again something an architect with good soft skills can achieve.

Add a comment Send a TrackBack
Software architecture for developers