A technology stack is a set of tools that your team uses to deliver products and finish projects. When choosing technologies, you start by defining their goals and thoroughly documenting all the requirements. From there, you and your team can see what technologies will help you to reach the end goal.
Shaping a technology stack goes toe-to-toe with designing software architecture, so the engineers on your team should start by drafting a system design that will meet everyone's requirements. Software architecture is a wide and deeply technical topic, so we won't discuss it in depth in this chapter. Instead, we will present an overview of the necessary steps when it comes to choosing the best technologies for reaching specific goals. Let's get started:
- Collect the requirements and define the goals clearly.
- Choose a set of...