2: What Makes A Great Architect

The Architect Job Description

What are companies looking for with an architect?

Three primary responsibilities:

  1. Collaborate with team
  2. Use tools & methodolgies
  3. Develop high-level specifications

Key terms used:

  • "See the big picture"
  • "Strong technical background"
  • "Provide a framework for the the development of a software or system"

Responsibilities of a great Architect

8 Responsibilities:

  1. Abstract complexity - simplest possible representation (Insight)
  2. Understand tradeoffs (Insight)
  3. Maintain control (Leadership)
  4. Stay On Course (Leadership)
  5. Explain The Benefits (Communication)
  6. Inspire Stakeholders (Communication)
  7. Focus on the big picture - do not go into detail and be holistic (Vision)
  8. Act as a change agent - be a agent of change where process maturity is not sufficient (Vision but optional)

Personality traits of a great Architect

  1. Steadfast - the only certainty is uncertainty. You need to have a vision of where to go to, roll with the punches and course-correct.
  2. Trustworthy - be someone to be trusted to get the job done.
  3. Confident - you need to be confident in what you design. You need to emit confidence.
  4. Persuasive - you need to be able to persuade and hold your own in a discussion.

Common Pitfalls For Architects

Three types of power:

  1. Implicit Power - power with the job role
  2. Granted Power - power granted by the people (e.g. coming to you for advice, training etc.)
  3. Personal Power - ability to get back on your feet after a setback

Scenario: lead dev loses trust in architect

  • Empower your LD
  • Always present a united front
  • Be open to feedback
  • Change architecture if needed

Scenario: functional architect is giving invalid functional requirements.

  • Find the reason
  • Try to restore the personal power to the FA
  • Escalate up if needed

Scenario: Optimistic project manager

  • Bring PM in on the dev team
  • Find the reason: Optimistic PM, naive LD, slow devs?
  • Coach LD/restructure devs/readjust schedule/alter planning

Scenario: Architect role holds no power

Org doesn't understand the architect role.

  • Educate the C-Suite, be the change maker
  • Team up with PM, QA, FA and LD
  • Become the owner of the entire process
  • Leave org if unwilling to change