David is Coding Architect at SQUER, a Viennese Software Company, which is working with different stacks and environments, but always an overarching mission: connect ideas and provide impact — with technology. He spends much of his time on the frontlines tackling the challenges of scaling software and complex domains. David enjoys sharing his knowledge as a speaker at conferences and as a lecturer for his post-diploma courses at the University of Applied Sciences Technikum Vienna.
Modern software architectures are amidst a paradigm shift — more and more software landscapes are built upon asynchronous and reactive patterns. This movement is understandable, as it takes scalability, resilience, and real-time integration to an elusive new level. Unfortunately, we observe that many new customer projects only use parts of this paradigm shift sensibly, leading to a lot of accidental complexity without utilising the full potential of reactivity. We will start by unpacking the core theories and ideas behind the reactive manifesto. This foundation will allow us to understand how to build reactive microservices upon event streams (and event sourcing) and asynchronous integration patterns. Based on this knowledge, we will introduce GraphQL to dive into the concept of hydrations and projections, which uncovers the full potential of FaaS. Optimistic UIs will bring in the final finish to end up with a cloud-native and push-based architecture where elasticity and resilience are treated as first-class citizens. Upon a closer look at the advantages and challenges we've experienced in customer projects, it turns out that such reactive architecture can be a perfect fit but are not a silver bullet either. Instead, they are suited for a specific set of problems. In a nutshell, reactive architectures can be a game-changing tool to build cloud-native, highly responsive, and resilient applications. This talk will give the needed knowledge to decide if it's a good fit.