Solving the Architect/Engineer Paradox
Art or Engineering?

Solving the Architect/Engineer Paradox

Our industry (business/technology) is carrying around a whole set of paradoxes and unsolved problems. Not business problems, not technology problems but industry problems. By industry problems I mean that they are problems with the way technology, technologists, employers, clients and government and education behave, ie the Industry (big I*). Think of them as the infrastructure underlying how technology as an Industry behaves and delivers value. I call these paradoxes even though the are not impossible to solve (some of them are easy in fact) but why they are ignored or treated as unique IS a paradox.

This post is focused on our new focus on Software Architecture. We are launching our Software course in Oct. I am extremely excited about this course and believe it will quickly become THE course for software architects. This question is becoming one of our focus areas at Iasa for 2022.

Laying Out the Core Problem

I started Iasa because I am interested in this infrastructure. I have many posts about this topic so I wont belabor the point here. Just realize we are the ONLY Industry to deliver complex life altering things on the planet that does not work. Simple as that. The way we do things now, simply does not work anymore. We are also the only industry that seems to escape the consequences we cause. How many developers, SIs and vendors go to jail because the system they worked on kills people (yes Elon, I mean your self-driving deaths as well... how is programmer or AI error anything other than murder?)? For less exotic and extreme examples, consider the meltdown of the Irish Healthcare system. The ransomware attacks. Home Depot lost millions of credit card records... their stock price was only affected for a week!

