Consultant Profiles

Interview, IT Architecture experiences, 2023, October 

Matthew Hargreaves

My first role was mid to late 1980s. Up to that point, I had focused on software engineering, and a software engineering delivery management role at Honeywell Bull in Melbourne saw me commissioning a network of Unix workstations. I already had done some systems development in AT&T Unix. All the usual suspects were there: bootp, build servers, NIS (Yellow Pages as it was then), NAS, and network backups. The things a Unix network needs. It was fascinating that Honeywell still used the ‘B’ programming language. There was a diversity of Unix workstations – Sun OS, Solaris, Apollo and others. Not long after this, I got a gig at Telstra’s Specialised Bureau Services, essentially assisting Telstra Operations Architects in the then Unix systems and how best to support them operationally. They had a pair of HP midrange systems with plenty of redundancy, including RAID storage. This was my first exposure to professionally run IT operations. I learnt a lot from the Telstra Operations Architects about proactive systems management and analysis. This was the early 1990s and a growth period for Unix systems. The internet had taken off, with Sun Microsystems (now Oracle) selling like hotcakes, and Sun, HP, IBM, and Digital Equipment Corp. (DEC) were all offering mid-range Unix systems. I was getting experience on all of them. 

In the mid-1990s, I was in Europe and got a gig on an early IBM RS6000 AIX (Unix) telephony project at Barclaycard. It has become a typical delivery pattern of mine, IT Operations Architecture — delivering infrastructure architecture to take mission-critical developments into production. As the project infrastructure lead, I completed a security audit of the product. It is still surprising how developers abuse Unix’s ‘root’ account. I developed migration tooling to deliver changes to production environments reliably. Now, we call that DevOps and base it on modern toolchains. A common challenge at this point is application monitoring, explicitly bringing together all the various log files into one place and tracking issues from within the logs. Developers can tend to reinvent logging, writing to bespoke logfiles and the /dev/console, and only occasionally using the system logger (Syslog). All this is best centralised and log file monitoring systems deployed. This is operations architecture, setting the architectural rules and prosecuting them. I also developed tooling to assist with that. Thankfully, now we deploy Splunk, DataDog, or some other. After leading the operations architecture and taking that program into production, Barclays retained me as a lead in their Unix Systems Management Team (USMT), an operations architecture team for the ever-increasing number of Unix systems at Barclays. As an IBM shop, RS6000s predominated, but there were Solaris, HP and others. 

A typical pattern at Barclays was IBM mainframe staff working on Unix systems for the first time. I maintained some of USMT’s operations scripts and remember being called into a project to help a batch engineer with shell scripting. He said, “But how do you get the ksh to restart one of the steps? I can’t get it to work”. It turned out that Job Control Logic (JCL) scripting was being migrated to AIX, and there was an expectation for ksh to have this facility. It’s interesting how we can get so used to our environments. I implemented a step restart logic into a shell script library for him. This is a typical challenge when migrating production environments. My USMT liked the solution, and I got the job of creating a framework and libraries for all USMT’s shell script batch and delivering the Unix batch architecture for Barclays. 

Yes, that was very much the way at that time. The discipline of architecture has grown over time to be more hands-off, but at that time, it was hands-on. I might do some hands-on software engineering now, but my architecture work tends to be hands-off. 

Yes, some of the time. Operations is the end game. You need to start from the expectations of the eventual operations and work backwards. That’s similar to why enterprise architecture starts with business architecture. You must understand the business objectives and roadmap to work on the delivery architecture. 

Over 30+ years, in short, most if not all of them! Business architecture, IT delivery governance, Technology Architecture, Integration Architecture, Domain Architecture, Software Architecture, and Operations Architecture. The list goes on. IT architecture is now very diverse. Consider, for instance: 

Software Architecture: I studied programming methodology at University and used Jackson Structured Programming extensively in industry and, over time, working as a software architect, adopted Universal Modelling Language (UML). I studied Software Architecture with Rational, working as a Rational Software Architect. To your point about being ‘hands-on’, Rational had a sound principle of insisting their software architects regularly take sabbaticals out of architecture doing hands-on work. That way, architects keep in touch with what they are architecting. Rational is probably now thought more of as a products company, but initially, their drive was all about architecture. I worked in software architecture when the Rational Unified Process (RUP) was the gold standard. It was the best process delivery framework I have worked with when correctly understood and implemented. Agile Methods and the Agile project manager have supplanted RUP’s popularity. That may not be an improvement. Agile increases the frequency of verbal communication but often needs more focus on written communication. 

UML is another interesting case in point. UML led the way in describing object-oriented architecture and design and then grew to cover other areas. However, that made it more challenging to learn the entire language, and most folks only needed to know some of the language, only the parts necessary for their work. UML use is declining, which is a shame as we need a consistent language to describe our architectures and designs. UML is so helpful in that regard. 

