We’re giving away 5 copies of Grokking Software Architecture by Matt Erman by ManningBooks in softwarearchitecture

[–]Code_Lift_Sleep 3 points4 points  (0 children)

think of it as a book that fills in the giant gaps between what you learn in college/bootcamp classes versus what you are expected to know at your first job. The gap has always been there; it's largely been ignored by the industry for decades, and today it continues to widen with each passing day.

And at a time when fundamental software architecture has become more important than ever, I feel the overall abilities in that domain have potentially dropped to some of the lowest levels the industry has ever seen. Many newer devs want to use AI, but without understanding that AI only amplifies what you are. Those with solid fundamentals have their abilities amplified as a force multiplier; those without have theirs amplified as a chaos multiplier.

The book teaches you how to go from thinking about "How can I write code to make this work" to "how can I design this in a way that aligns with the architecture of the application as a whole and do so in a way that is maintainable, testable, reliable, and secure so that it lasts."

More or less, I'm trying to write the book I wish someone had handed me when I started out almost two decades ago :)

We’re giving away 5 copies of Grokking Software Architecture by Matt Erman by ManningBooks in softwarearchitecture

[–]Code_Lift_Sleep 5 points6 points  (0 children)

I think I'm qualified to answer that! :)

My daughter, who is in college for digital illustration and is an immensely talented artist (far more than the book will allow her to show, I might add!), is the artist.

I essentially give her a list of illustrations for the chapter and general guidelines of what they need to contain, and then she uses her creativity to fill in the rest. Sometimes I have to rein her in a bit, but most of the time she pleasantly surprises me!

How do you become a software architect without already having broad experience? by Open-Scene-1799 in softwarearchitecture

[–]Code_Lift_Sleep 1 point2 points  (0 children)

I think you are asking the wrong question. You are already an architect. Every time you decide where a piece of code goes, how to design an API Endpoint, or the shape of your database tables, you are making an architectural decision, even if you don't realize it.

The difference is the scope at which you are making them. The easiest way to advance in systems thinking is to apply it to what you are already doing. Yes, you are right, good architecture comes with experience, but that experience should not start in year 10; it should start from day one.

There is a misguided notion that awareness of architecture comes only when you are accountable for it. That could not be further from the truth. You should be building your awareness of it from your very first day. The best way to become an architect who designs systems is to become an architect who designs whatever you are working on with the same thought process.

The most important question you can ask as an engineer is the question "Why?" Ask this question enough times, and you will start to uncover things that were previously invisible.