Software Architecture
Architecture is the foundation that robust software is built on.
Service Description
Agile projects typically skip the software architecture and design phases and jump right in on developing a minimum viable product (MVP). Typically this MVP or proof of concept (POC) then gets a lot of features added with the intent to take the code into production. The plan is always to refactor the code to make something solid and dependable ... but it almost never happens. The sound alternate is to do just enough up-front architecture to put the project on a stable footing. Agile has done a good job demonizing the waterfall style of software development. Therefore, architecture and design are shunned because they are labeled as waterfall. For large performant systems I am a proponent of the Reactive Manifesto: (https://www.reactivemanifesto.org/). Whether building a green-field application from scratch or modernizing an existing system, I believe technologies such as Akka and Kalix from Lightbend are required to deliver the best solutions possible.