GSAS (Global Software Architecture Summit) is a 2-days summit which aims to attract and connect software architecture experts from all over the world as well as all those interested in building working software to improve their skills, share knowledge, and connect.Buy Ticket
Our speakers are experts in essential practices, innovation, working software and practical solutions. Draw your inspiration and learn to become a better software architect.01
Robust and scalable software is in the center of every discussion and talk, which makes it a perfect place for people who fight for quality in the software development world.02
Over 350 software architects will come together for two days to promote quality in the world of software. Don't miss the opportunity to connect with the community.03
In addition to technical talks and hands-on workshops, it will be fun! There will be snacks and beers, opportunity to meet like-minded people and generate discussions.04
Author of the book "Building Evolutionary Architectures: Support Constant Change"
Neal is Director, Software Architect, and Meme Wrangler at ThoughtWorks. Before joining ThoughtWorks, Neal was the Chief Technology Officer at The DSW Group, Ltd. He is an internationally recognized expert on software development and delivery, especially in the intersection of agile engineering techniques and software architecture. Neal authored magazine articles and authored many books including "Building Evolutionary Architectures: Support Constant Change", "Functional Thinking: Paradigm Over Syntax", "The Productive Programmer (Theory in Practice (O'Reilly)" and many others, dozens of video presentations, and spoken at hundreds of developers conferences worldwide, one of them is O'Reilly Software Architecture Conference. His topics include software architecture, continuous delivery, functional programming, cutting edge software innovations, and includes a business-focused book and video in improving technical presentations. His primary consulting focus is the design and construction of large-scale enterprise applications.
Author of the book "Sustainable Software Architecture"
Carola Lilienthal is Senior Software Architect and Managing Director at WPS - Workplace Solutions and loves to design good structured, long-living software systems. Since 2003, she and her teams are using DDD to achieve this goal. DDD and long-livingness of software architectures are the topic of many talks she has given on various conferences, one of them is O'Reilly Software Architecture Conference. She condensed her experience in the book “Sustainable Software Architecture” and translated the book "Domain-Driven Design Distilled" by Vaughn Vernon into German.
Improving Legacy Code with DDD
Co-author of the book "Fundamentals of Software Architecture: An Engineering Approach"
Mark Richards is an experienced, hands-on software architect involved in the architecture, design, and implementation of microservices architectures, service-oriented architectures, and distributed systems. He has been in the software industry since 1983 and has significant experience and expertise in application, integration, and enterprise architecture. Mark is the founder of DeveloperToArchitect.com, a free resource website devoted to helping developers in the journey to software architect. He is the author of numerous technical books and videos from O'Reilly, including several books on Microservices, the Software Architecture Fundamentals video series, Enterprise Messaging video series, Java Message Service, 2nd Edition, and a contributing author to 97 Things Every Software Architect Should Know. Mark has a master’s degree in computer science and numerous architect and developer certifications from IBM, Sun, The Open Group, and Oracle. Mark has been a regular confe has spoken at hundreds of conferences and user groups around the world on a variety of enterprise-related technical topics.
Architecture Styles and Patterns
Author of the book "Thinking Architecturally"
Nathaniel T. Schutta is a software architect focused on cloud computing and building usable applications. A proponent of polyglot programming, Nate has written multiple books and appeared in various videos. Nate is a seasoned speaker regularly presenting at conferences worldwide, No Fluff Just Stuff symposia, meetups, universities, and user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace dynamic languages. Driven to rid the world of bad presentations, Nate coauthored the book Presentation Patterns with Neal Ford and Matthew McCullough. Nate recently published Thinking Architecturally available as a free download from Pivotal. Nate’s presentations cover a variety of topics ranging from software architecture, microservices, cloud computing, site reliability engineering and everything in between.
Architecting Cloud Native Applications
Inventor of Responsibility-Driven Design
Rebecca is an object design pioneer who invented the set of design practices known as Responsibility-Driven Design (RDD) and by accident started the x-Driven Design meme. She authored two popular object design books that are still in print. She was the design columnist for IEEE Software. You can find her design columns, papers, and writing at www.wirfs-brock.com/Resources.html. In her work, Rebecca’s helps teams and individuals hone their design and architecture skills, manage and reduce technical debt, refactor their designs, and address architecture risks. She also teaches and conducts workshops on design heuristics, agile design skills, system qualities, and a pragmatic approach to Agile Architecture. In her spare time she jogs (even in the rain). Rebecca is program director of the Agile Alliance’s Experience Report Initiative. She serves on the Board of the Hillside Group. Recently has written about the relationship between patterns and heuristics, architecture decision-making, and patterns for creating and managing magic backlogs. If you are interested in writing about your experiences, articulating your design heuristics more effectively, or sharing your wisdom in pattern form, contact Rebecca. She can help you turn your itch for writing into the written word.
Understanding and applying different decision models for evolving software architectures.
Winner of the IEEE Software Best Paper Award
Ken works with technology organizations around the world. His focus is the intersection of product development, strategy, architecture, leadership, and software engineering culture. He is a leading expert on the practical application of sensemaking and complex adaptive systems approaches to improving agility and product development flow in software engineering organizations. He has held multiple technical and leadership positions in organizations, ranging from start-ups to Fortune 100 companies. He has lead multiple large global organization transformations. He holds patents in virtualization and network management. Ken also works with the National University of Ireland Galway, where he lectures on strategy & planning, systems analysis & design, and large-scale transformation. He is a research associate with Lero, the Irish Software Research Centre. His Ph.D. research thesis “Improving flow in large software product development organizations: A sensemaking and complex adaptive systems perspective” explores how managers and leaders in organizations deal with the continuous challenges that impact how they deliver value to their customers. He has authored more than 35 peer-reviewed publications on software engineering topics, including winning the IEEE Software best paper award. Topics include software architecture, agile and lean development, sensemaking, decision-making, AI, and management of software development organizations. He is a speaker at leading international conferences on architecture, software engineering, agile, and lean product development, and regularly serves as a conference organizer and program committee member. He was co-editor of the 2019 IEEE Software special issue on Large-Scale Agile Development. He is a reviewer for top-tier publications, including IEEE Software, IEEE Transactions on Software Engineering, and Journal of Systems and Software.
Understanding and applying different decision models for evolving software architectures.
Founder of Domain-Driven Design Belgium
Mathias Verraes runs a boutique consultancy that advises organisations on designing and modelling software for complex environments, including architecture, analysis, testing, and refactoring “unmaintainable” systems. He has worked with clients in Finance, Government, Supply Chain, Mobility, Energy, E-Commerce, and more. He teaches Domain-Driven Design courses and curates the DDD Europe conference. When he’s at home in Kortrijk, Belgium, he helps his two sons build crazy Lego contraptions.
Evolving EventSourced Systems
Author of the book "Holub on Patterns: Learning Design Patterns by Looking at Code"
Allen Holub is an internationally recognized software architect and Agile coach. Allen speaks all over the planet about these topics and agile-friendly implementation technology like microservices and incremental/evolutionary architecture. He provides in-house training and consulting as well. He excels at building highly functional Lean/Agile organizations and designing and building robust, highly scalable software suitable for agile environments. He's worn every hat from CTO to grunt programmer. Allen is widely published. His works include 10 books, hundreds of articles in publications ranging from Dr. Dobb’s Journal to IBM DeveloperWorks), and video classes for agilitry.com (Agility with Allen) and for Pluralsight (Swift in Depth, Picturing Architecture, Object-Oriented Design), LinkedIn Learning (Architecture Fundamentals, and Domain-Driven Design), and O’Reilly (Design Patterns in the Real World). If you'd like to bring Allen in house for consulting or training work, set up a chat at https://holub.com/chat to discuss your needs.
DbC (Design by Coding): Applying TDD principles to architecture.
Co-author of the book "Microservice Architecture"
An internationally known author and speaker, Mike Amundsen travels the world discussing network architecture, Web development, and the intersection of technology and society. He works with companies large and small to help them capitalize on the opportunities provided by APIs, Microservices, and Digital Transformation. Amundsen has authored numerous books and papers. He contributed to the O'Reilly book, "Continuous API Management" (2018). His "RESTful Web Clients", was published by O'Reilly in February 2017 and he co-authored "Microservice Architecture" (June 2016). His latest book -- "Design and Build Great APIs" -- for Pragmatic Publishing is scheduled for release in early 2020.
Implementing Real-time Discoverable APIs on the Open Web.
Author of the Book "Front-End Reactive Architectures"
Lead consultant developer with Made Tech
Clare Sudbery is a lead consultant developer with Made Tech. She is a maths graduate with 20 years of software engineering experience, and a particular interest in teaching and mentoring; encouraging more women into IT; and banishing impostor syndrome. She is an experienced MVC software developer, who embraces XP and works via continuous integration in an Agile environment. Clare has a particular interest in, and aptitude for, Test Driven Development. Code quality is very important to her, and she aims to write clean code that adheres to SOLID principles. Clare Sudbery is a published writer and ex-teacher, she has presented workshops and talks at national and international events and conferences, and have exceptional communication skills. She has full stack experience, has always been involved in the complete development lifecycle, and have extensive DevOps experience. Right now, she is on a mission to awaken the inner geek in clever women (and men) everywhere. Clare regularly blogs at https://medium.com/a-woman-in-technology and https://insimpleterms.blog/. She loves her job.
Distributed Systems Design Engineer
Indu Alagarsamy is a distributed systems design engineer with over 15 years of software development experience. She's passionate about combining domain-driven design principles with event-driven architecture style to build reliable systems. Her current day job is at Particular Software, the makers of NServiceBus. She’s also passionate about diversity and inclusiveness in the tech industry.
Resilience Design Patterns
Co-author of the book "Software Systems Architecture"
Eoin Woods is CTO at Endava, an international technology company that delivers solutions in the areas of digital, agile transformation and automation. As CTO, Eoin leads the technical strategy for the firm, guides capability development and directs investment in emerging technologies. Eoin is a widely published author in both the research and industrial communities, co-author of the well-known book "Software Systems Architecture", published by Addison-Wesley and the recipient of the 2018 Linda Northrup Award for Software Architecture, from the Software Engineering Institute at CMU. He is a regular conference speaker and an active member of the London software engineering community. His main technical interests are software architecture, distributed systems and computer security.
Secure by Design - the Architect’s Guide to Security Design Principles
Software Architect, Consultant & Coach at embarc
Rene Weiss supports agile software development endeavors for more than 13 years. Having had different roles as software developer, software architect, project manager, Scrum Master, Product Owner and head of software development he can rely on plenty of experience in a variety of settings and industries. Today at embarc he is trainer for (agile) Software Architecture seminars, coaches teams in various software architecture topics, how to use agile methodologies effectively and supports customers in their agile transition. When Rene is not working with clients he writes and speaks about (evolutionary) Software Architectures and how to evolve architectures with Fitness Functions at international conferences, one of them is O'Reilly Software Architecture Conference.
Fitness function patterns supporting evolutionary architectures
Software Engineer at bol.com
Marit van Dijk has almost 20 years of experience in software development in different roles and companies. She loves building awesome software with amazing people, and is an open source core contributor to Cucumber. She enjoys learning new things, as well as sharing knowledge on test automation, Cucumber/BDD and software engineering and blogs at https://medium.com/@mlvandijk. Marit is currently employed at bol.com.
Q&A with Software Architecture Experts
Co-organizer of the "DDD Israel" and "Tel Aviv Software Architecture" groups
Vladik (Vlad) Khononov is a software engineer with over 15 years of industry experience, during which he has worked for companies large and small in roles ranging from webmaster to chief architect. Vlad is a long-time proponent of domain-driven design and evolutionary architecture and currently helps companies make sense of their business domains, untangle monoliths, and tackle complex architectural challenges. Vlad maintains an active media career as a public speaker and blogger. He has spoken at numerous industry conferences — including O’Reilly Software Architecture, DDD Europe, and NDC — about subjects such as domain-driven design, microservices, and software architecture in general. In addition to his media work, he co-organizes the Domain-Driven Design Israel and Tel Aviv Software Architecture meetup groups.
Q&A with Software Architecture Experts
Author of the book "The Coding Dojo Handbook"
Emily Bache is a Technical Agile Coach with ProAgile. She helps teams to improve their agility in the code, including learning Test-Driven Development and related techniques. Emily lives in Göteborg, Sweden, but is originally from the UK. She is the author of "The Coding Dojo Handbook" and often speaks at international conferences.
Designing a Continous Delivery Pipeline
JVM Technologies Architect at New Relic
Ben Evans is an author, speaker, consultant, educator and Principal Engineer & JVM Technologies Architect at New Relic and was previously Chief Architect for Listed Derivatives at Deutsche Bank. Ben is author of 5 books - “The Well-Grounded Java Developer”, the new editions of “Java in a Nutshell”, “Java: The Legend” and “Optimizing Java”. He is the track lead for Java / JVM at InfoQ, writes regularly for industry publications and is a frequent speaker at technical conferences worldwide.
Q&A with Software Architecture Experts
Solutions Architect at Guardant Health
Sonya Natanzon is a solutions architect at Guardant Health, where she’s passionate about helping patients by writing software. She leads a team of engineers and engages in many cross-functional software projects. She has been a software engineer in the healthcare industry for many years and loves to share her experiences to shed more light on this very complex industry and show how rewarding the work is.
Q&A with Software Architecture Experts
Co-founder of hello2morrow
Alexander von Zitzewitz is a serial entrepreneur in the software business and one of the founders of hello2morrow, an ISV specializing in static analysis tools that can enforce architecture and quality rules during development and maintenance of software systems. He’s worked in the industry since the early 1980s and focuses on the role of software architecture and technical quality on successful project outcomes. He moved from Germany to Massachusetts in 2008 to develop hello2morrow’s business in North America.
Software Metrics for Architects
Strategic Software Delivery Consultant at Xebia
João is a Strategic Software Delivery Consultant at Xebia. He believes software architecture is the fine balance between tradeoffs. João focuses on helping teams and organizations to make strategic decisions regarding the software; aligning teams and software to optimize the stream-based value. He believes in the power of collaboration and is a fan of visual collaboration tools. João often speaks at international conferences, one of them is O'Reilly Software Architecture Conference.
Q&A with Software Architecture Experts
To grow the software architecture community, focusing on essential practices, innovation, working software and practical solutions for current issues.
Where do ideas for new talks, books, videos, software...ultimately, everything...come from? A common question at conference panels to the speakers is "Where do you get your ideas for talks?" This session answers that question, along with how some of us cultivate new ideas. This talk investigates three aspects of ideation: How do new ideas arise? I cover various ways of synthesizing new ideas: switching axiom(s), mutation, oblique strategies, and a host of other techniques to generate a germ of a new idea. How do ideas grow into intellectual property? I cover techniques for iterating on ideas to discover deeper meanings and connections. I also cover how techniques to evolve and grow ideas.How do you communicate new IP?I cover various ways to convey IP: presentations, articles, books, videos, and a host of other media. I talk about how writing and presenting techniques to amplify your new idea and get it out into the world. One key to building new IP is separating ideation, organization, and realization, which often become jumbled. By separating them, we can build practices to allow each to flourish. This talk provide concrete advice in each area to help realize new ideas. Creativity is the reason we have all the Cool Stuff we have. This session investigates how to fan the spark of an idea into a roaring flame of intellectual erudition.
How does your system react when a key resource fails? Say, the database becomes unavailable, or the message broker fails. What if you get a current surge of load, that you have to keep up? What if a badly worded error message results in a billion dollar fire? Real life engineering disciplines can teach us a thing or two on designing for resilience. Learn the techniques and patterns that you can borrow from other areas of engineering, and apply them in your systems.
Modern software is developed iteratively, enhanced actively and released often to production. By following the ideas of evolutionary architectures one can evolve architectures incrementally and support a modern software lifecycle without the need of big bang changes. Fitness Functions provide guidance by giving objective measures of "how good" the last incremental architecture modification was. In this talk I want to show patterns for Fitness Functions in order to give you ideas to create useful architectural tests for your systems. I will show categories for fitness functions in order to establish proven patterns which are useful in different scenarios. Last but not least I will show how to incorporate Fitness Function development into your daily iterative/agile development lifecycle. This talk is for software developers and architects who want to gain practical ideas on patterns to create fitness functions and how to use them in their agile software development lifecycle.
Software metrics can be used effectively to judge the maintainability and architectural quality of a code base. Even more importantly, they can be used as canaries in a coal mine to warn early about dangerous accumulations of architectural and technical debt. Alexander von Zitzewitz introduces some key metrics that every architect should know (e.g., average component dependency, propagation cost, structural debt index, and more). Then he talks about the journey to create a metric to measure maintainability and introduces a new metric maintainability level. This metric is promising because its value usually matches quite well the gut feeling of developers about the maintainability of their software systems. Therefore, it can be used to monitor code maintainability and as an early warning indicator if things move in the wrong direction.
Whether starting a new greenfield application or analyzing an existing application architecture, one of the decisions an architect must make is which architecture style to use (or to refactor to). Microservices? Service-Based? Microkernel? Pipeline? Layered? Space-Based? Event-Driven? SOA?. Having the right architecture style in place is essential to the success of any application, big or small. In this fast-paced workshop I dive into the details of 5 major architecture styles - microkernel, microservices, service-based, event-based, and space-based. Then, through hands-on exercises with individual teams, you will determine the appropriate architecture style for several actual case studies.
By now your organization has planted a flag in “the Cloud” and it is up to you to figure out just what that means to your application portfolio. Should everything be a microservice? Wait, what *is* a microservices anyway? How do you deal with massively distributed applications? How can event storming fix the gap between your business problems and domain model? In this workshop, you will take a kata from quality attributes through to an initial design stopping along the way to discuss: Cloud native culture, Domain driven design, The importance of paved roads, Chaos engineering & Production Hardened Services.
Agility implies responding to change appropriately. Every response is a decision. Sometimes we choose among several competing options, sometimes not. Some decisions demand immediate action, others require us to step back and think and weigh our options. There are many decision models that can support how we respond. Often, our decisions are part of a series of inter-related decisions that influence each other. From this perspective, the agility of an architecture can be viewed as an outcome of decisions made over time. In this workshop session, participants will learn and apply three specific decision styles and models that are useful in different circumstances. Some of the models we use in this workshop come from the field of Naturalistic Decision Making (NDM), which has the goal of studying how people actually make decisions in a variety of real-world settings. Settings in which NDM is appropriate are characterized by time pressure, high stakes, experienced decision makers, inadequate information, ill-defined goals, poorly defined procedures, context, dynamic conditions, and team coordination. In this session we explore NDM in the context of architecture agility and evolution.
Domain-Driven Design are recommended to develop new software systems. But they are also very useful to put legacy systems back on the path of virtue. To ensure that the use of these techniques does not end as an aggravation, legacy systems must be broken down into well-cut bounded contexts to form self-contained microservices. DDD's building blocks must be introduced into the legacy systems in meaningful step. You will see how the concepts and solutions of DDD can be applied meaningfully in an ongoing project and during maintenance.
Security is an ever more important topic for system designers. As our world becomes digital, today’s safely-hidden back office system is tomorrow’s public API, open to anyone on the Internet with a hacking tool and time on their hands. So the days of hoping that security is someone else’s problem are over. The security community has developed a well understood set of principles used to build systems that are secure (or at least securable) by design, but this topic often isn’t included in the training of software developers, assuming that it’s only relevant to security specialists. Then when principles are explained, they are often shrouded in the jargon of the security engineering community and so mainstream developers struggle to understand and apply them. In this talk, we will introduce a set of ten key, proven, principles for designing secure systems, distilled from the wisdom of the security engineering community. We’ll explain each principle the context of mainstream system design, rather than in the specialised language of security engineering, explaining how it is applied in practice to improve security.
Luca Mezzalira introduces micro-frontends and principles. You’ll cover key topics on how to structure a micro-frontends architecture like identifying micro-frontends inside a project, routing and communication between micro-frontends, UX consistency, performance optimizations, and build and deployment. He busts some myths about the concerns raised by the community around micro-frontends by providing concrete examples applied in the past three years while delivering a streaming video platform across multiple devices with hundreds of developers distributed across Europe.
EventSourcing is a domain modelling and persistence style, where domain events are first class concepts in the model and the database. Storing a history of all events as a Single Source of Truth comes with challenges for sure. But it can be worth it: an event store is business asset, which enables better auditing, compliance, complex business processes, bitemporality… EventSourcing however has the reputation of being hard to evolve after a feature has gone into production. I believe EventSourced systems are in fact easier and safer to evolve than migrating classical OOP/RDMBS-based systems. But the existing EventSourcing tooling is constraining, many designs are stuck in the old mindset, and we lack the patterns for expressing evolution. Just like EventSourcing makes changes first class, the changes to the model themselves need to become first class as well. I will discuss some approaches, in part based on my experience consulting for such systems, in part speculation on the future of evolving EventSourced design.
We will have leading software architecture experts from different industries and countries. And we will use online tool to ask questions that were not covered during the summit in real time.
Design by Coding (DbC) is a way to develop an architecture incrementally as you code. It builds on Test- and Behavior-Driven-Development techniques, and provides a way to go from user stories to an effective API or declarative interface, using actual code as your design canvas. You effectively design and code simultaneously. The process is an ideal way to build a coherent agile system incrementally, working directly from the stories and without a formal up-front design process, and it addresses a common failing of standard TDD: losing track of the big picture when you focus on incremental improvements. The result is a system that's can handle volatility with ease. The technique is also perfectly suited for building effective and minimal microservice APIs. This is a hands-on workshop. You'll come away understanding how to use the technique in your own work.
What steps should you include? how long will it take from commit to deploy? Be creative and collaborate to come up with the best solution for your scenario. In this workshop we will learn about designing a Continuous Delivery pipeline, by playing a game with a custom card deck. We will work in groups, each one designing a pipeline for a slightly different business scenario, with different priorities, risks and competitors. Some of the cards represent steps you could include in your pipeline, and by laying them out on a table, you will decide which to include and how long each should take. Other cards describe constraints which restrict your design choices. During the workshop you will learn about the DevOps metrics described in the book ‘Accelerate’ by Nicole Forsgren et al. We will work out the lead time for the pipelines we have designed, and discuss how that will affect our competitiveness in the marketplace. At the end you will have the chance to take a card deck home with you. You might want to use it to help you design a pipeline with your team.
Refactoring is something we all do when writing code, whether consciously or not. But often it's something we guiltily avoid, or feel we don't have time for. Sometimes our teams have areas of code that need so much refactoring we set it aside as a separate task. But the longer we leave it the harder it gets, the longer we know it will take and the more likely it never gets done. This workshop will go through several worked examples in detail, teaching you how to refactor in tiny chunks and with good test coverage. It will teach you ways of seeing refactoring as a daily achievable task instead of an insurmountable mountain, and give you lots of good arguments as to why it is not only worthwhile but essential for robust maintainable code. You will be strongly encouraged to work in pairs for this workshop - a side benefit is that you will learn how pairing can also be used as a useful tool when refactoring, as well as learning some TDD techniques. The reason for the word "compassionate" in the title is that in software we often have a tendency to beat ourselves up or point the finger of blame when we believe our code has not been maintained effectively. One of the emphases in this workshop will be on using forgiveness as a technique to move forward and improve the future without bemoaning the past. No code base is ever perfect. The examples will all be in C# using .Net Core, which means they will work in Linux, on a Mac or on a Windows operating system. You don't need C# experience but you will benefit from knowing a similar language such as Java. You will need coding experience. A Test-Driven approach will be used (although people are often surprised at how few new tests you need to write when refactoring).
What does it take to implement APIs that are easily discovered and used at runtime? What features does an API service provider need to be a part of an autonomous, self-driving API ecosystem? And what features does an API service consumer need in order to take advantage of this rich world of discoverable APIs? This workshop covers the basics of protocol-free service description and open web-based service discovery and, through a set of simple exercises, shows how you can use existing protocols and formats to implement your own discoverable API ecosystem to create API providers and consumers that can survive runtime changes without "breakage" and continue operating as expected. Working examples will be provided in NodeJS and patterns will be provided that can be applied in any other web-aware framework or programming language.
1/03/2020 - 31/05/2020
Group (+ 3 people): 350€ + VATNot Available
*Price does not include VAT
1/06/2020 - 31/07/2020
Group (+ 3 people): 375€ + VAT
GSAS 19 Attendees: 325€ + VATBuy Ticket
*Price does not include VAT
Avenida de la Gran Via, 75,08908 L'Hospitalet de Llobregat, Barcelona, Spain
Filmax Gran Via is easily accessible by public transport, just 7 minutes from bus and train stations.
Car/Taxi: 8 min. ride from the Airport
Train: Europa Fira (FGC) R5-R6-R50-R60-S3-S4-S8-S9
Metro: Europa Fira L8-L9S