Become an Awesome Software Architect Quotes

Rate this book
Clear rating
Become an Awesome Software Architect: Foundation 2019 (#1) Become an Awesome Software Architect: Foundation 2019 by Anatoly Volkhover
52 ratings, 3.87 average rating, 5 reviews
Open Preview
Become an Awesome Software Architect Quotes Showing 1-5 of 5
“For instance, you may have different implementations of a Logger in development vs test vs production environments, simply by supplying different configuration files. Such approach is known as Inversion of Control (IoC). The name reflects the fact that your code no longer fully controls the behavior of your application, and that control is being delegated to an external configuration file, or to a framework[19].”
Anatoly Volkhover, Become an Awesome Software Architect: Foundation 2019
“User interfaces are by far the most frequent cause of excessive development and maintenance costs. Because of that, they require lots of undivided attention from the software architect.”
Anatoly Volkhover, Become an Awesome Software Architect: Foundation 2019
“Will your infrastructure require a human to manage? Will you need a fully staffed DevOps/SRE team to support your operations? How much will it cost to run the system at full scale? Can you save $$ while you are running the proof of concept for the first 6 months before you get funded? How costly will it be to handle the occasional traffic spikes? How well will your system protect the customer’s data? How can you best support the future development and testing efforts? Most of these questions are answered by selecting your hosting model. Several options exist: Use your own dedicated hardware Provision dedicated hardware from a cloud provider Provision virtual hardware from a cloud provider Install a container solution on dedicated or virtual hardware Rely on fully managed container orchestration solution Go serverless”
Anatoly Volkhover, Become an Awesome Software Architect: Foundation 2019
“While constructing a good API, we must consider: Unified approach to all API calls Error handling Stability and backward compatibility Ability to submit multiple calls in a single request Ability to ship client-side logs to the server alongside with any request Ability to ship server-side logs to the client alongside with any response Ability to programmatically analyze error responses Ability to create new API versions instead of making breaking changes Security”
Anatoly Volkhover, Become an Awesome Software Architect: Foundation 2019
“Programming languages, their features, readability, and interoperation Code reuse across platforms (server vs web vs mobile) Early error detection (compile-time vs runtime error detection, breadth of validation) Availability and cost of hiring the right talent; learning curve for new hires Readability and refactorability of code Approach to code composition, embracing the change Datastore and general approach to data modeling Application-specific data model, and the blast radius from changing it Performance and latency in all tiers and platforms Scalability and redundancy Spiky traffic patterns, autoscaling, capacity planning Error recovery Logging, telemetry, and other instrumentation Reducing complexity User interfaces and their maintainability External APIs User identity and security Hardware and human costs of the infrastructure and its maintenance Enabling multiple concurrent development workstreams Enabling testability Fast-tracking development by adopting third-party frameworks”
Anatoly Volkhover, Become an Awesome Software Architect: Foundation 2019