Architecture: A Common Consistent Language: This is central to my understanding of architecture and engineering in general. An architect needs to excel at human communication. It is the architect’s responsibility not only to own the architecture but also to communicate it effectively. For this, we need a language that is both concise and easy to understand. Everyone needs to have the same understanding of what is being written or drawn, and there needs to be some language reference to explain the language. Architects need to lead in human communication. That’s why a lot of what we see from architects is visual – plans, gap analysis, road maps, etc. This needs to be backed up by defending the architecture, maintaining architecture standards, explaining the rationale why exceptions cannot be made, or, where they are made, the criteria. To me, it is all about effective communication. And for that, we all benefit from a consistent, effective language among architects. For software architecture, for me, it starts with UML. For enterprise architecture, it is TOGAF. 

I have been a member of The Open Group and a certified TOGAF-9 enterprise architect for over a decade. TOGAF starts with business architecture and encompasses business strategy, strategic goals and business alignment with technology. Zachman seems so dated to me now. Considering the primacy of successful communication, organisations like the Australian government standardising on their own AGA means we are more likely to get the best value by adopting that framework for Australian government work. With security architecture, NIST seems the most advanced and best adopted. Overall, whatever I do, I think through a TOGAF lens and, as I have done for my entire career, adopt all extant local standards wherever I work. I hope TOGAF adoption grows, but the framework is quite large, and I see many practising architects still need TOGAF certification. 

Yes, with Process Management.  As we discussed, all architects need to learn and master industry standards. I have been active in several process management and improvement initiatives in engineering. As process owner for engineering risk management and software verification, I contributed to the Capability Maturity Model Integrated (CMMI) based process management. CMMI is a framework for improving the process maturity of an organisation. It stresses configuration management, ensuring processes are documented and quantitively managing processes in higher maturity levels so they can be optimised. I delivered engineering improvement programs of work based on quantively managed strategies. This pattern resembles architects defining architecture and architectural rules and measuring delivery effectiveness. It uses a different language to architecture, though. 

Also, with Quality Management. As the technology portfolio architect at the National Australia Bank (NAB), I delivered QA business cases, architected solutions and governed the delivery of validation projects. At the time, the NAB was usual in seeing this work through the lens of architecture. The architecture paradigm is getting more widely adopted and more diverse: We now know this pattern of what we previously did, without considering it as architecture, through the new lens of architecture. 

The best measure concerning my work is my endorsements on LinkedIn. By far, ‘architect’ outstrips the other skills, and enterprise architecture nudges ahead of solution architect. Taken together, those two are the bulk of my LinkedIn skills endorsements. That is a fair reflection. It might have included software architecture two decades ago, but that barely gets mentioned now. 

This year, I have been delivering the business, solution and software architectures for a new business initiative, NetTracks, a streaming service for musicians’ play-alongs. This project establishes a marketplace for this type of music and provides features particular to its domain. As a business model, streaming services have become quite popular for enjoying movies and music, but nothing similar exists for play-along, which has different needs. NetTracks changes this. 

Also, this year, I completed my Enterprise Architecture Security Framework for Blockchain Apps for the Internet of Things Security Institute (IoTSI). I have been involved with the institute since its inception, contributing to its frameworks, but this is all my work. It has taken much research to complete. My experience with operations architecture makes me exceptionally qualified and concerned about the risks associated with this space. This framework helps organisations evaluate the risks and provides a playbook for addressing them. 

I have always worked in architecture, and that sometimes includes infrastructure architecture. There is just too much to detail over that period. Still, regarding infrastructure architecture, highlights would include: Around the turn of the millennium, I led infrastructure architect teams for News Corporation, establishing Telstra’s hybrid fibre-coax national network’s conditional access network. Then later, at Ericsson Australia, I led the Unix Systems team, comprising five architects, five systems administrators and around ten third-level support staff. Both of these engagements were leadership roles in operations-focused infrastructure architecture

Another infrastructure architecture focus over the last decade has been three assignments to deliver consulting architecture for data centre relocations, including cloud migrations. These have been for OzPost, the NT Dept of Education and Qantas. Consulting architecture is an adjunct to in-place architects, providing an independent viewpoint to ensure quality. I first came across this approach at ANZ, where IBM was the consulting architect for the project I was working on. It is a practical solution to gain additional external architectural contributions with specific experience when an established architectural presence exists. 

I remain flexible. This year, I have authored frameworks and delivered business, solution and software architectures. My primary differentiation is internet and blockchain technology, business and delivery, though I remain flexible. I can be contacted via email at Matthew.Hargreaves at the enterprise architecture organisation, epatterns.com.au