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: 33
Created: 2022-01-31
License: CC BY
Author(s): O'Reilly Media
97 Things Every Software Architect Should Know

Others Computer science Tutorials

Scaling a Software Business

Semantic Systems. In the Era of Knowledge Graphs

Microsoft Platform and Tools for Mobile App Development

Blazor Succinctly

Case Studies in Infrastructure Change Management

Others related eBooks about 97 Things Every Software Architect Should Know

Android on x86

Android on x86: an Introduction to Optimizing for Intel Architecture serves two main purpo..., download free Android tutorial in PDF (380 pages) created by Iggy Krajci ....


Download free course Algorithms, pdf file on 472 pages by by Jeff Erickson....

Programming Languages: Application and Interpretation

This book unites two approaches to teaching programming languages, one based on a survey of languages and the other on writing definitional interpreters. It has been used as a textbook at over fifteen institutions worldwide, and is referenced by non-academic users on the Web. The book is updated a...

Mining Social Media

Download free course Mining Social Media, pdf file on 208 pages by Lam Thuy Vo....

Computer Science Tapestry: Exploring Programming and Computer Science with C++

This book is designed for a first course1 in computer science that uses C++ as the language by which programming is studied. My goal in writing the book has not been to cover the syntax of a large language like C++, but to leverage the best features of the language using sound practices of prog...

Elixir Succinctly

Download free course Elixir Succinctly, pdf file on 84 pages by Emanuele DelBono....

Sensor Technologies

Sensor Technologies: Healthcare, Wellness and Environmental Applications explores the key ..., download free Sensor tutorial in PDF (336 pages) created by Michael J. McGrath ....

Essential iOS

This book written to provide clear and concise explanation of topics for programmers both starting to learn the iOS programming as well as those diving in more complex topics. Most examples are linked to online playground that allows you to change the code and re-run it....

Category Theory for Programmers

Category Theory is one of the most abstract branches of mathematics. It is usually taught ..., download free Category Theory tutorial in PDF (498 pages) created by Bartosz Milewski ....

D3 Tips and Tricks v3.x

Download free course D3 Tips and Tricks v3.x, pdf file on 551 pages by Malcolm Maclean....