Engineering the Future of Software
Feb 3–4, 2019: Training
Feb 4–6, 2019: Tutorials & Conference
New York, NY
 
Grand Ballroom West
Add Tuesday opening remarks to your personal schedule
Grand Ballroom West
9:00am Tuesday opening remarks Christopher Guzikowski (O'Reilly), Neal Ford (ThoughtWorks)
Add Architecting IT transformation to your personal schedule
9:05am Architecting IT transformation Gregor Hohpe (ArchitectElevator.com)
Add Career advice for architects to your personal schedule
9:30am Career advice for architects Trisha Gee (JetBrains)
Add From the Trenches: An interview with Mark Richards to your personal schedule
9:50am From the Trenches: An interview with Mark Richards Mark Richards (Self-employed), Neal Ford (ThoughtWorks)
Add Visual design and architecture to your personal schedule
10:45am Visual design and architecture Ruth Malan (Bredemeyer Consulting)
Add Continuous delivery for the IoT to your personal schedule
1:15pm Continuous delivery for the IoT Maria Gomez (BCG Digital Ventures)
Add Distributed event-driven services: From the trenches to your personal schedule
3:50pm Distributed event-driven services: From the trenches Premanand Chandrasekaran (Barclays US)
Add (Continuous) threat modeling: What works? to your personal schedule
4:50pm (Continuous) threat modeling: What works? Izar Tarandach (Autodesk)
Mercury Ballroom
Add Scaling containers with multicluster GKE and Istio to your personal schedule
10:45am Scaling containers with multicluster GKE and Istio Christopher Grant (Google)
Add Microservices architecture in the real world to your personal schedule
2:15pm Microservices architecture in the real world Mason Jones (Credit Karma)
Add A Java developer’s journey in Kubernetes land to your personal schedule
3:50pm A Java developer’s journey in Kubernetes land Arun Gupta (Amazon Web Services)
Trianon Ballroom
Add Beyond accidental architecture to your personal schedule
10:45am Beyond accidental architecture James Thompson (Mavenlink)
Add Crossing the serverless fireswamp to your personal schedule
1:15pm Crossing the serverless fireswamp Mike Roberts (Symphonia)
Add Architecting for news recommendations: The many hidden colors of the Gray Lady to your personal schedule
3:50pm Architecting for news recommendations: The many hidden colors of the Gray Lady Aikaterini Iliakopoulou (The New York Times)
Sutton Center/Sutton South
Add Serverless cloud showdown: Orchestrating functions to your personal schedule
1:15pm Serverless cloud showdown: Orchestrating functions Kenny Baas-Schwegler (Xebia), Marc Duiker (Xpirit)
Add Building for gracious failure to your personal schedule
2:15pm Building for gracious failure James Thompson (Mavenlink)
Add Enterprise architecture = architecting the enterprise? to your personal schedule
4:50pm Enterprise architecture = architecting the enterprise? Gregor Hohpe (ArchitectElevator.com)
Sutton North
10:45am
Add Building a service delivery infrastructure (sponsored by ThoughtWorks) to your personal schedule
1:15pm Building a service delivery infrastructure (sponsored by ThoughtWorks) Paula Paul (Slalom Build), Rosemary Wang (ThoughtWorks)
Add Realigning DevOps practices to support microservices: A Capital One case study to your personal schedule
4:50pm Realigning DevOps practices to support microservices: A Capital One case study Irakli Nadareishvili (Capital One), Raji Chockaiyan (Capital One)
Beekman
10:45am
4:50pm
10:15am Morning Break | Room: Sponsor Pavilion
3:05pm Afternoon Break | Room: Sponsor Pavilion
Add Sponsor Pavilion Reception to your personal schedule
5:40pm Sponsor Pavilion Reception | Room: Sponsor Pavilion
Add Better Together Diversity Networking Lunch to your personal schedule
12:15pm Better Together Diversity Networking Lunch | Room: Murray Hill West
Add Architectural Katas to your personal schedule
6:45pm Architectural Katas | Room: Sutton Center/Sutton South
8:00am Morning Coffee | Room: 3rd Floor Promenade
Add Tuesday Speed Networking to your personal schedule
8:15am Tuesday Speed Networking | Room: Rendezvous Foyer
9:00am-9:05am (5m)
Tuesday opening remarks
Christopher Guzikowski (O'Reilly), Neal Ford (ThoughtWorks)
Program chairs Chris Guzikowski and Neal Ford open the first day of keynotes.
9:05am-9:25am (20m)
Architecting IT transformation
Gregor Hohpe (ArchitectElevator.com)
Architects generally concern themselves with change: a system that’s never going to change in functionality, scope, scale, or environment may not actually need an architect. Join Gregor Hohpe to find out how architects can use what they know about technical systems to help refactor organizations.
9:25am-9:30am (5m) Sponsored
The future of cloud-native programming (sponsored by IBM)
Tamar Eilam (IBM Research)
Today, we are witnessing a great proliferation of cloud-native paradigms such as 12-factor apps, microservices, and serverless. Tamar Eilam discusses an emerging unified cloud platform (based on open source projects such as Kubernetes and Istio) and explains why the new frontier is its evolution to unify multiple programming paradigms for greater simplification with power of expression.
9:30am-9:50am (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.
9:50am-10:10am (20m)
From the Trenches: An interview with Mark Richards
Mark Richards (Self-employed), Neal Ford (ThoughtWorks)
In a new series of interviews called "From the Trenches," Neal Ford interviews highly regarded industry professions about their career path and their work as an architect. Join in for his discussion with Mark Richards.
10:45am-12:15pm (1h 30m) Application architecture Best Practice
Visual design and architecture
Ruth Malan (Bredemeyer Consulting)
Ruth Malan revisits architecture modeling in light of Agile. Through a discussion of architecture and related views, heuristics, and other guidelines, Ruth considers the role of visual design in setting design direction for the system and explores design options as part of an Agile approach.
1:15pm-2:05pm (50m) DevOps & Continuous Delivery Best Practice
Continuous delivery for the IoT
Maria Gomez (BCG Digital Ventures)
The software delivery industry has proven that it can deliver better products by implementing continuous delivery, but can this be achieved when there are hardware components? Maria Gomez demonstrates it's possible and shares her experience on a project developing embedded systems in an iterative way.
2:15pm-3:05pm (50m) Security Anti-Pattern, Best Practice
Security principles for the working architect
Eoin Woods (Endava)
As our world becomes digital, we all need to be developing systems that are secure by design. The security community has developed a well-understood set of principles used to build secure systems, but they are rarely discussed outside that community. Eoin Woods outlines these fundamental principles of secure software design and explains how to apply them to mainstream systems.
3:50pm-4:40pm (50m) Distributed systems Anti-Pattern, Best Practice
Distributed event-driven services: From the trenches
Premanand Chandrasekaran (Barclays US)
A few years ago, Barclays embarked on a journey to migrate its legacy services with the objective of achieving a high level of scale, resilience, and reliability, mainly employing an ecosystem of focused, distributed services. Prem Chandrasekaran recounts some of the challenges faced during the transformation and sheds light on the things that worked well and those that didn't.
4:50pm-5:40pm (50m) Security Best Practice, Case Study
(Continuous) threat modeling: What works?
Izar Tarandach (Autodesk)
Threat modeling as a discipline has always enjoyed a special place in development, going from "Why do it?" to "I should do it one of these days" to "We did it and didn't even get a T-shirt." Many competing methodologies, interests, and constraints help make the process more difficult than it needs to be, reducing the results. Izar Tarandach shares the approach Autodesk uses for threat modeling.
10:45am-12:15pm (1h 30m) Containers & Containers Orchestration Best Practice, Theoretical
Scaling containers with multicluster GKE and Istio
Christopher Grant (Google)
Containers are all the rage these days, but how do you go from a single sandbox cluster to a globally distributed enterprise-scale architecture. Christopher Grant covers both infrastructure and application design best practices, such as hybrid and multicluster configurations as well as decomposing applications into system, service, and microservices.
1:15pm-2:05pm (50m) Containers & Containers Orchestration Best Practice, Overview
The Elements of Kubernetes: Foundational concepts for apps running on Kubernetes
Aaron Schlesinger (Microsoft)
Kubernetes is catching on like wildfire. But as organizations move to this new platform, they end up with legacy applications that don’t take advantage of everything Kubernetes has to offer—or worse, with applications that don’t work at all. Aaron Schlesinger shares an “Elements of Kubernetes” guide that details patterns to ensure your application fits into the Kubernetes platform.
2:15pm-3:05pm (50m) Microservices Best Practice
Microservices architecture in the real world
Mason Jones (Credit Karma)
Once you decide to adopt a microservices architecture, you'll face many more decisions and questions about routing, management, observability, developer experience, and more. Mason Jones shares approaches based on his real-world experiences making the shift to microservices.
3:50pm-4:40pm (50m) Containers & Containers Orchestration Best Practice, Hands-on
A Java developer’s journey in Kubernetes land
Arun Gupta (Amazon Web Services)
Deploying your Java application in a Kubernetes cluster can sometimes feel like Alice in Wonderland. You keep going down the rabbit hole and don’t know how to make that ride comfortable. Join Arun Gupta to learn how a Java application can be deployed in a Kubernetes cluster.
4:50pm-5:40pm (50m) Containers & Containers Orchestration Case Study, Framework-focused
Migrating to Kubernetes at "presto tempo"
Ryan Cooke (N26)
Ryan Cooke explains how one organization transformed its architecture from a few hundred disparate servers to running entirely in container orchestration within six months. While the project met its goal to reduce infrastructure costs, it also realized an unexpected benefit: greatly improving developers' velocity in delivering software into production.
10:45am-12:15pm (1h 30m) Fundamentals Best Practice, Overview
Beyond accidental architecture
James Thompson (Mavenlink)
Every software system has an architecture. Many are little more than the result of circumstances, rather than deliberate decisions. Helping teams think about software architecture is a key to helping them grow well. James Thompson demonstrates how to assess approaches and make decisions based on what matters to your team and your projects.
1:15pm-2:05pm (50m)
Crossing the serverless fireswamp
Mike Roberts (Symphonia)
Mike Roberts leads a warts-and-all journey through some of the limitations of a serverless approach and shares a practical set of techniques for dealing with these concerns.
2:15pm-3:05pm (50m) Enterprise architecture Best Practice, Overview
The Goldilocks zone of lightweight architectural governance
Jonny LeRoy (ThoughtWorks)
Jonny LeRoy details two architectural failure modes: hierarchical command and control from ivory tower architects with strict approvals and rigorous control gates, and chaos with every team doing whatever they want with close to zero governance. Jonny then explores the "Goldilocks" zone that ensures organizational risks and opportunities are handled while giving teams as much autonomy as possible.
3:50pm-4:40pm (50m) Application architecture Case Study
Architecting for news recommendations: The many hidden colors of the Gray Lady
Aikaterini Iliakopoulou (The New York Times)
When personalizing for news platforms, you must pay attention to both the audience and the content. Much like most software architecture systems, readers and news content should not be treated as a monolith. Katerina Iliakopoulou details the architecture of a system that facilitates agile personalization on the New York Times’s platforms to accommodate fast A/B testing.
4:50pm-5:40pm (50m) DevOps & Continuous Delivery Best Practice, Case Study
Anatomy of testing in production: A Netflix original case study
Vasanth Asokan (Netflix)
So you think you can test your complex distributed application effectively just using your test environment? At Netflix, automated testing of client and server applications runs at scale in production. It has quickly gone from low-volume manual mode to automated continuous and voluminous mode. Vasanth Asokan offers a study of such testing at scale that will inform your overall testing strategy.
10:45am-12:15pm (1h 30m) Serverless Best Practice, Overview
Serverless content delivery (a.k.a. Livin' on the edge)
John Chapin (Symphonia)
The lines between static and dynamic content are blurred, and it’s more difficult than ever to choose the right technologies for your requirements and budget. John Chapin takes you on a step-by-step journey from hosting static content on AWS S3 to deploying dynamic, complex business logic mere milliseconds away from your users with AWS CloudFront, Lambda@Edge, and more.
1:15pm-2:05pm (50m) Cloud native Hands-on, Overview
Serverless cloud showdown: Orchestrating functions
Kenny Baas-Schwegler (Xebia), Marc Duiker (Xpirit)
As fans of serverless and event-driven architectures, Kenny Baas-Schwegler and Marc Duiker wanted to see how easy it was to create a serverless application in AWS, Azure, and Google Cloud—specifically, by comparing how easy it is to orchestrate functions, using a current car park management example solution. Join them to learn the pros and cons of each cloud vendor.
2:15pm-3:05pm (50m) Microservices Best Practice
Building for gracious failure
James Thompson (Mavenlink)
Everything fails at some level, in some way, some of the time. How we deal with those failures can ruin our day or help us learn and grow. Join James Thompson to explore some of the patterns for dealing with failure in service-based systems graciously.
3:50pm-4:40pm (50m) DevOps & Continuous Delivery Case Study, Framework-focused
Challenges with reuse within a large and diverse engineering organization: A case study
Andrey Utis (Capital One)
You have a large talented group of engineers, each with an opinion on the best programming language, build tool, test framework, and CI/CD pipeline. How do you get them to agree and reuse without demotivating them? Andrey Utis explains how Capital One mandated a single CI/CD framework and kept users engaged through a contribution process, empathy interviews, and openness.
4:50pm-5:40pm (50m) Enterprise architecture Overview
Enterprise architecture = architecting the enterprise?
Gregor Hohpe (ArchitectElevator.com)
Architects in large enterprises are often seen as ivory tower residents far detached from reality. Large-scale IT transformation across a vast inventory of applications and business units puts an entirely different and much more exciting spin on enterprise architecture. Gregor Hohpe takes a serious but lighthearted look at the role of enterprise architects in modern IT organizations.
10:45am-12:15pm (1h 30m)
Session
1:15pm-2:05pm (50m) Sponsored
Building a service delivery infrastructure (sponsored by ThoughtWorks)
Paula Paul (Slalom Build), Rosemary Wang (ThoughtWorks)
Even if you're not ready to adopt a microservices architecture, you still want the benefits of rapidly deployable, highly automated infrastructure that enables rapid delivery of new features and services. Paula Paul and Rosemary Wang offer a deeper look at the necessary set of products and capabilities for a delivery infrastructure to support a distributed service or microservice architecture.
2:15pm-3:05pm (50m) Sponsored
A service mesh is easy to swallow in small pieces (sponsored by Aspen Mesh)
Andrew Jenkins (Aspen Mesh)
You're probably skeptical of the hype around service mesh technology. Join Andrew Jenkins to learn how incremental adoption can make a service mesh successful on your terms. You'll learn trade-offs around a few of the top capabilities so you can prioritize what your project adopts today and what you can defer based on your own risk-reward profile.
3:50pm-4:40pm (50m) Sponsored
OAuth: When things go wrong (sponsored by Okta)
Aaron Parecki (Okta)
Aaron Parecki discusses common security threats when building microservices using OAuth and how to protect yourself. You'll learn about high-profile API security breaches related to OAuth; common implementation patterns for mobile apps, browser-based apps, and web server apps; and the latest best practices around OAuth security being developed by the IETF OAuth working group.
4:50pm-5:40pm (50m) Microservices Best Practice, Case Study
Realigning DevOps practices to support microservices: A Capital One case study
Irakli Nadareishvili (Capital One), Raji Chockaiyan (Capital One)
Despite its success in building an engineering and DevOps culture, when Capital One embarked on the gargantuan task of embracing microservices several years ago, it had to do an analysis of which of its development and operational practices were applicable to the new architectural style and which had to be fundamentally reevaluated. Irakli Nadareishvili shares lessons learned from the process.
10:45am-12:15pm (1h 30m)
Session
1:15pm-2:05pm (50m) Sponsored
An emerging architecture pattern for Agile integration: Cell-based architecture (sponsored by WSO2)
Asanka Abeysinghe (WSO2)
A cell-based architecture is a composable unit of architecture that is self-contained. The cell is independently scalable. It’s independently deployable. It’s independently governed. It's part of an ecosystem of cells. Asanka Abeysinghe explains how to use a cell-based architecture to connect architecture, implementation, and deployment by making autonomous development teams.
2:15pm-3:05pm (50m) Sponsored
Progressive delivery: The evolution of your software development lifecycle (sponsored by LaunchDarkly)
Adam Zimman (LaunchDarkly)
Adam Zimman discusses the history of SDLC models before diving into the next phase of evolution: progressive delivery. Adam explores the benefits of the progressive delivery model, with a focus on business value of rapid delivery as a method to reduce risk.
3:50pm-4:40pm (50m) Sponsored
Is architecture dependent on infrastructure? (sponsored by IBM)
James Bottomley (IBM Research)
How much do you as an architect know about infrastructure—and how much do you think you should know? As we transition from physical systems to virtual machines to containers, the way we build systems is also changing radically, influenced by the new paradigms. James Bottomley explores the relationship between the systems we build and the infrastructure we build them from.
4:50pm-5:40pm (50m)
Session
10:15am-10:45am (30m)
Break: Morning Break
3:05pm-3:50pm (45m)
Break: Afternoon Break
5:40pm-6:45pm (1h 5m)
Sponsor Pavilion Reception
Join us in the Sponsor Pavilion for drinks and food at the Software Architecture Sponsor Pavilion Reception. This will be your first opportunity to network with other Software Architecture attendees, so don’t miss out.
12:15pm-1:15pm (1h)
Lunch (sponsored by Endava) and Tuesday Topic Tables
Join other attendees during lunch at Software Architecture to share ideas, talk about the issues of the day, and maybe solve a few. Not sure which topic to pick? Don’t worry—it's not a long-term commitment. Try two or three and settle on a different topic tomorrow.
12:15pm-1:15pm (1h)
Better Together Diversity Networking Lunch
If you’d like to make new professional connections and hear ideas for supporting diversity in the tech community, come to the diversity and inclusion networking lunch on Tuesday.
6:45pm-8:15pm (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 following the Sponsor Pavilion Reception.
8:00am-9:00am (1h)
Break: Morning Coffee
8:15am-8:45am (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.