DEV Community

loading...

Software architecture lessons learned: interview with Patrick Kua

Apiumhub
Tech Hub from Barcelona specializing in software, web and app development.
Originally published at apiumhub.com on ・4 min read

Apiumhub team has interviewed Patrick Kua – seasoned technology leader with almost 20 years of experience, leading, managing and improving complex organisations and software systems as the CTO and Chief Scientist of N26 (Berlin, Germany) and as a Technical Principal Consultant at ThoughtWorks. He is a frequent keynote and conference speaker, author of three books including The Retrospective Handbook, Talking with Tech Leads and Building Evolutionary Architectures and runs the free popular newsletter for leaders in tech, “Level Up” (http://levelup.patkua.com) and the Tech Lead Academy, offering online training for technical leaders. You can find him online on twitter as @patkua, his website at http://patkua.com, or running his very popular “Shortcut to Tech Leadership” workshop. And in this interview Patrick Kua shares his Software Architecture lessons learned over all these years.

Software architecture lessons learned: interview with Patrick Kua

What is software architecture for you?

Software architecture is the significant decisions that shape how people contribute to a system. These decisions are hard to undo, and usually add constraints to further decisions and should always be based on explicit trade-offs. Many teams don’t do this, and end up with what I call, “accidental architecture.”

What are the top 3 soft skills you believe software architects need ?

Influence, communication and value focus

What are the top 3 responsibilities of a Software Architect within the company?

The role differs across many different companies, so the top 3 will also differ. One good focus is to guide the architecture based on business plans. Another is to make sure that architecture supports all parts of the business (and not just the sales/product people). Often other stakeholders like back office, operations and data people are left behind. The final one is to grow the understanding of architecture in teams.

What is your opinion about Innovation vs Pragmatism ?

A lot of people see these as you’ve described them, one or the other, but not both. I see them together. Interestingly I have seen what a lot of people consider innovation because they are trying to solve a problem pragmatically, and do so in a different way.

What are your expectations regarding software architecture events, do you think in 2021 everything will be online?

Given the current state of COVID around the world, I don’t think there will be many in-person events.

Do you believe that silver bullets exist in software architecture?

Fred Brooks’ No Silver Bullet paper stands the test of time. Architecture is always about trade-offs, so there are no silver bullets.

Could you share your insights regarding software architecture patterns?

The more you build a type of a system, the more you recognise the same patterns. You can learn from others, and we continue to see more patterns being published every day. This means reading will help you understand where they are useful, but remember patterns are no silver bullet and still require judgement.

What recommendation would you give to big international companies in terms of software architecture?

Be careful of separating ownership of architecture as an activity and keeping this concept separated from development.

What recommendation would you give to startups in terms of software architecture?

Avoid accidental architecture by investing a little bit of time thinking about trade-offs and explicit design. A little bit goes a long way.

Your software architecture lessons learned ?

Big up front design doesn’t work. Zero up front design often doesn’t work. There’s a balance to be found in between and software is an iterative process, that we can and should learn from given the pace of tools that allow us to test aspects of our software architecture rapidly. You don’t need to rely on big bets any more if you can find ways to easily reverse and test ideas.

BIO & Contact info

Patrick Kua is a seasoned technology leader with almost 20 years of experience. His personal passion is accelerating the growth and success of tech organisations and technical leaders. He has had many years of hands-on experience, leading, managing and improving complex organisations and software systems as the CTO and Chief Scientist of N26 (Berlin, Germany) and as a Technical Principal Consultant at ThoughtWorks. He is a frequent keynote and conference speaker, author of three books including The Retrospective Handbook, Talking with Tech Leads and Building Evolutionary Architectures and runs the free popular newsletter for leaders in tech, “Level Up” (http://levelup.patkua.com) and the Tech Lead Academy, offering online training for technical leaders. You can find him online on twitter as @patkua, his website at http://patkua.com, or running his very popular “Shortcut to Tech Leadership” workshop.

The post Software architecture lessons learned: interview with Patrick Kua appeared first on Apiumhub.

Discussion (0)

Forem Open with the Forem app