Engineering the Future of Software
April 2–3, 2017: Training
April 3–5, 2017: Tutorials & Conference
New York, NY

Fundamentals

Software architecture is a fast-moving, multidisciplinary subject where entire suites of “best practices” become obsolete practically overnight. No single path or curriculum exists, and different types of architecture—application, integration, enterprise—require different subject emphasis. Regardless, software architecture plays a key role in the success of any organization. But how do you figure out the right way forward? Do you start from scratch? What are some best practices and strategies to consider?

Add to your personal schedule
9:00am–12:30pm Monday, April 3, 2017
Location: Sutton North/Center
Level: Intermediate
Sina Jahan (ThoughtWorks)
Average rating: ***..
(3.60, 10 ratings)
Sina Jahan walks you through bootstrapping a set of related services, explores the challenges with testing finer-grained systems, and shares some solutions, enabling you to release with more confidence. Read more.
Add to your personal schedule
1:30pm–5:00pm Monday, April 3, 2017
Location: Sutton South/Regent Parlor
Level: Intermediate
Tudor Girba (feenk.com)
Average rating: **...
(2.29, 14 ratings)
"Emerge your architecture" goes the Agile mantra. That’s great. Developers get empowered, and fluffy papers make room for real code structure. But how do you ensure the cohesiveness of the result? Tudor Girba explains why architecture cannot be controlled (because it is a commons) and introduces an Agile yet systematic approach for how it can be steered. Read more.
Add to your personal schedule
10:45am–12:15pm Tuesday, April 4, 2017
Location: Grand Ballroom West
Level: Beginner
Jeremy Deane (Liberty Mutual)
Average rating: ****.
(4.50, 12 ratings)
Regardless of the techniques used to make an enterprise solution highly available (HA), failure at some point is inevitable. Resiliency is how fast a system reacts and then recovers to such failures. Jeremy Deane covers a number of techniques and patterns for addressing architectural resiliency, including intelligent agents, tolerant reader, and circuit breaker. Read more.
Add to your personal schedule
3:50pm–4:40pm Tuesday, April 4, 2017
Location: Sutton South/Regent Parlor
Level: Intermediate
Seth Dobbs (HS2 Solutions)
Average rating: ****.
(4.00, 6 ratings)
Modern web and mobile applications have read/write ratios that are far different than when many of the underlying technologies and architectural patterns were first developed. Seth Dobbs demonstrates architecting data partitioning and flow control to enable our highly consumption-oriented world. Read more.
Add to your personal schedule
10:45am–12:15pm Wednesday, April 5, 2017
Location: Sutton North/Center
Level: Beginner
John Chapin (Symphonia)
Average rating: ****.
(4.60, 5 ratings)
John Chapin explores AWS Lambda in depth, covering the Lambda execution environment, Lambda’s Java runtime characteristics and best practices for Java-based Lambdas, and techniques for effectively using services like Cloudwatch, DynamoDB, and Kinesis with Lambdas. Read more.
Add to your personal schedule
10:45am–12:15pm Wednesday, April 5, 2017
Location: Grand Ballroom West
Level: Intermediate
Matt Stine (Software Architecture Radio)
Average rating: ****.
(4.40, 5 ratings)
The verdict is in: the cloud is NOT a fad. As a software architect, you will soon be called upon to evaluate various cloud services and determine their suitability for your company's use (If you haven't been already). Matt Stine outlines 10 key criteria that you can use to evaluate any cloud service. Read more.
Add to your personal schedule
10:45am–12:15pm Wednesday, April 5, 2017
Location: Nassau East/West
Nathaniel Schutta (Ntschutta.com)
Average rating: ***..
(3.00, 5 ratings)
Developers focus on functional requirements, but once you step into the architect role, your world is increasingly inhabited by the "-ilities"—the nonfunctional or quality attributes of a software system. But which "-ilities" matter and which don't? Nathaniel Schutta explores approaches to architectural problems and explains how to best document the inevitable decisions we arrive at. Read more.
Add to your personal schedule
1:15pm–2:05pm Wednesday, April 5, 2017
Location: Beekman Parlor
Level: Intermediate
Bulama Yusuf (Intellectual Apps Ltd.)
Average rating: ****.
(4.29, 7 ratings)
Software architecture and architects focus on engineering, business, and the user—the developer experience is usually an afterthought, which impacts the quality of the system being built. Bulama Yusuf discusses the importance of the developer experience and why it is important that the people who are going to build the system be taken into consideration right from the start. Read more.
Add to your personal schedule
1:15pm–2:05pm Wednesday, April 5, 2017
Location: Sutton South/Regent Parlor
Level: Intermediate
Steven Lowe (ThoughtWorks)
Average rating: ****.
(4.67, 6 ratings)
Domain-driven design (DDD) helps focus and guide software development efforts, but learning DDD can be a daunting task. Steven Lowe shares three simple philosophical rules that guide understanding and application of DDD—capture the domain model, embed it in the code, and protect it from corruption—and explains how these rules guide DDD at all scales. Read more.
Add to your personal schedule
3:50pm–4:40pm Wednesday, April 5, 2017
Location: Sutton North/Center
Level: Intermediate
Christopher Phillips (Stanley Black and Decker)
Average rating: ***..
(3.40, 5 ratings)
Stanley Black and Decker's Digital Accelerator has spent the last year migrating existing applications, and creating new ones, using serverless architecture on AWS. Christopher Phillips explores the pros and cons of going serverless, as well as the tools and patterns you need and the caveats learned along the way. Read more.