Engineering the Future of Software
29–31 Oct 2018: Tutorials & Conference
31 Oct–1 Nov 2018: Training
London, UK
 
Windsor Suite
15:50 Event streaming as a source of truth Benjamin Stopford (Confluent)
King's Suite - Balmoral
10:45 Building a maintainable architecture for software landscapes Dennis Bijlsma (Software Improvement Group), Haiyun Xu (Software Improvement Group)
13:15 How to improve your architectural visualizations Jochem Schulenklopper (Xebia)
14:15 Documenting serverless architectures: Could we do it better? Asher Sterkin (Blackswan Technologies)
16:50 Scaling CQRS in theory, practice, and reality Allard Buijze (AxonIQ), Nakul Mishra (Casumo)
17:45 Architectural Katas | Room: King's Suite - Balmoral
King's Suite - Sandringham
10:45 Turning request-response on its head Cornelia Davis (Pivotal)
13:15 Learning the three types of microservices Mike Amundsen (Amundsen.com, Inc.)
14:15 Leveraging containers for improved security Ashley Ward (Twistlock)
Buckingham Room - Palace Suite
10:45 Serverless architecture fundamentals Pratik Patel (IBM)
13:15 All the world's a staging server Heidi Waterhouse (LaunchDarkly)
14:15 Adapting teams to a new architecture, whether they know it or not Mlungisi Duma (First National Bank)
Blenheim Room - Palace Suite
10:45 Architecting for data-driven reliability Yaniv Aknin (Google Cloud)
13:15 Accelerating enterprise DevOps John Jeremiah (GitLab)
14:15 Distributed systems are a UX problem. Tyler Treat (Real Kinetic)
15:50 Sundhed.dk's journey from monolith to GDPR-compliant microservices Tobias Uldall-Espersen (Sundhed.dk), Thomas Krogsgaard Holme (Sundhed.dk )
16:50 Serverless microservices at Fender Digital Michael Garski (Fender Digital)
Park Suite (St. James / Regents)
14:15 Using continuous delivery with machine learning to tackle fraud Sarah LeBlanc (ThoughtWorks), Hany Elemary (ThoughtWorks)
King's Suite
9:00 Tuesday keynote welcome Mary Treseler (O'Reilly Media), Neal Ford (ThoughtWorks)
9:25 Introducing serverless to your organization Mike Roberts (Symphonia)
9:45 Career advice for architects Trisha Gee (JetBrains)
8:15 Tuesday Speed Networking | Room: King's Suite Foyer
10:15 Morning Break | Room: Monarch Suite
12:15 Lunch and Tuesday Topic Tables | Room: Monarch Suite
15:05 Afternoon break | Room: Monarch Suite
19:30 Software Architecture Tuesday Dine-Around | Room: Various locations
13:15-14:05 (50m) Sponsored
Ethics in tech: A psychological perspective on behavior and organizations (sponsored by Container Solutions)
Andrea Dobson-Kock (Container Solutions)
Andrea Dobson-Kock discusses why people behave unethically and what can be done about it, including social psychology research on behavior, ethics and company culture, and anti-patterns to avoid.
14:15-15:05 (50m) Sponsored
When a CMS is not enough: Tales from a content infrastructure (sponsored by Contentful)
Stefan Judis (Contentful)
Today, your product's success depends on the creation of experiences in a steadily rising number of channels, leading to increasing demands for your content management system. Stefan Judis explains how Contentful’s content infrastructure helps developers on the frontline fetch the data they need, ship modern websites faster, and automate content distribution while using their favorite tools.
15:50-16:40 (50m) Application architecture, Enterprise architecture, Integration architecture, Microservices, Reactive and its variants Best Practice
Event streaming as a source of truth
Benjamin Stopford (Confluent)
One of the most interesting and provocative patterns to face the software architecture community is the idea of using event streaming as a source of truth—a pattern where replayable logs provide both communication and storage, splicing the retentive properties of a database into a system designed to share data across teams. Benjamin Stopford explains why this pattern is transformative.
16:50-17:40 (50m) Application architecture Best Practice, Case Study
How DAZN scales frontend applications with microfrontends
Luca Mezzalira (DAZN)
Microservices provide a way to break up a monolithic architecture into multiple atomic units, allowing an independent scalability of a service. They also provide a better way to divide the domains across multiple teams. Luca Mezzalira explains how to apply the same principles to frontend applications, enabling you to scale up a project with tens of developers without reducing the throughput.
10:45-12:15 (1h 30m) Microservices Best Practice, Case Study
Building a maintainable architecture for software landscapes
Dennis Bijlsma (Software Improvement Group), Haiyun Xu (Software Improvement Group)
Dennis Bijlsma and Haiyun Xu explain how to measure the maintainability of software landscapes that consist of many systems communicating with each other—and what that means for the teams working on them. Along the way, they explore a number of trade-offs to consider when designing the landscape and share best practices for modern software landscape architectures.
13:15-14:05 (50m) Leadership skills Best Practice, Overview
How to improve your architectural visualizations
Jochem Schulenklopper (Xebia)
Communicating about architecture to non-IT and business stakeholders is a valuable skill for architects. After all, many architectural decisions are made by others, so they need to be informed with clear, honest, intelligible, and helpful information and advice. Jochem Schulenklopper shares theory and practical tips on eight facets of the visual communication of architecture.
14:15-15:05 (50m) Serverless Best Practice, Overview
Documenting serverless architectures: Could we do it better?
Asher Sterkin (Blackswan Technologies)
We don't yet have an adequate language for describing serverless architectures. Today, we use informal diagrams in which no precise meaning can be attached to the diagram as a whole or to any particular element. Asher Sterkin explains why this is a problem and what we can do about it.
15:50-16:40 (50m) Application architecture, Cloud native, Distributed systems, Enterprise architecture, Microservices Anti-Pattern, Best Practice
Three forms of async in microservices: Understanding the patterns
Irakli Nadareishvili (Capital One)
With cloud-native and microservices architecture gaining wide adoption, asynchronous programming patterns are becoming increasingly important. Irakli Nadareishvili details three major async forms that are relevant in this space—event sourcing, reactiveness, and data streams—defining each pattern, explaining relevant use cases, and exploring differences in implementation.
16:50-17:40 (50m) Application architecture, Distributed systems, Microservices, Scale Case Study, Theoretical
Scaling CQRS in theory, practice, and reality
Allard Buijze (AxonIQ), Nakul Mishra (Casumo)
The architectural principle of CQRS makes great promises about the scalability of applications. Allard Buijze and Nakul Mishra elaborate on these promises and explain how to bring them into practice. Along the way, they provide insight into the challenges Casumo faced while scaling from thousands to billions of events and how they were resolved.
17:45-19:15 (1h 30m)
Architectural Katas
Software architects have to practice being software architects. Now is your chance. Network and show your skills by joining Architectural Katas—a team exercise where small groups work together on a project that needs development—on Tuesday evening.
10:45-12:15 (1h 30m)
Turning request-response on its head
Cornelia Davis (Pivotal)
Cornelia Davis explains how to use an event-driven approach to address the fallacies of distributed computing in a very different way, offering significant benefits over request-response, and details event-oriented solutions to problems commonly addressed with well-known patterns.
13:15-14:05 (50m) Microservices Best Practice, Overview
Learning the three types of microservices
Mike Amundsen (Amundsen.com, Inc.)
Microservices is a popular but vague term. Definitions of microservices can vary depending on what you want them to accomplish and how you want them to communicate with each other. Join Mike Amundsen to learn about the three types of microservices, see what makes them unique, and discover when you deploy each of them.
14:15-15:05 (50m) Security Best Practice, Overview
Leveraging containers for improved security
Ashley Ward (Twistlock)
Ashley Ward details the security advantages of containers relative to traditional architectures, covering what makes containers more secure, the changing nature of the threat landscape for cloud-native technology, and how the combination of container platforms like OpenShift with purpose-built security solutions lets organizations deliver more secure software faster than ever before.
10:45-12:15 (1h 30m) Serverless Overview
Serverless architecture fundamentals
Pratik Patel (IBM)
Serverless doesn’t mean no servers. It’s a metaphor for a new way of building applications. Pratik Patel explains how serverless fits into the world of microservices and examines the pyramid of application development and deployment. You'll then put on your architect hat to look at serverless options and how they impact applications architecture.
13:15-14:05 (50m) Devops Best Practice
All the world's a staging server
Heidi Waterhouse (LaunchDarkly)
Here's some sad news: staging is a lie and will never be identical to production, because production is unknowable. But here's the good news: production can contain multitudes, including features you aren’t ready to turn on or activate yet. Join Heidi Waterhouse for an exploration of the ways that you might be able to kill staging and perform better.
14:15-15:05 (50m) Leadership skills Best Practice, Hands-on
Adapting teams to a new architecture, whether they know it or not
Mlungisi Duma (First National Bank)
Most architectural designs are rejected by stakeholders or teams, in part because they didn't participate in creating the solution. Mlungisi Duma shares useful techniques for involving business expects in architecture design and the software development life cycle. You'll also learn how to convince the IT team to buy in to the new design without too much resistance or friction.
15:50-16:40 (50m) Application architecture, Cloud native, Devops, Enterprise architecture, Microservices Best Practice, Overview
An architect’s guide to leveraging your incumbency
Brad Topol (IBM)
Continuous delivery for 12-factor microservices works by design. When you can architect a solution for continuous delivery, you control all the angles. But what do you do when you don’t have that luxury? Brad Topol explains how modernizing existing IT infrastructure with containers enables you to manage change through continuous delivery and reduce ongoing operational costs.
16:50-17:40 (50m) Enterprise architecture Best Practice, Case Study
Enclave-based architecture: A blueprint for cloud-native financial institutions
Angelo Agatino Nicolosi (BESTSELLER)
Danske Bank is implementing ideas and practices such as CI/CD, microservices, and DevOps within the extreme conditions of a financial enterprise. Angelo Agatino Nicolosi explains how the bank is defining and delivering brand-new financial services at startup speed through the simple concept of an enclave.
10:45-12:15 (1h 30m) Scale Anti-Pattern, Best Practice
Architecting for data-driven reliability
Yaniv Aknin (Google Cloud)
Architectural choices are often driven by nonfunctional requirements like reliability and scalability. Unfortunately, it can be deceptively hard to specify the right requirements. Big decisions made hoping to hit X nines often fail to ensure the nines measure the right thing. Yaniv Aknin shares lessons learned working in this space at Google, helping you focus on metrics that matter.
13:15-14:05 (50m) Enterprise architecture
Accelerating enterprise DevOps
John Jeremiah (GitLab)
John Jeremiah shares best practices and ideas to help you lead DevOps transformations and accelerate software delivery.
14:15-15:05 (50m) User experience design Anti-Pattern, Best Practice
Distributed systems are a UX problem.
Tyler Treat (Real Kinetic)
Distributed systems are not strictly an engineering problem. Tyler Treat looks at distributed systems through the lens of user experience, observing how architecture, design patterns, and business problems all coalesce into UX. Tyler also shares system design anti-patterns and alternative patterns for building reliable and scalable systems with respect to business outcomes.
15:50-16:40 (50m) Application architecture, Microservices, Security Case Study, Hands-on
Sundhed.dk's journey from monolith to GDPR-compliant microservices
Tobias Uldall-Espersen (Sundhed.dk), Thomas Krogsgaard Holme (Sundhed.dk )
Tobias Uldall-Espersen and Thomas Krogsgaard Holme explain how they applied microservice architecture and privacy by design principles to break down a monolithic portal containing 50+ products—the Danish national ehealth portal Sundhed.dk—redesign it, and produce a scalable and flexible platform in compliance with the EU General Data Protection Regulation (GDPR).
16:50-17:40 (50m) Serverless Best Practice, Case Study
Serverless microservices at Fender Digital
Michael Garski (Fender Digital)
Fender Digital’s service infrastructure is 100% serverless. The promises of serverless include reduced costs and simplified operations; the challenge lies in how to implement complex applications on a FaaS platform. Michael Garski shares best practices Fender Digital has established to optimize function performance and ensure observability.
10:45-12:15 (1h 30m)
Sifting technologies: Separating the wheat from the chaff
Nathaniel Schutta (Pivotal)
We software professionals owe it to our customers (and ourselves) to make good decisions when it comes to picking one technology over another. Nathaniel Schutta details the criteria to consider when comparing technologies, explains how to avoid burning platforms, and details what to do when you've reached a dead end. He then shows you how to apply these techniques to a current technology or two.
13:15-14:05 (50m) Application architecture Best Practice, Case Study
Seven years of DDD: Tackling complexity in large-scale marketing systems
Vladik Khononov (DoiT International)
Vladik Khononov shares his experience using the domain-driven design methodology at Plexop, a large-scale marketing system that spans over a dozen of different business domains, from the management of advertising spaces to sales agents’ commissions.
14:15-15:05 (50m) Application architecture Best Practice, Case Study
Using continuous delivery with machine learning to tackle fraud
Sarah LeBlanc (ThoughtWorks), Hany Elemary (ThoughtWorks)
Credit card fraudsters are always changing their behavior and developing new tactics. For banks, the damage isn’t just financial; their reputations are on the line. So how do they stay ahead of the crooks? Sarah LeBlanc and Hany Elemary explore a system that utilizes continuous delivery for machine learning to allow for rapid experimentation and the deployment of models to catch these fraudsters.
15:50-16:40 (50m) Business solutions, Enterprise architecture, Leadership skills Case Study, Overview
Enterprise architecture at Mozilla: An astrolabe to guide the future
Michael Van Kleeck (Mozilla)
How can Mozilla evolve its products and capabilities to serve the global, human-driven internet of the future? The company is guided by its mission and supported by the capabilities of its staff and community. Michael Van Kleeck dives into how Mozilla uses its version of enterprise architecture to wisely explore, evaluate, and pivot to and from future opportunities.
16:50-17:40 (50m) Leadership skills Theoretical
Ethical questions in software engineering
Rotem Hermon (SAP)
We developers and architects are a major force influencing software, technology, and the world it creates. If we really want to create a better world, we need to open our eyes to the link between ethics and software. Rotem Hermon discusses ethical challenges related to technology, sense of self, politics, and truth and explains what we can do about it.
9:00-9:05 (5m)
Tuesday keynote welcome
Mary Treseler (O'Reilly Media), Neal Ford (ThoughtWorks)
Program chairs Mary Treseler and Neal Ford welcome you to the second day of keynotes.
9:05-9:25 (20m)
Why software architects fail and what to do about it
Stefan Tilkov (INNOQ)
Why do architecture approaches sometimes hurt instead of providing value? Why has “architect” become a negative term for some people? And what can we do to improve our own work? Stefan Tilkov looks at some of the most common pitfalls that ensure you’ll come up with a disaster and explains how they can be avoided.
9:25-9:45 (20m)
Introducing serverless to your organization
Mike Roberts (Symphonia)
Serverless computing offers the benefits of accelerated delivery and reduced operations costs. However it also brings tooling and architectural challenges. What are safe yet effective methods to introduce serverless to your organization? Mike Roberts discusses several options, drawn from his experience with teams that have faced this precise question.
9:45-10:05 (20m)
Career advice for architects
Trisha Gee (JetBrains)
Trisha Gee shares advice and lessons she learned the hard way while managing her career as a developer, lead, and technical advocate. She also gives you tools for working out what your next steps are along with plenty of examples of what not to do.
10:05-10:15 (10m)
Tuesday keynote closing remarks
Closing remarks
8:15-8:45 (30m)
Tuesday Speed Networking
Jumpstart your networking at Software Architecture by coming to Speed Networking before the keynotes begin. Bring your business cards and prepare a minute of patter about yourself, your projects, and your interests.
10:15-10:45 (30m)
Break: Morning Break
12:15-13:15 (1h)
Lunch and Tuesday Topic Tables
Join other attendees during lunch to share ideas, talk about the issues of the day, and maybe solve a few. Look for the topic signs on the tables in the Sponsor Pavilion and join the discussion. No advance signup is necessary.
15:05-15:50 (45m)
Break: Afternoon break
19:30-21:30 (2h)
Software Architecture Tuesday Dine-Around
Looking for dinner plans Tuesday night? Sign up to join a group of fellow attendees for the Software Architecture Dine-Around.