Form follows fiasco
“Form follows fiasco”

Form follows fiasco

Why software architects should stick with their projects

Last weekend, I took my daughter to an antique bookstore/coffee house where we came upon a book called "Form Follows Fiasco: Why Modern Architecture Hasn't Worked." This book is not about software architecture. It's about actual architecture, which involves buildings that might collapse if not built right.

The title of the book spoke to me. Luckily, in software engineering, with the notable exception of avionics and healthcare software, we don't build things that might collapse and harm people. We might do silly things like introduce a software bug that caused a financial firm to collapse. For the most part, though, most of us are unlikely to encounter a software problem that results in significant financial loss, personal injury, or death.

Throughout my career, I've become acutely aware of how, more often than not, glorious software architectures collapse under their weight. I've inherited projects whose original developers and architects have long left, leaving behind an unmaintainable mess that doesn't scale.

It's one thing for developers to change jobs before a project sees the light of day. Most of the time, no matter their good intentions, they don't have much control over the management and architecture of their project.

Software architecture, however, must balance out the needs of conflicting stakeholders. Developers want to be productive and have their ideas heard. Project managers must participate in the architecture decisions that may impact the process and delivery. Product owners need to stay involved to ensure that the architecture meets the product vision.

A well-designed object-oriented monolith is not worth its poetic structure if the team working on it cannot grow or scale. Architecture decisions that seem elegant at the start of the project often prove disastrous when deployed to production and face the pressure of real-world utilization.

A software architect is like a captain. They go down with the ship. An architect should never be one of the first to jump a sinking ship that an unmaintainable architecture can become.

When interviewing candidates for architect positions, insist on asking them to describe a project they saw from start to finish. Ask them to explain what decisions they made and why. What pains did they experience when the project launched into production, and what did they do to solve them?

Form follows fiasco.

All architects should affix that slogan and keep it in front of them. If your project hasn't yet experienced a fiasco, you haven't achieved its proper form. A software architect who leaves their project before it can experience a fiasco is not much different from a ship captain who disembarks before the ship has even sailed.

Illia G.

Senior Software Engineer | Scientific Data and Systems Architect | Machine Vision & Automation Expert

1y

Besides ANY architecture may and eventually will fail by the Murphys law, since software has another fundamental difference to the real building architecture- buildings mostly remains stable once it is finished with proper maintenance, while software product, if it is good, will grow and get new features. And those who add new features, modify functionality will obviously less and less follow the best way, not hold to the rules etc. And thus any architecture will fail. The story of the Knight Capital is a perfect illustration to that.

Like
Reply
Illia G.

Senior Software Engineer | Scientific Data and Systems Architect | Machine Vision & Automation Expert

1y

I disagree on the statement that architect must stay on the project until it fails. I've learned the hard way, that on the first hand I shall pursue my interests not of the company. When I spent several nights, working around the clock to save the project, that was going to crash due to bad management and mistakes made by other team, NO ONE even said "thanks". Even though the system works now absolutely stable for over 2 years with 30% more productivity than ever expected. It was forgotten the very next week. Only my family remembered me exhausted due sleepless nights. So no, I will never put company or product on the first place. If I find or get much better proposal - I will switch unless company will fight to keep me. No more self sacrifice for the enterprise- they will suck your blood, through away your empty bones and forget a next day.

Like
Reply

To view or add a comment, sign in

More articles by Oleg Dulin

  • On the role of Distinguished Engineer and CTO Mindset

    I have been working on my Wharton Executive CTO Program for the past four months. This week, there is no new content to…

    9 Comments
  • Stop panicking. The future is bright.

    Is there a future in traditional computer science? The short answer is yes. I am confident that the future is bright.

    1 Comment
  • The year of aspirational goals

    They say goals should be SMART: Specific, Measurable, Achievable, Relevant, and Time-bound. When I talk to students and…

    1 Comment
  • My giant follows me wherever I go

    In his "Self-Reliance" essay, Ralph Waldo Emerson said: "At home I dream that at Naples, at Rome, I can be intoxicated…

    1 Comment
  • The day I became an architect

    In the fall of 2016, I accepted my current job at ADP (obligatory disclaimer: opinions expressed here do not represent…

    2 Comments
  • Are developer jobs truly in decline?

    Are developer jobs in decline? A recent study showed that software developer employment peaked in 2019 and has been…

    2 Comments
  • Leadership is About "We", Not "I"

    Every now and then I hear a leader boast, "I created a multi-million revenue generating product for my company." Such a…

  • Software engineering is here to stay

    No, developer jobs aren't going away Matthew Berman made a bold claim that developer jobs will be obsolete in 10 years.…

    2 Comments
  • Thanksgiving reflections

    Last year, on Thanksgiving, I wrote a reflection on the war in Ukraine that impacted my friends, family, and people…

    3 Comments
  • Safe and Secure: Seminar on Cybersecurity for Seniors and Their Families

    On November 5th, 2023, I had the privilege of hosting a seminar on cybersecurity for seniors at Anshe Emeth Memorial…

    4 Comments

Insights from the community

Others also viewed

Explore topics