97 Things Every Software Architect Should Know



Download free course 97 Things Every Software Architect Should Know, pdf file on 118 pages by O'Reilly Media.
In this truly unique technical book, today's leading software architects present valuable principles on key development issues that go way beyond technology. More than four dozen architects - including Neal Ford, Michael Nygard, and Bill de hOra - offer advice for communicating with stakeholders, eliminating complexity, empowering developers, and many more practical lessons they've learned from years of experience. Among the 97 principles in this book, you'll find useful advice such as:

- Don't Put Your Resume Ahead of the Requirements;
- Chances Are, Your Biggest Problem Isn't Technical;
- Communication Is King; Clarity and Leadership, Its Humble Servants;
- Simplicity Before Generality, Use Before Reuse;
- For the End User, the Interface Is the System;
- It's Never Too Early to Think About Performance.

To be successful as a software architect, you need to master both business and technology. This book tells you what top software architects think is important and how they approach a project. If you want to enhance your career, 97 Things Every Software Architect Should Know is essential reading.

Table of contents

  • Don't put your resume ahead of the requirements
  • Simplify essential complexity; diminish accidental complexity
  • Chances are your biggest problem isn't technical
  • Communication is King; Clarity and Leadership its humble servants
  • Architecting is about balancing
  • Seek the value in requested capabilities
  • Stand Up!
  • Skyscrapers aren't scalable
  • You're negotiating more often than you think.
  • Quantify
  • One line of working code is worth 50
  • There is no one-size-fits-all solution
  • It's never too early to think about performance
  • Application architecture determines application performance
  • Commit-and-run is a crime.
  • There Can be More than One
  • Business Drives
  • Simplicity before generality, use before reuse
  • Architects must be hands on
  • Continuously Integrate
  • Avoid Scheduling Failures
  • Architectural Tradeoffs
  • Database as a Fortress
  • Use uncertainty as a driver
  • Scope is the enemy of success
  • Reuse is about people and education, not just architecture
  • There is no 'I' in architecture
  • Get the 1000ft view
  • Try before choosing
  • Understand The Business Domain
  • Programming is an act of design
  • Time changes everything
  • Give developers autonomy
  • Value stewardship over showmanship
  • Warning, problems in mirror may be larger than they appear
  • The title of software architect has only lower-case 'a's; deal with it
  • Software architecture has ethical consequences
  • Everything will ultimately fail
  • Context is King
  • It's all about performance
  • Engineer in the white spaces
  • Talk the Talk
  • Heterogeneity Wins
  • Dwarves, Elves, Wizards, and Kings
  • Learn from Architects of Buildings
  • Fight repetition
  • Welcome to the Real World
  • Don't Control, but Observe
  • Janus the Architect
  • Architects focus is on the boundaries and interfaces
  • Challenge assumptions - especially your own
  • Record your rationale
  • Empower developers
  • It is all about the data
  • Control the data, not just the code
  • Don't Stretch The Architecture Metaphors
  • Focus on Application Support and Maintenance
  • Prepare to pick two
  • Prefer principles, axioms and analogies to opinion and taste
  • Start with a Walking Skeleton
  • Share your knowledge and experiences
  • Make sure the simple stuff is simple
  • If you design it, you should be able to code it.
  • The ROI variable
  • Your system is legacy, design for it.
  • If there is only one solution, get a second opinion
  • Understand the impact of change
  • You have to understand Hardware too
  • Shortcuts now are paid back with interest later
  • "Perfect" is the Enemy of "Good Enough"
  • Avoid "Good Ideas"
  • Great content creates great systems
  • The Business Vs. The Angry Architect
  • Stretch key dimensions to see what breaks
  • Before anything, an architect is a developer
  • A rose by any other name will end up as a cabbage
  • Stable problems get high quality solutions
  • It Takes Diligence
  • Take responsibility for your decisions
  • Don't Be a Problem Solver
  • Choose your weapons carefully, relinquish them reluctantly
  • Your Customer is Not Your Customer
  • It will never look like that
  • Choose Frameworks that play well with others
  • Make a strong business case
  • Pattern Pathology
  • Learn a new language
  • Don't Be Clever
  • Build Systems to be Zuhanden
  • Find and retain passionate problem solvers
  • Software doesn't really exist
  • Pay down your technical debt
  • You can't future-proof solutions
  • The User Acceptance Problem
  • The Importance of Consommé
  • For the end-user, the interface is the system
  • Great software is not built, it is grown
Pages : 118
Size : 6.2 MB
File type : PDF
Downloads: 43
Created: 2022-01-31
License: CC BY
Author(s): O'Reilly Media
97 Things Every Software Architect Should Know

Others Computer science Tutorials

Seeing Theory

Azure Serverless Succinctly

Learning MongoDB

Energy Efficient Servers

Blown to Bits

Others related eBooks about 97 Things Every Software Architect Should Know

A Friendly Introduction to Mathematical Logic

At the intersection of mathematics, computer science, and philosophy, mathematical logic examines the power and limitations of formal mathematical thinking. In this expansion of Leary's user-friendly 1st edition, readers with no previous study in the field are introduced to the basics of model theor...

Optimizing HPC Applications with Intel Cluster Tools

Download free course Optimizing HPC Applications with Intel Cluster Tools, pdf file on 291 pages by Alexander Supalov, Andrey Semin, Michael Klemm, Christopher Dahnken....

Advanced Problems in Mathematics: Preparing for University

This book is intended to help candidates prepare for entrance examinations in mathematics and scientific subjects, including STEP (Sixth Term Examination Paper). STEP is an examination used by Cambridge colleges as the basis for conditional offers. They are also used by Warwick University, and man...

Learning Vue.js

Download free course Learning Vue.js, pdf file on 93 pages by Stack Overflow Community....

LaTeX in 24 Hours

Download free course LaTeX in 24 Hours, pdf file on 309 pages by Dilip Datta....

Docker Succinctly

Download free course Docker Succinctly, pdf file on 98 pages by Elton Stoneman....

Marketing and Advertising Using Google

Download free course Marketing and Advertising Using Google, pdf file on 156 pages by Google, Karl Barksdale....

TouchDevelop

Download free course TouchDevelop, pdf file on 263 pages by R. Nigel Horspool, Nikolai Tillmann....

Rational Cybersecurity for Business

Use the guidance in this comprehensive field guide to gain the support of your top executi..., download free Cybersecurity tutorial in PDF (333 pages) created by Dan Blum ....

How To Code in Node.js

Download free course How To Code in Node.js, pdf file on 418 pages by David Landup, Marcus Sanatan....