Getting re-centered on a more desirable outcome focus (I hate people who burn and don't offer a solution), these industry problems include many fallacies that the general public, employers, education institutions, and clients accept for no apparent reason and are solvable mostly by stealing from other practices related to complex systems (homes, spaceships, skyscrapers, cars, transportation, energy, and my favorite, medicine). In all these fields the shape of the industry includes all of the primary groups mentioned before and in most of them there are clear distinctions between corporate and individual responsibility and liability as well as very clear building codes and enforceable ethics. If you want to become a building architect or doctor, there is a very clear, if not easy, career pathway. It includes straightforward bodies of knowledge, mentoring, education, experience, certifications, university accreditation etc.

So What About Architecture, Engineering and Development?

In our research over the years one of the most critical paradoxes is the continued confusion over the boundaries between architect, engineer and developer. I separate these into three even though there is no industry-wide adoption of particular boundaries. For the purpose of this argument think of developers as self-taught and focused on smaller problems (no I don't mean title I mean competency!), engineers as trained and mentored but focusing on systemic structural elements and architects as outcome driven, trained and mentored creative and innovation focused with strong overlaps in depth skills with their counterpoints at certain points but with a focus on breadth and rounded out competencies. Thus the scene is set.

So what is the solution? Short answer is anti-hype. It is not more rounded people everywhere, but more disciplined and competent specialists, engineers, and architects. It is rigorous training and mentoring. This opinion is not popular, nor is it realistic in the short term, there is simply too much work globally to go from zero to mature overnight. However, the answer does not change no matter which way you argue it as doctors, accountants, lawyers and 'real' architects have learned. Read the histories of those professions. While the may have been 'practiced' for thousands of years, they were not really good and stable until they figured this out. People died as often from going to see a doctor in the 1800s as just staying home unless it was extremely basic (think setting a broken arm - but if you look deep you will find poultices gave infection as often as staving it off).

What Are the Areas of Overlap?

This is what we at Iasa are dedicating 2022 to truly unearthing. We know the shared competencies between a software architect and a lead engineer/developer. But we do NOT have industry wide data that compares their roles, responsibilities and deliverables. It gets worse as you progress through other types of architects (specializations). DevOps is a moving target to get developers and operational personnel to work together, then make it DevSecOps, DevAISecOps, DevAISecDataBizOps... you get the idea. Pretty soon we are at the entire technology group in a 'team'.

Here are a number of the things we think we know from anecdotal evidence:

  • Products are more valuable and delivered better when there is a competent lead architect and competent lead engineer working together. Again not measured by title, but by competencies (see the BTABoK competency model).
  • Software/Solution Architects can grow to a point where they are too high and are no longer creating value but instead doing something akin to strategic management. They could no longer deliver a complex product as well as a lower level solution architect. This appears to be directly related to mapping a profession onto tradition HR and management promotion techniques. For example, a heart surgeon is not 'promoted' to hear surgeon or chief of surgery. They must earn it through years of experience applying and demonstrating success... not to their employer but according to the profession (research board certifications and advancement in medicine, it is fascinating). All the normal politics apply in a hospital, but they are tempered by the experiential and mentoring facet of the profession.
  • Engineers/developers are focused on delivering working systems based on requirements. They focus on how or what. Architects are focused on WHY and by derivative how/what. There is a strong overlap with architecture/engineering on one area, quality attributes (also known as non-functional requirements - which is the worst term d'art ever, as QATTs are absolutely functional in nature).
  • Each company randomly redefines engineering, architecture, and development for itself roughly every 3-5 years in a cycle. I have seen hundreds of companies in the last 20 years make dozens or hundreds of people 'architects' with a simple (not so simple) re-organization and re-title. This is possibly the most effective way to destroy quality delivery in the entire Industry. I am working on a post called the great lie. I have seen thousands of 'architects' created because it SOUNDED better to customers. It is like making all of your desk administrator at a hospital 'surgeons' and handing them a knife... Cut Away! they say. No one will call us on it and we are making more money than ever!!! BTW this is not just vendors.
  • Engineering and development is not less than architecture. It functions with a different purpose, outcomes, measures and goals. Architects are often considered 'unicorns' because we keep trying to make engineers into architects. The aptitude and the attitude and most importantly the interest is not there in most cases.
  • Architects are a scarce resource and we have managed our time very poorly. We tried to migrate to the top instead of shoring up our knowledge of what makes great architects at the 3-5 team level, then grow success from that science.
  • It takes significantly longer to roll out proven methods than seems to be necessary due to the variability of competencies and the corporate-as-an-independent island of practice. Other professions have tried and tested methods to explore and experiment with new practices and then adopt them rather quickly when they are proven to work. Covid treatment is a great example of this, but so are new methods in accounting, law, building etc. Only in IT do we continuously bicker, debate and defend instead of creating Industry wide evaluations of methods, then applying them and feeding them back into a body of knowledge.

The last bullet point is what we are putting our effort into for the next couple of years; researching what is working and why and how it might be tied through example to the overall body of knowledge.

Hi Paul good to see... Some thoughts - for me architecture for business IT systems , telco, defence etc should be at the information systems level.. And what I mean by that is the whole information agenda and use with users and IT systems ... defined in the paper.. A paper if interested .. https://www.dhirubhai.net/pulse/enterprise-level-information-systems-alan-lloyd But like companies, systems, the foundational determinations are identity and governance (re information assets and resources) which underpin security, systems management everything in fact including operational scale and capacity.. Mention x500 and x700 a few times . These are OO distributed information systems standards that relate well to OO software architectures and engineering for infrastructures. Posted this too... identity /governance /systems mgt architectures take on many shapes, not just organisational structures... and also mention how frameworks and use cases dont assist much with operational infrastructure and platform development. https://www.dhirubhai.net/posts/alan-lloyd-82a38a_systems-architecture-from-the-user-experience-activity-6841216582128164864-2lDf

Mark Goetsch MSCS, MSC

Enterprise Architect and Computational Social Science

3 年

Bryan Lawson did his PhD in Psychology and Architecture proving that there is a significant difference in how trained engineers and architects think through problems. He wrote a number of books "How Designers Think" and "What Designers Know" that are still considered classic books. They are divergent types of thinking. Frederick Brooks in his book "Design on Design" points out the differences between how architects and engineers approach this problem after spending 40 years comparing computer and building architecture. There are other sources as well. This argument seems to have originated with DaVinci being the engineer and Michelangelo being the architect. When Christopher Alexander did OOPSLA he saw this in how software people were treating the idea of patterns.

要查看或添加评论,请登录

Paul Preiss的更多文章

  • Healthy Technical Debt Part 1

    Healthy Technical Debt Part 1

    Many of you who read my blog will raise your hand when I ask who owns a home. But when I ask who really owns a home…

    16 条评论
  • DDS - Bounded Context Canvas and Capabilities

    DDS - Bounded Context Canvas and Capabilities

    The Bounded Context Canvas fits into strategy and execution by helping to develop a shared understanding of a system…

    6 条评论
  • Domain-Driven Services - Just the Right Size

    Domain-Driven Services - Just the Right Size

    Microservices were too small, SOA was too big. DDS is juuuuust right.

    16 条评论
  • Time to Take a Breath

    Time to Take a Breath

    The outcomes of the Paris discussions on AI were less than exhilarating at least politically. The general trend of AI…

    3 条评论
  • Deep Learning

    Deep Learning

    As the age of technology continues to explode, it is essential that we do not gloss over the amount of learning and…

    4 条评论
  • We All Love Our Toys

    We All Love Our Toys

    When I was a boy I loved legos, as so many architects and engineers did. It was a deeply calming and deeply engaging…

    21 条评论
  • Navigating Hope and Fear in a Socio-Technical Future

    Navigating Hope and Fear in a Socio-Technical Future

    I was just finishing doing a talk on Living with Legacy, which covers a great number of concepts related to…

    22 条评论
  • You Can't Wish Away Technology Complexity

    You Can't Wish Away Technology Complexity

    I attend a great number of architectural discussions at all levels of scope. And it is a constant reminder how much…

    32 条评论
  • The Case For A Managed Career for Architects

    The Case For A Managed Career for Architects

    The question of career path is deeply important to architects. It determines many of the qualities which allow them to…

    26 条评论
  • Architect's Competing Narratives

    Architect's Competing Narratives

    I want to open us up to a conversation about narratives in architecture. These are deeply important to us as architects…

    10 条评论

社区洞察

其他会员也浏览了