Monday, 19 November 2012

What is a Test Architect?

(Re-written Feb 2017)

This blog post was originally posted about 5 years ago and is consistently one of the most popular posts on the site here. The interesting thing was it mainly linked out to an article by John Morrison over at Oracle as I felt he summarised the role of Test Architect very well. Time moves on and my thoughts have diverged sufficiently enough that this article needs refreshing and more recent experiences need sharing.
So, 5 year on is Test Architect still a thing?
In short, maybe. A quick search for Test Architect pulls up the original blog posts by myself and John along with a bunch of jobs advertised on Indeed, CWJobs, Total Jobs and LinkedIn. 1000+ jobs - or do we?

Closer inspection reveals that the search is mainly pulling back tester roles and not Test Architect roles. Looking in Feb 2017 I see only 2 references to Test Architect in the job search. It would appear that as in 2012 this remains a niche role/title. In fact I'd go as far as to say that as in 2012, the Test Architect isn't a standard role at all.

Alan Page blogged back in 2008 that at Microsoft they avoided reference to it, instead seeing it as a senior test role and that there was no single definition of what a Test Architect actually was. That makes perfect sense to me and in fact it a GOOD thing, because that was the whole point of branding myself as a Test Architect.

Background
In a previous life I worked with architects in electronics manufacturing. They had the challenge of understanding electronics design, manufacturing processes, testing and consumer/product expectations. The result was a role that was filled by a senior electronics professional, with broad technical, process and business knowledge along side commercial awareness.

That to me is the essence of a Test Architect. It absolutely IS a senior role and it requires a depth of experience and breadth of knowledge applied in context of the business.

So given there's no standard definition of what a Test Architect is let's define some core characteristics and responsibilities.

What is a Test Architect?
A Test Architect is a senior testing professional who's primary function is to design solutions to testing problems the business faces.

These solutions are solved through the application of contextually relevant process and practice, the use of tools and technology and by applying soft skills such as effective communication and mentoring of both team and client.


What does a Test Architect actually do?

One thing I'd lift out is that ideally they do NOT do Test Management. That is the Test Architect is essentially a deep technical specialist focusing on design, implementation, use, enablement of the testing function and so the overall development function as well.

The Test Manager remains responsible for the strategic direction and tactical use of the testing function, for the line management of the team, the mentoring and training, the hiring and firing, etc.

It may be the roles are combined, but it must be understood a Test Manager isn't automatically going to cut it as a Test Architect. Likewise, a Test Architect with no experience of team leadership will struggle to design and improve the process and practice applied to the team. That said, my view is a Test Architect is likely senior to a Test Manager professionally, even if operationally they report to the Test Manager. (I propose however they report to the Scrum Master or whoever heads up the overall development function.)

Responsibilities of a Test Architect may include:
  • Supporting the Test Manager in achieving their strategic goals for the Test Team by providing technical support to the Manager and the team

  • Possess broad awareness of testing approaches, practices and techniques in order to help design and deliver the overall testing methodology used by the team

  • Have the ability to monitor the effectiveness of the testing function and bring about improvements through insights gained via analysis at all stages of the SDLC/STLC

  • Identify what tools and technologies can be implemented, aligning with that already used across the broader development function and in-line with the skill-set of the team

  • Design and develop the test automation framework, harnesses and code libraries to enable the team to both use and enhance them across successive projects

  • Take responsibility for test infrastructure including environments and software, liaising with teams such as DevOps and Support in areas such as CI/CR and IT budgets

  • Provide technical know-how, documentation and training to test and other business functions

  • Stay up to speed on process, practice and technology developments to ensure they are brought in-house and enhance the solutions applied to the testing problems

In essence the Test Architect works to ensure that approaches, tools and techniques are built into a relevant methodology. They monitor, optimise, mentor, collaborate and continually improve the test team on behalf of both the Test Manager and the rest of the development function. To that end the role must be held by someone of good experience and seniority.

Mark.


Liked this post?

0 comments: