july 16 - 19, 2019 westin westminster Überconf web apps john riviello and christopher lorenzo...

24
ÜberConf Westin Westminster July 16 - 19, 2019 Tue, Jul. 16, 2019 LEGACY LAKEHOUSE STANDLEY I STANDLEY II MEADOWBROOK WINDSOR WAVERLY FLATIRONS - 2ND FLOOR LONG’S PEAK - 2ND FLOOR COTTON CREEK I COTTON CREEK II 8:00 - 11:00 AM EARLY REGISTRATION: PRE-CONFERENCE WORKSHOP ATTENDEES ONLY - WESTMINSTER BALLROOM FOYER 9:00 - 8:00 PM Machine Learning Workshop Brian Sletten Architecture: The Hard Parts Mark Richards and Neal Ford Kubernetes for Developers - 3 Day Deep Dive Jonathan Johnson Java 9, 10 & 11 Workshop Christopher Judd VueJS [1]: The last front-end framework you will ever need Peter Pavlovich Master Git in a Day Lyndsey Padget Sharing Components Across Frameworks John Riviello and Christopher Lorenzo Developing Talking Applications with Alexa and Google Assistant Craig Walls Practical Refactoring - Tiny Steps to Better Code Llewellyn Falco Programming with Kotlin Venkat Subramaniam Get in the Fast Lane: Measuring Web Performance Sia Karamalegos 5:00 - 8:30 PM MAIN UBERCONF REGISTRATION - WESTMINSTER BALLROOM FOYER 6:30 - 9:30 PM DINNER - WESTMINSTER BALLROOM 7:30 - 10:30 PM Keynote: by Jessica Kerr 8:30 - 12:30 AM OPENING NIGHT OUTDOOR RECEPTION - SOUTH COURTYARD

Upload: others

Post on 20-May-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConfWestin WestminsterJuly 16 - 19, 2019

Tue, Jul. 16, 2019

LEGACY LAKEHOUSE STANDLEY I STANDLEY IIMEADOWBROOK WINDSOR WAVERLY FLATIRONS -2ND FLOOR

LONG’SPEAK - 2ND

FLOOR

COTTONCREEK I

COTTONCREEK II

8:00 - 11:00 AM EARLY REGISTRATION: PRE-CONFERENCE WORKSHOP ATTENDEES ONLY - WESTMINSTER BALLROOM FOYER

9:00 - 8:00 PM MachineLearning

WorkshopBrian Sletten

Architecture:The Hard

PartsMark Richardsand Neal Ford

Kubernetesfor Developers

- 3 DayDeep DiveJonathanJohnson

Java 9, 10& 11Workshop

ChristopherJudd

VueJS [1]:The lastfront-end

frameworkyou will

ever needPeter

Pavlovich

Master Gitin a DayLyndseyPadget

SharingComponents

AcrossFrameworks

JohnRiviello andChristopher

Lorenzo

DevelopingTalking

Applicationswith Alexa

and GoogleAssistant

Craig Walls

PracticalRefactoring -Tiny Steps toBetter Code

LlewellynFalco

Programmingwith Kotlin

VenkatSubramaniam

Get in theFast Lane:Measuring

WebPerformance

SiaKaramalegos

5:00 - 8:30 PM MAIN UBERCONF REGISTRATION - WESTMINSTER BALLROOM FOYER

6:30 - 9:30 PM DINNER - WESTMINSTER BALLROOM

7:30 - 10:30 PM Keynote: by Jessica Kerr

8:30 - 12:30 AM OPENING NIGHT OUTDOOR RECEPTION - SOUTH COURTYARD

Page 2: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConfWestin WestminsterJuly 16 - 19, 2019

Wed, Jul. 17, 2019

WESTMINSTERI-II

WESTMINSTERIII-IV

LEGACY LAKEHOUSE STANDLEY I STANDLEY IIMEADOWBROOKCOTTONCREEK

WINDSOR WAVERLY FLATIRONS- 2ND

FLOOR

LONG’SPEAK - 2ND

FLOOR

7:00 - 10:00 AM 5K FUN RUN & POWER WALK - MEET IN LOBBY

7:30 - 10:30 AM BREAKFAST & LATE REGISTRATION - WESTMINSTER BALLROOM

8:30 - 12:00 PM MicroservicesMigrationPatterns

MarkRichards

BuildingEvolutionaryArchitectures

Neal Ford

EssentialSpring BootCraig Walls

TheEvolution ofJava: 9, 10,11, and 12

VenkatSubramaniam

DevelopingDesign

Sense foryour CodeLlewellyn

Falco

KubernetesKonceptsJonathanJohnson

MaximizeDeveloper

Productivitywith Fast

and ReliableBuildsHans

Dockterand EricWendelin

Art ofStreaming

DanielHinojosa

A Vueperspective- Web Appswith Vue.js

— PartI

Raju Gandhi

PerformanceOptimizations

forProgressiveWeb Apps

JohnRiviello andChristopher

Lorenzo

Evolving toCloud Native

NathanielSchutta

The UltimateMetric

Arty Starr

10:00 - 12:30 PM MORNING BREAK

10:30 - 2:00 PM Microservicesand

DistributedDataMark

Richards

Restructuring&

MigratingArchitectures

Neal Ford

ExtremeSpring BootCraig Walls

Continuationsand Fibers:The NewFrontierfor JavaVenkat

Subramaniam

Cutting CodeQuickly

LlewellynFalco

KubernetesKoncepts

(continued)JonathanJohnson

MaximizeDeveloper

Productivitywith Fast

and ReliableBuilds

(continued)Hans

Dockterand EricWendelin

In DepthKafka

Streamsand KSQL

DanielHinojosa

A Vueperspective- Web Appswith Vue.js

— PartII

Raju Gandhi

WebComponents:The Future

of WebDevelopment

is HereChristopherLorenzo andJohn Riviello

AnArchitect's

Guide to SiteReliability

EngineeringNathanielSchutta

Data-DrivenRetros inPractice

Arty Starr

12:00 - 3:00 PM LUNCH & OUTDOOR BREAK - WESTMINSTER BALLROOM & SOUTH COURTYARD

1:00 - 4:30 PM The Riseand Fall of

MicroservicesMark

Richards

BuildingEvolutionary

Architectures:Architectural

FitnessFunction

KatasNeal Ford

Spring Boot:Application

managementwith ActuatorCraig Walls

Migratingto Java

Modules:Why

and HowVenkat

Subramaniam

5 EssentialSQL Skills

EveryDeveloper

should knowMichaelCarducci

Web SecurityWorkshop

Brian Sletten

12 (15)Factor AppWorkshop

ChristopherJudd

MachineLearning withSpark MLLib

DanielHinojosa

Testing VueRaju Gandhi

KonsumerDriven

KontractsJonathanJohnson

ProductionHardenedServicesNathanielSchutta

Anatomyof CultureArty Starr

2:30 - 4:45 PM BREAK

2:45 - 6:15 PM MicroservicesCaching

StrategiesMark

Richards

ArchitectureFoundations:Styles &

PatternsNeal Ford

SpringData: Dataat REST

Craig Walls

TypeInferencein Java:Dos and

Don'tsVenkat

Subramaniam

TheInfluentialEngineer -

Overcomingresistanceto changeMichaelCarducci

Web SecurityWorkshop(continued)

Brian Sletten

12 (15)Factor AppWorkshop(continued)Christopher

Judd

What’sNew inAngular

(Archived)LyndseyPadget

The World isBlue/GreenKen Sipe

WeavingCode

Analysis withYour TeamJonathanJohnson

ThinkingArchitecturally

NathanielSchutta

KubernetesPlatform

Security: Aframework tothink aboutit and some

practicaladviceLaine

Vyvyan andJosh Smith

4:15 - 6:30 PM BREAK

4:30 - 8:00 PM ApplyingReactive

ArchitecturePatterns

MarkRichards

ArchitectureFoundations:

Characteristics&

TradeoffsNeal Ford

SecuringSpring:

REST andOAuth2

Craig Walls

LearningTo Code InFunctional

Stylewith JavaVenkat

Subramaniam

InfluentialEngineerPart 2 -

PersuasionPatternsMichaelCarducci

DeveloperFirst: A NewLeadership

Mindset[the recap]

Kate Wardin

The Futureof Front-EndPerformance

SiaKaramalegos

AngularReactiveForms

LyndseyPadget

Are youMocking Me(with Spock)

Ken Sipe

ServerlessMadness onKubernetesJonathanJohnson

RustBrian Sletten

How toTechnology

Good -Tips for

Implementationat Scale

LaineVyvyan andJosh Smith

6:00 - 9:30 PM DINNER - WESTMINSTER BALLROOM & SOUTH COURTYARD

7:30 - 10:30 PM Keynote: by Hans Dockter

8:30 - 12:00 AM Badass 101LyndseyPadget

Stories EveryDeveloper

Should KnowNeal Ford

Principles ofCollaborativeAutomationJessica Kerr

The TalkingApp: An

introductionto developingAlexa skillsCraig Walls

The Artof the

ImpossibleMichaelCarducci

BeyondManaging

YourManagerKennethKousen

TheDecentralized

WebBrian Sletten

SiftingTechnologies- Separatingthe WheatFrom the

ChaffNathanielSchutta

LightningTalks

LlewellynFalco

WritingKatacodascenariosJonathanJohnson

Do YouKnow

Da WaeKen Sipe

AchieveGoals with

SMARTWINS

ChristopherJudd

Page 3: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConfWestin WestminsterJuly 16 - 19, 2019

Thu, Jul. 18, 2019

WESTMINSTERI-II

WESTMINSTERIII-IV

LEGACY LAKEHOUSE STANDLEY I STANDLEY IIMEADOWBROOKCOTTONCREEK

WINDSOR WAVERLY FLATIRONS- 2ND

FLOOR

LONG’SPEAK - 2ND

FLOOR

8:00 - 11:00 AM BREAKFAST - WESTMINSTER BALLROOM

9:00 - 12:30 PM EssentialArchitecture

PracticesMark

Richards

Intro. toMicroservices

on AWSChris

Hansen

ConsumeFirst

ArchitectureLlewellyn

Falco

ExploringModern

JavaScriptVenkat

Subramaniam

Get Go-ingRaju Gandhi

WebAssemblyWorkshop

Brian Sletten

Kafka as aPlatform: theEcosystem

from theGround Up

Tim Berglund

KontinuousPipelineson K8s

JonathanJohnson

ThreatIntelligence

FundamentalsAaron Bedra

GRAAL TheMagnificent!

DanielHinojosa

BuildYour Own

TechnologyRadar

Workshopfor Architects

Neal Ford

Anatomy ofCommunication

Arty Starr

10:30 - 1:00 PM MORNING BREAK

11:00 - 2:30 PM Choosingthe Right

ArchitectureMark

Richards

EventSourcing:

TheWayback

Machine foryour Data

ChrisHansen

Refactoring- ContinuousImprovement

of YourCode BaseLlewellyn

Falco

ExploringModern

JavaScript(continued)

VenkatSubramaniam

Go-ingfurther

Raju Gandhi

WebAssemblyWorkshop(continued)

Brian Sletten

Shaving theGolden YakJessica Kerr

MeshingAround

with IstioJonathanJohnson

ThreatIntelligence

Fundamentals(continued)

Aaron Bedra

What'snew inScala 3

"Dotty"?Daniel

Hinojosa

AutomatingArchitectureGovernanceNeal Ford

ManagingSchemasin Kafka

Tim Berglund

12:30 - 3:30 PM LUNCH - WESTMINSTER BALLROOM

1:30 - 5:00 PM IntegrationArchitecture:

Conceptsand Patterns

MarkRichards

KotlinFundamentals

KennethKousen

(Archived)Micro

FrontendsFTW

LyndseyPadget

CreatingReact

ApplicationsVenkat

Subramaniam

TestHarnessing

LegacyInfrastructure

Arty Starr

Infrastructure-As-A-Codewith AnsibleRaju Gandhi

Managingteams

in chaosChris Maki

MeshingAround withObservability

JonathanJohnson

AdaptiveThreat

ModelingAaron Bedra

Linked DataBrian Sletten

Resiliency,Reliability

andScalability:Tools and

Techniquesfor the

EnterprisePeter

Pavlovich

KafkaConnect

Tim Berglund

3:00 - 5:15 PM BREAK

3:15 - 6:45 PM ResponsibleMicroservices

NathanielSchutta

Kotlin:CoroutinesAnd MoreKennethKousen

Testing theUndesirable

DanielHinojosa

CreatingReact

Applications(continued)

VenkatSubramaniam

Putting OutFires withGasolineArty Starr

Ansible(best)

practicesRaju Gandhi

TypeScriptfor the

EnterpriseJessica Kerr

How secureis yourcloud?

Ann Mwangi

IntelligentCache

SystemsAaron Bedra

Linked Data(continued)

Brian Sletten

Moving fromAngular1 to 7: Acompleteroadmapin code.Peter

Pavlovich

FirstPrinciple ofSuccessfulDistributed

Agile Teams:Time to

CollaborateJohannaRothman

4:45 - 7:00 PM BREAK

5:00 - 8:30 PM Events, DearBoy, Events

Tim Berglund

(Archived -rebooted)

Git:Concepts

&StrategiesLyndseyPadget

GrokkingGenerics

DanielHinojosa

TakingPolyglot

Programmingto the nextlevel withGraalVMVenkat

Subramaniam

FromMonolithto 20,000

DeploymentsChris Maki

Pipelines-as-a-

Code withJenkins 2+

Raju Gandhi

GradleConfigurationUsing Kotlin

KennethKousen

Whatdrives yourachitecture

Ann Mwangi

Fluid TrustAaron Bedra

Flyingthrough

Cloud Native(CNCF)

Ken Sipe

ComponentBuffet: A

single routingsolution for

your Angular,AngularJSand React

components!Peter

Pavlovich

SevenPrinciples forAny EffectiveAgile Team,Collocated orDistributedJohannaRothman

6:30 - 9:30 PM DINNER - WESTMINSTER BALLROOM

7:30 - 10:30 PM UBERCONF X PANEL DISCUSSION

8:30 - 11:00 PM TECH TRIVIA SHOW - WIN PRIZES - JOIN US!!

Page 4: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConfWestin WestminsterJuly 16 - 19, 2019

Fri, Jul. 19, 2019

WESTMINSTERI-II

WESTMINSTERIII-IV

LEGACY LAKEHOUSE STANDLEY I STANDLEY IIMEADOWBROOKCOTTONCREEK

WINDSOR WAVERLY FLATIRONS- 2ND

FLOOR

LONG’SPEAK - 2ND

FLOOR

8:00 - 11:00 AM BREAKFAST - WESTMINSTER BALLROOM

9:00 - 12:30 PM This JavaGoes To 11

KennethKousen

Businessdriven cloudarchitectureAnn Mwangi

MachineLearning:Overview

Brian Sletten

CoreSoftwareDesign

PrinciplesVenkat

Subramaniam

ServerlessChris Maki

DockerWorkshop

- Part IRaju Gandhi

BuildingServerless

Applicationsin AWS

WorkshopChristopher

Judd

AnIntroductionto Micronaut

MichaelCarducci

TypeLevelCats

DanielHinojosa

AngularArchitectures:

A roadmapfor the hearty

travellerPeter

Pavlovich

SecretsManagementAaron Bedra

Creating anEnvironment

forSuccessful

TeamEsther Derby

10:30 - 12:45 PM MORNING BREAK

10:45 - 2:15 PM Java TestingSkills withJUnit 5,

Mockito 3,and MoreKennethKousen

OfflineFirst - The

ProgressiveWeb

MichaelCarducci

MachineLearning:Natural

LanguageProcessing

Brian Sletten

Qualitiesof a HighlyEffectiveArchitectVenkat

Subramaniam

ConsumerDriven

ContractsChris Maki

DockerWorkshop

- Part IIRaju Gandhi

BuildingServerless

Applicationsin AWS

Workshop(continued)Christopher

Judd

Intro. toMicroservices

on AWSChris

Hansen

SoftwareMetrics forArchitectsAlexander

von Zitzewitz

VueJS [1]:A 50,00 footVue! Getting

startedwith VueJS

PeterPavlovich

SecretsManagement(continued)

Aaron Bedra

Creating anEnvironment

forSuccessful

Team(continued)

Esther Derby

12:15 - 3:30 PM OUTDOOR BREAK & LUNCH - WESTMINSTER BALLROOM & SOUTH COURTYARD

1:30 - 5:00 PM Docker tothe RescueChris Maki

Devs JustWant

to HaveFun(ctional)!Raju Gandhi

MachineLearning:

DeepLearning

Brian Sletten

ApplyingDesign

PatternsVenkat

Subramaniam

Modeling forArchitectsNathanielSchutta

Hacking&

HardeningJava Web

ApplicationsWorkshop

ChristopherJudd

How toorganizeyour code

for long termsuccess

Alexandervon Zitzewitz

Productivityfor the

hopelesslydisorganized

MichaelCarducci

Micro Shifts,MacroResults

Esther Derby

VueJS [2]:Gazingdeeper:

Getting abetter Vueof VueJS

PeterPavlovich

One of Us– theImportance

ofCommunityin CultureChangeLaine

Vyvyan andJosh Smith

Think Big,Plan Small:How to UseContinualPlanningJohannaRothman

3:00 - 5:15 PM AFTERNOON BREAK

3:15 - 6:45 PM Cloud NativeApplicationsChris Maki

On beingan effectivedeveloper

Raju Gandhi

MachineLearning:

TensorFlowBrian Sletten

ApplyingDesign

Patterns(continued)

VenkatSubramaniam

Modeling forArchitects

(continued)NathanielSchutta

Hacking&

HardeningJava Web

ApplicationsWorkshop(continued)Christopher

Judd

How toorganizeyour code

for long termsuccess

(continued)Alexander

von Zitzewitz

VDD: ValueDriven

Development- 10 Golden

Rules forincrementalGreatness

MichaelCarducci

ManagingComplexity

Esther Derby

ReactivitySimplified:Stellar WebApplicationswith VueJS,Vuex and

MeteorPeter

Pavlovich

But IDon'tWANNA -Protecting

YourResourcesas a SkilledKnowledge

WorkerLaine

Vyvyan andJosh Smith

AgileProgram

Management:Measurementsto See Valueand Delivery

JohannaRothman

4:45 - 7:00 PM CONCLUSION OF UBERCONF X - THANK YOU FOR ATTENDING!

Page 5: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Tuesday, Jul. 168:00 - 11:00 AM : EARLY REGISTRATION: PRE-CONFERENCE WORKSHOP ATTENDEES ONLY -WESTMINSTER BALLROOM FOYER

9:00 - 8:00 PM - Sessions

Session #1 @ LEGACY : Machine Learning Workshop by Brian SlettenMachine Learning is all the rage, but many developers have no idea what it is, what they can expect from it or how to start to get intothis huge and rapidly-changing field. The ideas draw from the fields of Artificial Intelligence, Numerical Analysis, Statistics and more.These days, you'll generally have to be a CUDA-wielding Python developer to boot. This workshop will gently introduce you to the ideasand tools, show you several working examples and help you build a plan to for diving deeper into this exciting new field.

Session #2 @ LAKEHOUSE : Architecture: The Hard Parts by Mark Richards and Neal FordArchitects often look harried and worried because they have no clean, easy decisions: everything is a terrible tradeoff. Architecture haslots of difficult problems, which this workshop highlights by investigating what makes architecture so hard. In this hand-on platform-agnostic architecture workshop we go beyond the fundamentals of software architecture and focus on the really hard problems. We'llfocus on areas surrounding modularity verses granularity, the challenges of event-driven architectures (including difficult error handingissues), why reuse doesn't work anymore, how to do tradeoff analysis, and how to decouple services to achieve proper granularity.Architecture is full of hard parts; by tracing the common reasons and applying lessons more universally, we can make it softer.

Session #3 @ STANDLEY I : Kubernetes for Developers - 3 Day Deep Dive by Jonathan JohnsonAt the end of this workshop, you will be comfortable with designing, deploying, managing, monitoring and updating a coordinated setof applications running on Kubernetes. Distributed application architectures are hard. Building containers and designing microservicesto work and coordinate together across a network is complex. Given limitations on resources, failing networks, defective software, andfluctuating traffic you need an orchestrator to handle these variants. Kubernetes is designed to handle these complexities, so you donot have to. It's essentially a distributed operating system across your data center. You give Kubernetes containers and it will ensurethey remain available. Kubernetes continues to gain momentum and is quickly becoming the preferred way to deploy applications. In this workshop, we’ll grasp the essence of Kubernetes as an application container manager, learning the concepts of deploying,pods, services, ingression, volumes, secrets, and monitoring. We’ll look at how simple containers are quickly started using a declarativesyntax. We'll build on this with a coordinated cluster of containers to make an application. Next, we will learn how Helm is used formanaging more complex collections of containers. See how your application containers can find and communicate directly or use amessage broker for exchanging data. We will play chaos monkey and mess with some vital services and observe how Kubernetes self-heals back to the expected state. Finally, we will observe performance metrics and see how nodes and containers are scaled. Come tothis workshop the learn how to deploy and manage your containerized application. On the way, you will see how Kubernetes effectivelyschedules your application across its resources.

Session #4 @ STANDLEY II : Java 9, 10 & 11 Workshop by Christopher JuddWith the quick moving 6-month Java train releases, you like many Java developers and organizations may have remained on Java 8waiting for the next Long-Term-Support (LTS) release. Well, Java 11 is here so it is time to begin the adoption and upgrading. Java 9was a HUGE release with many impactful features like the module system, jLink, jShell and a hand full of new Project Coin languagefeatures. While Java 10 & 11 were small in comparison based on feature count their influence will be felt. The var keyword, Graaland container awareness features along with lambda, thread and garbage collection enhancements will improve development andoperations.

Session #5 @ MEADOWBROOK : VueJS [1]: The last front-end framework you will ever need by PeterPavlovichVueJS is the new contender for 'best front end framework' and is running a very close second place to React in popularity amongstknowledgable developers. It is gaining mindshare and has incredible momentum, all for very good reasons! Join us for this introductory,full day workshop in which we fully explore everything that makes VueJS the last framework you will ever learn ... because you won'tever want to use anything else again!

Session #6 @ WINDSOR : Master Git in a Day by Lyndsey PadgetUnless you’ve been living under a rock, you know that Git is the most popular source control management in development shopstoday. And for good reason; its power overshadows tools you may have used in the past, such as Subversion or Team Foundations.While most developers and companies know this, making the switch can be painful. It’s all too common to lose code or introduce bugsbecause of difficulties merging or resolving conflicts. But fear not - it is possible to get comfortable with Git.

Session #7 @ WAVERLY : Sharing Components Across Frameworks by John Riviello andChristopher LorenzoHave you been asked to take a component from one project and “just” put it into another project built with an entirely different JavaScriptframework? Do you work at a diverse company with teams using Angular, React and Vue and are wondering how you can stopduplicating effort? Do you have framework fatigue and want to skip the cycle of learning yet another framework? If so, then WebComponents are what you have been searching for!

Page 6: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #8 @ FLATIRONS - 2ND FLOOR : Developing Talking Applications with Alexa and GoogleAssistant by Craig WallsIn this hands-on workshop, you'll learn to create voice-first applications for both Amazon's Alexa and Google's Assistant platforms.In addition, we'll also cover creating visual UIs to accompany the voice-first applications (for devices such as Echo Show). No priorexperience with voice applications is required and you do not even need to own a home assistant device to get started. Elementaryexperience with NodeJS is required. You'll also need developer accounts for both AWS and Google.

Session #9 @ LONG’S PEAK - 2ND FLOOR : Practical Refactoring - Tiny Steps to Better Code byLlewellyn FalcoThe goal: Clean Code That Works, and getting there is half the fun. Working with a legacy mess can be frustrating, boring, dangerous,and time-consuming. When FIBS occur (FIBs = Fixes that Introduce Bugs) you often enter an endless Test and Fix cycle that canquickly escalate into a nightmare. I've been there, you've been there. How do we return to pleasant dreams?

Session #10 @ COTTON CREEK I : Programming with Kotlin by Venkat SubramaniamKotlin is one of those few multi-platform languages. You can compile Kotlin to Java bytecode, to Android, to WebAssembly, to run nativeon different OS, and to JavaScript. The language draws inspiration from many different languages. It is highly fluent and code in Kotlin isconcise, elegant, and easy to maintain. This workshop will get you up to speed on using Kotlin for your day-to-day programming.

Session #11 @ COTTON CREEK II : Get in the Fast Lane: Measuring Web Performance by SiaKaramalegosAre you losing revenue to performance? 53% of mobile site visits are abandoned if a page takes longer than 3 seconds to load.Pinterest reduced load times by 40% and saw a 15% increase in sign ups. Starbucks implemented a 2x faster time to interactiveresulting in a 65% increase in rewards registrations. AliExpress reduced load by 36% and saw a 10.5% increase in orders. Performanceis important. Tooling can be hard. Do flame charts intimidate you? Come learn how to audit and fix common performance issues usingChrome DevTools, Lighthouse, PageSpeed Insights, and webpagetest.org.

5:00 - 8:30 PM : MAIN UBERCONF REGISTRATION - WESTMINSTER BALLROOM FOYER

6:30 - 9:30 PM : DINNER - WESTMINSTER BALLROOM

Keynote: Collective Problem Solving in Music, Science, Art, and Software. - Jessica Kerr

8:30 - 12:30 AM : OPENING NIGHT OUTDOOR RECEPTION - SOUTH COURTYARD

Wednesday, Jul. 177:00 - 10:00 AM : 5K FUN RUN & POWER WALK - MEET IN LOBBY

7:30 - 10:30 AM : BREAKFAST & LATE REGISTRATION - WESTMINSTER BALLROOM

8:30 - 12:00 PM - Sessions

Session #12 @ WESTMINSTER I-II : Microservices Migration Patterns by Mark RichardsThe path to migrating to Microservices from a monolithic or service-oriented architecture (or even starting a greenfield application) isriddled with challenges, pitfalls, canyons, demons, and even fire-breathing dragons. I like to call it "The Kings Road". In this sessionI will show the migration patterns that allow you to easily fly over this challenging road and ease the pain associated with moving tomicroservices. I will also show you some automation tools you can use to help analyze your applications to determine how challengingthis road will be.

Session #13 @ WESTMINSTER III-IV : Building Evolutionary Architectures by Neal FordAn evolutionary architecture supports incremental, guided change along multiple dimensions.

Session #14 @ LEGACY : Essential Spring Boot by Craig WallsIn this example-driven presentation, you'll learn how to leverage Spring Boot to accelerate application development, enabling you tofocus coding on logic that drives application requirements with little concern for code that satisfies Spring's needs.

Session #15 @ LAKEHOUSE : The Evolution of Java: 9, 10, 11, and 12 by Venkat SubramaniamJava is a language in evolution. There are a handful of language changes in Java 9 and 10 plus several JDK changes in 9, 10, 11,and 12. Some of these changes are significant in that they allow us to do things more effectively than before. The difference can beanywhere from reducing code to avoiding errors that come from verbosity. In this presentation we will explore the language changesfirst. Then we will visit the additions to the JDK. Along the way we will also look at a few things that have been removed from Java aswell.

Page 7: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #16 @ STANDLEY I : Developing Design Sense for your Code by Llewellyn Falco“In order to make delicious food…. you need to develop a palate capable of discerning good and bad. Without good taste, you can'tmake good food.” - Jiro Ono (World’s Best Sushi Chef) Many of us are stuck with messy code. We know it’s not great but it works andwhat can we do? Where and how do you start?

Session #17 @ STANDLEY II : Kubernetes Koncepts by Jonathan JohnsonYou have some modular code with a REST API. You are on your way to Microservices. Next, you package it in a container image thatothers can run. Simple. Now what? Your service needs to log information, needs to scale and load balance between its clones. Yourservice needs environment and metadata way outside its context. What about where the service will run? Who starts it? What monitorsits health? What about antifragility? Updates? Networking? Oh my. Don't get flustered. We will explore how Kubernetes simplifies thecomplexity of distributed computing.

Session #18 @ MEADOWBROOK : Maximize Developer Productivity with Fast and Reliable Builds byHans Dockter and Eric WendelinOne of the biggest impediments to overall developer productivity and the overall success of the software organization is inefficientprocesses. Without the right tooling to get to the root of the problem, debugging build and test failures is incredibly frustrating and leadsto delays in shipping software.

Session #19 @ COTTON CREEK : Art of Streaming by Daniel HinojosaAn *overview* of various popular streaming technologies on the JVM: Kafka Streams, Apache Storm, Spark Streaming, Apache Beam.Discuss "the bill of rights" of what to expect of all streaming libraries and frameworks, security, failover, exactly once processing.

Session #20 @ WINDSOR : A Vue perspective - Web Apps with Vue.js — Part I by RajuGandhiIn this session we will build a full application using Vue.js. We will start by discussing how you can start working with Vue, all the way toseeing what it takes to build an app with Vue, including state management and routing.

Session #21 @ WAVERLY : Performance Optimizations for Progressive Web Apps by John Rivielloand Christopher LorenzoStruggling to get your website to load in less than 5 seconds on a mobile phone? Switching pages are a little sluggish? You’re not alone!Most web developers can build a responsive site, but fail to meet performance requirements for mobile. Using the latest PRPL patternand Progressive Web API’s, you can provide a compelling alternative to native apps, as long as performance remains your top feature.

Session #22 @ FLATIRONS - 2ND FLOOR : Evolving to Cloud Native by Nathaniel SchuttaEvery organization has at least a phalanx or two in the “Cloud” and it is, understandably changing the way we architect our systems.But your application portfolio is full of "heritage" systems that hail from the time before everything was as a service. Not all of thoseapplications will make it to the valley beyond, how do you grapple with your legacy portfolio? This talk will explore the strategies, toolsand techniques you can apply as you evolve towards a cloud native future.

Session #23 @ LONG’S PEAK - 2ND FLOOR : The Ultimate Metric by Arty StarrSince the dawn of software development, we've struggled with a huge disconnect between the management world and the engineeringworld. We try to explain our problems in terms of "technical debt", but somehow the message seems to get lost in translation, and wedrive our projects into the ground, over and over again. What if we could detect the earliest indicators of a project going off the rails, andhad data to convince management to take action? What if we could bridge this communication gap once and for all?

10:00 - 12:30 PM : MORNING BREAK

10:30 - 2:00 PM - Sessions

Session #24 @ WESTMINSTER I-II : Microservices and Distributed Data by Mark RichardsJorge Santayana is famous for saying "Those who cannot remember the past are condemned to repeat it". When SOA (Service-Oriented Architecture) was all the craze, everyone got all excited about services, but forgot about the data. This ended in disaster.History repeats itself, and here we are with Microservices, where everyone is all excited about services, but once again, forgets all aboutthe data. In this session I will discuss some of the challenges associated with breaking apart monolithic databases, and then show thetechniques for effectively creating data domains and how to split apart a database. I consider the data part of Microservices the hardestaspect of this architecture style. In the end, it's all about the data.

Session #25 @ WESTMINSTER III-IV : Restructuring & Migrating Architectures by Neal FordPatterns/antipatterns, techniques, engineering practices, and other details showing how to restructure existing architectures and migratefrom one architecture style to another.

Page 8: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #26 @ LEGACY : Extreme Spring Boot by Craig WallsIn this session, you'll learn how to take your Spring Boot skills to the next level, applying the latest features of Spring Boot. Topics mayinclude Spring Boot DevTools, configuration properties and profiles, customizing the Actuator, and crafting your own starters and auto-configuration.

Session #27 @ LAKEHOUSE : Continuations and Fibers: The New Frontier for Java by VenkatSubramaniamWe will program with Java quite differently in the future than we do today. The reason is that Java is embracing asynchronousprogramming like never before. This will have a huge impact on how we create services and web applications. In this presentations wewill look at what asynchronous programming is, what continuations are, how they get implemented under the hood, and how we canbenefit from them.

Session #28 @ STANDLEY I : Cutting Code Quickly by Llewellyn FalcoIn this guided demo, we are going to look at 3 different techniques that are remarkably powerful in combination to cut through legacycode without having to go through the bother of reading or understanding it. The techniques are: Combination Testing: to get 100% testcoverage quickly Code Coverage as guidance: to help us make decisions about inputs and deletion Provable Refactorings: to help uschange code without having to worry about it. In combination, these 3 techniques can quickly make impossible tasks trivial.

Session #29 @ STANDLEY II : Kubernetes Koncepts (continued) by Jonathan JohnsonPrerequisite: If you are unfamiliar with Kubernetes be sure to attend: Kubernetes Koncepts (1 of 2) Aha moments with apps incontainers can be quite liberating. The mobile space is saturated with "there's an app for that". For us, we now expect "there'sa container for that". "Write once, run anywhere" (WORA) has changed to "Package once, run anywhere" (PORA). The growingcommunity of containers is riding up the hype curve. We will look at many ways to assemble pods using architecture patterns youalready know.

Session #30 @ MEADOWBROOK : Maximize Developer Productivity with Fast and Reliable Builds(continued) by Hans Dockter and Eric WendelinOne of the biggest impediments to overall developer productivity and the overall success of the software organization is inefficientprocesses. Without the right tooling to get to the root of the problem, debugging build and test failures is incredibly frustrating and leadsto delays in shipping software.

Session #31 @ COTTON CREEK : In Depth Kafka Streams and KSQL by Daniel HinojosaKafka is more than just a messaging queue with storage. It goes beyond that and with technology from Confluent open source it hasbecome a full-fledged data ETL and data streaming ecosystem.

Session #32 @ WINDSOR : A Vue perspective - Web Apps with Vue.js — Part II by RajuGandhiIn this session we will build a full application using Vue.js. We will start by discussing how you can start working with Vue, all the way toseeing what it takes to build an app with Vue, including state management and routing.

Session #33 @ WAVERLY : Web Components: The Future of Web Development is Here byChristopher Lorenzo and John RivielloIf you haven’t explored Web Components yet, you’re missing out on a powerful tool that can greatly enhance reusability of common webelements throughout your websites and web applications. As Comcast has been updating our web properties to unify under a single UX,using Web Components with Polymer has helped make that process much more efficient.

Session #34 @ FLATIRONS - 2ND FLOOR : An Architect's Guide to Site Reliability Engineeringby Nathaniel SchuttaDevelopment teams often focus on getting code to production losing site of what comes after the design and build phase. But we mustconsider the full life cycle of our systems from inception to deployment through to sunset, a discipline many companies refer to as sitereliability engineering.

Session #35 @ LONG’S PEAK - 2ND FLOOR : Data-Driven Retros in Practice by Arty StarrHow does your team decide what's the most important problem to solve? When we ask a question like "what's the biggest problem?",it doesn't mean the biggest problems will come to mind. Instead, we're biased to think about what's bothered us most recently,annoyances, or pet peeves. It's really easy to spend tons of time working on improvements that make little difference. But what if we haddata that pointed us to the biggest problems across the team?

12:00 - 3:00 PM : LUNCH & OUTDOOR BREAK - WESTMINSTER BALLROOM & SOUTH COURTYARD

1:00 - 4:30 PM - Sessions

Page 9: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #36 @ WESTMINSTER I-II : The Rise and Fall of Microservices by Mark RichardsIn 250BC Rome began its expansion into Carthage, and later into the divided kingdoms of Alexander, starting the rise of a great empireuntil its decline starting around 350AD. Much can be learned from the rise and fall of the Roman Empire as it relates to a similar riseand fall: Microservices. Wait. Did I say "fall of microservices"? Over the past 5+ years Microservices has been on the forefront of mostbooks, articles, and company initiatives. While some companies been experiencing success with microservices, most companies havebeen experiencing pain, cost overruns, and failed initiatives trying to design and implement this incredibly complex architecture style.In this session I discuss and demonstrate why microservices is so vitally important to businesses, and also why companies are startingto question whether microservices is the right solution. Sir Issac Newton once quoted "What goes up must come down"; Blood, Sweat& Tears sang about this in their hit "Spinning Wheel". Microservices is no exception. Come to this provocative session to learn aboutthe real challenges and issues associated with microservices, how we might be able to overcome some of the technical (and business)challenges, and whether microservices is really the answer to our problems.

Session #37 @ WESTMINSTER III-IV : Building Evolutionary Architectures: Architectural FitnessFunction Katas by Neal FordBuilding Evolutionary Architectures requires identifying and creating architectural fitness functions. This hands-on workshop definesfitness functions and provides group exercises to help identify and discover them.

Session #38 @ LEGACY : Spring Boot: Application management with Actuator by Craig WallsIn this session, we'll explore the Spring Boot Actuator, a runtime component of Spring Boot that lets you peer inside a runningapplication and, in some cases, even tweak configuration on the fly. We'll look at many of the Actuator's endpoints, learn how tocustomize and even create new endpoints, and see how to expose Actuator metrics to several popular instrumentation and monitoringsystems.

Session #39 @ LAKEHOUSE : Migrating to Java Modules: Why and How by Venkat SubramaniamJava Modules are the future. However, our enterprise applications have legacy code, a lots of it. How in the world do we migrate fromthe old to the new? What are some of the challenges. In this presentation we will start with an introduction to modules and learn how tocreate them. Then we will dive into the differences between unnamed modules, automatic modules, and explicit modules. After that wewill discuss some key limitations of modules, things that may surprise your developers if they're not aware of. Finally we will discuss howto migrate current applications to use modules.

Session #40 @ STANDLEY I : 5 Essential SQL Skills Every Developer should know by MichaelCarducciThere's nothing new or exciting about relational databases. We abstract them away with ORMS, grudgingly write a query here or there,but generally try to forget about them entirely. Then the performance and scalability problems begin. "Shading, the secret ingredient tothe web-scale sauce" often won't help us.

Session #41 @ STANDLEY II : Web Security Workshop by Brian SlettenIf you're not terrified, you're not paying attention. Publishing information on the Web does not require us to just give it away. We have aseries of tools and techniques for managing identity, authentication, authorization and encryption so we only share content with thosewe trust. Before we tackle Web Security, however, we need to figure out what we mean by Security. We will pull from the worlds ofSecurity Engineering and Software Security to lay the foundation for technical approaches to protecting our web resources. We will alsodiscuss the assault on encryption, web security features and emerging technologies that will hopefully help strengthen our ability toprotect what we hold dear.

Session #42 @ MEADOWBROOK : 12 (15) Factor App Workshop by Christopher JuddLearn how to use Heroku's 12 (15) Factor App methodologies to make your applications more portable, scalable, reliable anddeployable.

Session #43 @ COTTON CREEK : Machine Learning with Spark MLLib by Daniel HinojosaSpark has a machine learning aspect to it and it's called Spark MLLib. We discuss an intro into machine learning, some models, thenapply some of those common machine learning models.

Session #44 @ WINDSOR : Testing Vue by Raju GandhiIn this session we will take a gander around the tools and techniques that have evolved around testing Vue applications. Vue testingrequires that we understand a set of newer technologies to help test our Vue components, events, routes (using Vue-Router) and state(using Vuex).

Session #45 @ WAVERLY : Konsumer Driven Kontracts by Jonathan JohnsonPrerequisite: If you are unfamiliar with Kubernetes be sure to attend: Kubernetes Kontracts What kinds of frictions do you encounterwhen writing tests? Sometimes tests are never written because setting up a reliable and repeatable infrastructure is too difficult. WithKubernetes, you are now empowered to control your infrastructure that is reliable and repeatable. We will explore different testingtechniques on Kubernetes, including an important one called "Consumer-Driven Contracts".

Page 10: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #46 @ FLATIRONS - 2ND FLOOR : Production Hardened Services by Nathaniel SchuttaBy now I bet your company has hundreds, maybe thousands of services, heck you might even consider some of them micro is stature!And while many organizations have plowed headlong down this particular architectural path, your spidey sense might be tingling...howdo we keep this ecosystem healthy?

Session #47 @ LONG’S PEAK - 2ND FLOOR : Anatomy of Culture by Arty StarrWhat makes software development complex isn't the code, it's the humans. The most effective way to improve our capabilities asan organization is to better understand ourselves. In this session, we'll breakdown the dynamics of culture into explicit architecturemodels based on a synthesis of research that spans cognitive science, biology and philosophy. We'll discuss the nature of Identity,communication, relationships, leadership and human motivation by thinking about humans like code!

2:30 - 4:45 PM : BREAK

2:45 - 6:15 PM - Sessions

Session #48 @ WESTMINSTER I-II : Microservices Caching Strategies by Mark RichardsHave you ever wondered how to share data between microservices? Have you ever wondered how to share a single database schemabetween hundreds (or even thousands) of microservices (cloud or on-prem)? Have you ever wondered how to version relationaldatabase changes when sharing data in a microservices environment? If any of these questions intrigue you, then you should come tothis session. In this session I will describe and demonstrate various caching strategies and patterns that you can use in Microservicesto significantly increase performance, manage common data in a highly distributed architecture, and even manage data synchronizationfrom cloud-based microservices. I'll describe the differences between a distributed and replicated cache, Using live coding and demosusing Hazelcast and Apache Ignite, I'll demonstrate how to share data and also how to do space-based microservices, leveragingcaching to its fullest extent.

Session #49 @ WESTMINSTER III-IV : Architecture Foundations: Styles & Patterns by Neal FordThis session covers basic application and distributed architectural styles, analyzed along several dimensions (type of partitioning,families of architectural characteristics, and so on).

Session #50 @ LEGACY : Spring Data: Data at REST by Craig WallsIn this example-driven presentation, we'll look at Spring Data REST, an extension to Spring Data that exposes your data repositories asa RESTful API, complete with hypermedia links. We'll start with essential Spring Data REST, but then go beyond the basics to see howto customize the resulting API to be more than just CRUD operations over HTTP.

Session #51 @ LAKEHOUSE : Type Inference in Java: Dos and Don'ts by Venkat SubramaniamSome developers simply hate type inference. And then there others who love it. Neither one of them is entirely right. In Java we havebeen making extensive use of type inference for several years without realizing it. The introduction of "var" in Java 10 has stirred upsome surprising debate. In this presentation we will step back and review type inference in Java. Then we will dive deep into typeinference in Java 10 and 11. We will wrap up the presentation will good recommendations on when to use type inference and when toavoid it.

Session #52 @ STANDLEY I : The Influential Engineer - Overcoming resistance to change by MichaelCarducciBy the end of this conference you will have learned many new tools and technologies. The easy part is done, now for the hard part:getting the rest of the team-and management-on board with the new ideas. Easier said than done. Whether you want to effect culturechange in your organization, lead the transition toward a new technology, or are simply asking for better tools; you must first understandthat having a "good idea" is just the beginning. How can you dramatically increase your odds of success? You will learn 12 concretestrategies to build consensus within your team as well as 6 technique to dramatically increase the odds that the other person will say"Yes" to your requests.

Session #53 @ STANDLEY II : Web Security Workshop (continued) by Brian SlettenIf you're not terrified, you're not paying attention. Publishing information on the Web does not require us to just give it away. We have aseries of tools and techniques for managing identity, authentication, authorization and encryption so we only share content with thosewe trust. Before we tackle Web Security, however, we need to figure out what we mean by Security. We will pull from the worlds ofSecurity Engineering and Software Security to lay the foundation for technical approaches to protecting our web resources. We will alsodiscuss the assault on encryption, web security features and emerging technologies that will hopefully help strengthen our ability toprotect what we hold dear.

Session #54 @ MEADOWBROOK : 12 (15) Factor App Workshop (continued) by Christopher JuddLearn how to use Heroku's 12 (15) Factor App methodologies to make your applications more portable, scalable, reliable anddeployable.

Session #55 @ COTTON CREEK : What’s New in Angular (Archived) by Lyndsey PadgetAngular 7 is a big jump for the entire platform, but what does it mean for you? (We'll also cover what's new in Angular 8!)

Page 11: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #56 @ WINDSOR : The World is Blue/Green by Ken SipeOne of the hardest activities and strategies of DevOps team or should we say production is how to transition from one version ofan application to another version of an application with cascading consequences of service dependencies. There are a numberof strategies for managing this concern. In this talk, we will outline a few of them along with required conditions of the underlyinginfrastructure to achieve it.

Session #57 @ WAVERLY : Weaving Code Analysis with Your Team by Jonathan JohnsonThis is the droid you are looking for. Within this droid are hundreds of rules designed to review your code for defects, hotspotsand security weaknesses. Consider the resulting analysis as humble feedback from a personal advisor. The rules come from yourcommunity of peers, all designed to save your butt. We will explore techniques on how to add these checks to your IDE, your buildscripts and your build pipelines.

Session #58 @ FLATIRONS - 2ND FLOOR : Thinking Architecturally by Nathaniel SchuttaRich Hickey once said programmers know the benefits of everything and the trade offs of nothing...an approach that can lead a projectdown a path of frustrated developers and unhappy customers. As architects though, we must consider the trade offs of every newlibrary, language, pattern or approach and quickly make decisions often with incomplete information. How should we think about theinevitable technology choices we have to make on a project? How do we balance competing agendas? How do we keep our teamhappy and excited without chasing every new thing that someone finds on the inner webs?

Session #59 @ LONG’S PEAK - 2ND FLOOR : Kubernetes Platform Security: A framework to thinkabout it and some practical advice by Laine Vyvyan and Josh SmithRunning containers requires a container management layer that thinks about and handles many moving parts. The architecture of thatlayer can't have cliffs, gaps, or rough edges: it has to be a _reliable_ and _complete_ platform. One critical piece of this is security.

4:15 - 6:30 PM : BREAK

4:30 - 8:00 PM - Sessions

Session #60 @ WESTMINSTER I-II : Applying Reactive Architecture Patterns by Mark RichardsReactive architecture patterns allow you to build self-monitoring, self-scaling, self-growing, and self-healing systems that can reactto both internal and external conditions without human intervention. These kind of systems are known as autonomic systems (ourhuman body is one example). In this session I will show you some of the most common and most powerful reactive patterns you canuse to automatically scale systems, grow systems, and self-repair systems, all using the basic language API and simple messaging.Through code samples in Java and actual run-time demonstrations, I'll show you how the patterns work and also show you sampleimplementations. Get ready for the future of software architecture - that you can start implementing on Monday.

Session #61 @ WESTMINSTER III-IV : Architecture Foundations: Characteristics & Tradeoffs byNeal FordThis session describes how architects can identify architectural characteristics from a variety of sources, how to distinguish architecturalcharacteristics from domain requirements, and how to build protection mechanisms around key characteristics. This session alsodescribe a variety of tradeoff analysis techniques for architects, to try to best balance all the competing concerns on software projects.

Session #62 @ LEGACY : Securing Spring: REST and OAuth2 by Craig WallsIn this session, we'll explore Spring Security and OAuth2, including building an OAuth2 authorization server, fronting an API with aresource server, and verifying an OAuth2 access token's claims to ensure that the client is allowed to access the resource they areasking for.

Session #63 @ LAKEHOUSE : Learning To Code In Functional Style with Java by VenkatSubramaniamFunctional style of programming was introduced in Java 8. Many organizations are still transitioning to Java 8 and more so, embracingthe functional style. If you are like the speaker, who spent decades on imperative style, then the transition to functional style can beintimidating. In this presentation we will learn about the fundamentals of programming in functional style, the set of tools that we canreach into to solve problems as a series of state transformation. We will learn the how but also the benefits along the way as well.

Session #64 @ STANDLEY I : Influential Engineer Part 2 - Persuasion Patterns by Michael CarducciIn Part 1, you learned the core principles of influence and persuasion. How to we take this back to the office and apply what we'velearned?

Session #65 @ STANDLEY II : Developer First: A New Leadership Mindset [the recap] by Kate WardinDeveloper First leadership does not depend on accumulating power within a team or company. Instead, it focuses on the needs of thedevelopers, their technical and career growth, and building positive team cultures. This session will cover 7 different tactics to practiceDeveloper First leadership. These include empowering others, the importance of diversity & inclusion on our dev teams, establishing apositive developer onboarding experience, and how to become an authentic and respected leader.

Page 12: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #66 @ MEADOWBROOK : The Future of Front-End Performance by Sia KaramalegosHelp! My app bundle is 5MB! My users are angry that my app is so slow! It’s easy to forget that performance matters when we are underpressure to deliver features quickly. What data should we use to inform our decisions?

Session #67 @ COTTON CREEK : Angular Reactive Forms by Lyndsey PadgetIf you’re using Angular 2+ and building forms the way you’ve always built them, you’re missing out on an amazingly powerful feature ofthe framework. Reactive forms (aka model-driven forms) allow you to build forms in the Typescript file, making complex validation anderror-handling a breeze.

Session #68 @ WINDSOR : Are you Mocking Me (with Spock) by Ken SipeSpock is a groovy based testing framework that leverages all the "best practices" of the last several years taking advantage of many ofthe development experience of the industry. So combine Junit, BDD, RSpec, Groovy and Vulcans… and you get Spock! There are 3tools I use on every Java project I control… this is one of them and with good reason.

Session #69 @ WAVERLY : Serverless Madness on Kubernetes by Jonathan JohnsonPrerequisite: If you are unfamiliar with Kubernetes be sure to attend: Kubernetes Koncepts. From operating system on bare metal, tovirtual machines on hypervisors, to containers orchestration platforms. How we run our code and bundle our applications continues toevolve. Serverless computing continuous our evolutionary path for our architectures.

Session #70 @ FLATIRONS - 2ND FLOOR : Rust by Brian SlettenRust has quickly become an incredibly popular language with exceptional tooling, documentation and a renowned community thatwelcomes and helps those who are new. It is intended as a systems programming such as C/C++ but has modern functional capabilitiesand intentionally-designed safety features.

Session #71 @ LONG’S PEAK - 2ND FLOOR : How to Technology Good - Tips for Implementation atScale by Laine Vyvyan and Josh SmithWant to bring [new cool thing X] or [necessary technology change Y]? GOOD IDEA! Except...now what? If your company is morethan about 3 people, how do you explain, enable, and encourage the adoption of this change, especially if it will require some work oneveryone’s part?

6:00 - 9:30 PM : DINNER - WESTMINSTER BALLROOM & SOUTH COURTYARD

Keynote: The Paradox of Success - How to maintain innovation performance as the codebase grows - HansDockter

8:30 - 12:00 AM - Sessions

Session #72 @ WESTMINSTER I-II : Badass 101 by Lyndsey PadgetWould Chuck Norris ask you to come hear him speak at a conference? No, he wouldn't. He would TELL you that you're coming, andthen roundhouse kick you in the face if you gave him any more lip.

Session #73 @ WESTMINSTER III-IV : Stories Every Developer Should Know by Neal FordStories and lessons from architecture, design, process, and other sources, each illustrating important principles and pitfalls for modernarchitects.

Session #74 @ LEGACY : Principles of Collaborative Automation by Jessica KerrHow can we make our tools work with our team? Like a good team member, great tools keep us informed, implement our decisions,and help us understand errors. Drawing from aviation, medicine, and software, here are strategies for choosing and building tools thatenhance us and do not frustrate us.

Session #75 @ LAKEHOUSE : The Talking App: An introduction to developing Alexa skills by CraigWallsIn this example-driven session, we'll explore the Alexa Skills Kit (ASK) and see how to develop skills for Amazon's Alexa. You'll learnhow to use the ASK CLI to jumpstart skill development and how to create conversational applications in NodeJS.

Session #76 @ STANDLEY I : The Art of the Impossible by Michael CarducciWe all have an innate sense of what's possible. Not only is this how magicians fool you, but it might also be what's holding you back.In this session Michael Carducci shares how he applied lessons learned in his career as a professional magician to his "day-job" as asoftware engineer.

Page 13: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #77 @ STANDLEY II : Beyond Managing Your Manager by Kenneth KousenThis is a revised and updated version of the previous talk, with current thinking from practice and the literature. The talk presents whyconflicts with your manager are inevitable based on differences in priorities and perspectives, and how to plan for them. The goal is toshow you how to build the loyalty relationship that allows you to get what you need when you need it.

Session #78 @ MEADOWBROOK : The Decentralized Web by Brian SlettenWhile the Web itself has strong decentralized aspects to how it is used, the backend technologies are largely centralized. The namingsystems, the routing systems and the traffic that all points back to the same place for a website are all centralized technologies. Thiscreates both a liability as well as a control point. In order to break free of some of these limitations, new technologies are emerging toprovide a more decentralized approach to the Web.

Session #79 @ COTTON CREEK : Sifting Technologies - Separating the Wheat From the Chaff byNathaniel SchuttaIf you’ve spent any amount of time in the software field, you’ve undoubtably found yourself in a (potentially heated) discussion aboutthe merits of one technology, language or framework versus another. And while you may have enjoyed the technical debate, assoftware professionals, we owe it to our customers (as well as our future selves) to make good decisions when it comes to picking onetechnology over another.

Session #80 @ WINDSOR : Lightning Talks by Llewellyn FalcoOver the course of my life I have amassed a great quantity of 1-3 minute talks. Tonight we are going to Randomly pick from that list andsee where the adventure takes us!

Session #81 @ WAVERLY : Writing Katacoda scenarios by Jonathan JohnsonExplore another learning medium to add to your toolbox: **Katacoda**. This is a 90-minute mini-workshop where you learn to be anauthor on Katacoda. Bring your favorite laptop with just a browser and a text editor. Have a Github account and bring your laptop. Let'slearn together.

Session #82 @ FLATIRONS - 2ND FLOOR : Do You Know Da Wae by Ken SipeWe build development teams based on individual ability to write code but development of a software project of any significance isbeyond a single persons effort with a very particular set of skills. It requires a team of members with a number array of skills. It requiressocial skills. It requires tools and alignment. It requires shared contextual models.

Session #83 @ LONG’S PEAK - 2ND FLOOR : Achieve Goals with SMART WINS by Christopher JuddEveryone wants to be successful in life. Many have found the SMART (specific, measurable, achievable, relevant & time boxed) goalsetting framework to be a powerful tool to help clarify and validate their goals. Unfortunately having well defined goals is not enough toobtain them. This is where WINS (write, incentivize, network & share) comes in.

Thursday, Jul. 188:00 - 11:00 AM : BREAKFAST - WESTMINSTER BALLROOM

9:00 - 12:30 PM - Sessions

Session #84 @ WESTMINSTER I-II : Essential Architecture Practices by Mark RichardsSoftware architecture is hard. It is full of tradeoff analysis, decision making, technical expertise, and leadership, making it more of anart than a science. The common answer to any architecture-related question is "it depends". To that end, I firmly believe there areno "best practices" in software architecture because every situation is different, which is why I titled this talk "Essential Practices":those practices companies and architects are using to achieve success in architecture. In this session I explore in detail the top 6essential software architectural practices (both technical architecture and process-related practices) that will make you an effective andsuccessful software architect.

Session #85 @ WESTMINSTER III-IV : Intro. to Microservices on AWS by Chris HansenHow to architect and deploy a microservice architecture on Amazon Web Services using services such as API Gateway andCloudFormation. We'll touch on a broad swath of services in the AWS suite to learn about what they do and how they fit into amicroservice architecture.

Session #86 @ LEGACY : Consume First Architecture by Llewellyn FalcoLet’s get back to basics. One of the microskills often used in TDD is Consume First Architecture, which simply means using the fieldsand methods **before** they exist. Sounds easy? Well yes and no. Even simple lines of code can have HUGE implications on yourarchitecture. The real skill in consume first is to be able to see, question and respond to those implications on sight.

Page 14: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #87 @ LAKEHOUSE : Exploring Modern JavaScript by Venkat SubramaniamJavaScript has come a long way. Libraries and frameworks like React, Angular, and Vue use the more recent versions of JavaScript.Getting up to speed will help us get better at programming both front-end and backend JavaScript applications.

Session #88 @ STANDLEY I : Get Go-ing by Raju GandhiIf you are interested in a different approach to writing your next micro-service, or are knee deep in the DevOps world with Kubernetesand Docker (both written using Go) you need to know go. Come join me in a rather quick introduction to the language and it's merits andshort-comings.

Session #89 @ STANDLEY II : WebAssembly Workshop by Brian SlettenWhat happens if Web applications become super fast? What if the ability to write code once but run it on lots of different platforms wastrue again? What if Desktops are no longer interesting because you can do everything in a browser? What if JavaScript wasn't your onlylanguage choice? These are all starting to happen now that this W3C Standard is supported widely across all major browser vendors,Node and more. It's never been a better time to dig into the future that is playing out now faster than most people realize.

Session #90 @ MEADOWBROOK : Kafka as a Platform: the Ecosystem from the Ground Up by TimBerglundKafka has become a key data infrastructure technology, and we all have at least a vague sense that it is a messaging system, but whatelse is it? How can an overgrown message bus be getting this much buzz? Well, because Kafka is merely the center of a rich streamingdata platform that invites detailed exploration.

Session #91 @ COTTON CREEK : Kontinuous Pipelines on K8s by Jonathan JohnsonPrerequisite: If you are unfamiliar with Kubernetes be sure to attend: Kubernetes Koncepts. Kubernetes is a powerful platform forrunning containers and distributing computation workloads across resources. A significant question is how do you get all your codeto this platform, continuously. In 2019 our community is bursting with new solutions to assist our delivery pipelines. While Jenkins is adominant player, there is a growing array of new ideas and choices. From coding at your laptop to building containers to deployments,we will explore the various tools and techniques to reduce the delivery frictions.

Session #92 @ WINDSOR : Threat Intelligence Fundamentals by Aaron BedraThis course will cover the foundations of threat intelligence. It will consist of a combination of lecture and lab where we will work throughthe concepts of detecting indicators of attack and compromise, and building automation to process and eliminate it. This is a fullyimmersive, hands on workshop that will include a number of techniques, tools, and code.

Session #93 @ WAVERLY : GRAAL The Magnificent! by Daniel HinojosaGraal is a VM and an awesome VM at that. Able to run a variety of languages and fast. The execution times can be impressive too. ThisVM can run anything, JavaScript, Python 3, Ruby, R, JVM-based languages like Java, Scala, Kotlin, and LLVM-based languages suchas C and C++.

Session #94 @ FLATIRONS - 2ND FLOOR : Build Your Own Technology Radar Workshop forArchitects by Neal FordA Technology Radar is a tool that forces you to organize and think about near term future technology decisions, both for you and yourcompany. This talk discusses using the radar for personal breadth development, architectural guidance, and governance.

Session #95 @ LONG’S PEAK - 2ND FLOOR : Anatomy of Communication by Arty StarrIn it's essence, DDD (Domain-Driven Design) is a philosophy and set of techniques for constructing a shared mental model of a system,and translating it into software. Ideally, we want conversations with other humans, and conversations with our code, to have the highestpossible bandwidth. Every major problem in software development boils down to communication. What if we enabled a dialog aroundthe challenges, by first deconstructing the Anatomy of Communication itself using our same DDD techniques?

10:30 - 1:00 PM : MORNING BREAK

11:00 - 2:30 PM - Sessions

Session #96 @ WESTMINSTER I-II : Choosing the Right Architecture by Mark RichardsWhether starting a new greenfield application or analyzing the vitality of an existing application, one of the decisions an architectmust 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 orsmall. Come to this fast-paced session to learn how to analyze your requirements and domain to make the right choice about whicharchitecture style is right for your situation.

Page 15: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #97 @ WESTMINSTER III-IV : Event Sourcing: The Wayback Machine for your Data by ChrisHansenA bug corrupts your critical data, how do you undo it without data loss? Your biggest customer needs to know the exact state of thesystem at a very specific point in time, how do you find that out? Systems using event sourcing have good answers to these questions.Event sourcing is nothing new. In fact, it's a proven pattern for building reliable systems at scale. For example, it's how most RDBMSesare implemented. Yet many developers are unfamiliar with this approach.

Session #98 @ LEGACY : Refactoring - Continuous Improvement of Your Code Base by LlewellynFalcoThis is a high level talk about many of the misconceptions surrounding refactoring, including What refactoring looks like Why refactoringis often neglected The pace of change Making better choices The ROI on improvements

Session #99 @ LAKEHOUSE : Exploring Modern JavaScript (continued) by Venkat SubramaniamJavaScript has come a long way. Libraries and frameworks like React, Angular, and Vue use the more recent versions of JavaScript.Getting up to speed will help us get better at programming both front-end and backend JavaScript applications.

Session #100 @ STANDLEY I : Go-ing further by Raju GandhiGo is a fascinating language. While it is simple, it makes some rather interesting decisions on several language features that we take forgranted in other languages.

Session #101 @ STANDLEY II : WebAssembly Workshop (continued) by Brian SlettenWhat happens if Web applications become super fast? What if the ability to write code once but run it on lots of different platforms wastrue again? What if Desktops are no longer interesting because you can do everything in a browser? What if JavaScript wasn't your onlylanguage choice? These are all starting to happen now that this W3C Standard is supported widely across all major browser vendors,Node and more. It's never been a better time to dig into the future that is playing out now faster than most people realize.

Session #102 @ MEADOWBROOK : Shaving the Golden Yak by Jessica KerrProgramming is a series of frustrations. Everything we do, we could do better or faster if we only had our tools set up just so. If our errormessages were a little better, our code a little cleaner, our tests a lot wider. When we spend time on this, it's known as "yak shaving,"and it can get messy. How do you balance the work you’re supposed to be doing with the work that makes your work, work? Dive intothe yak stack with me. We'll see five different species of yak, and discuss how and when to tackle each one. At the bottom of the yakstack, we might find the Golden Yak, with secret wisdom engraved on its skin.

Session #103 @ COTTON CREEK : Meshing Around with Istio by Jonathan JohnsonKubernetes out of the box is a strong platform for running and coordinating large collections of services, containers, and applications. Asis, Kubernetes is powerful for many solutions. However, Istio is a supercharger for Kubernetes. Once you see it you will realize whatwe have been missing.

Session #104 @ WINDSOR : Threat Intelligence Fundamentals (continued) by Aaron BedraThis course will cover the foundations of threat intelligence. It will consist of a combination of lecture and lab where we will work throughthe concepts of detecting indicators of attack and compromise, and building automation to process and eliminate it. This is a fullyimmersive, hands on workshop that will include a number of techniques, tools, and code.

Session #105 @ WAVERLY : What's new in Scala 3 "Dotty"? by Daniel HinojosaIn the alternative JVM Language arena, Scala is coming out with a new feature set under the code name "Dotty". This new Scala is duein 2020. Let's take a look at some of the cool new stuff that we can use. This presentation will assume basic Java knowledge and noScala knowledge is required.

Session #106 @ FLATIRONS - 2ND FLOOR : Automating Architecture Governance by Neal FordThis session describes mechanisms to automate architectural governance at application, integration, and enterprise levels

Session #107 @ LONG’S PEAK - 2ND FLOOR : Managing Schemas in Kafka by Tim BerglundOn the inside, Kafka is schemaless, but there is nothing schemaless about the worlds we live in. Our languages impose type systems,and the objects in our business domains have fixed sets of properties and semantics that must be obeyed. Pretending that we canoperate without competent schema management does us no good at all.

12:30 - 3:30 PM : LUNCH - WESTMINSTER BALLROOM

1:30 - 5:00 PM - Sessions

Page 16: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #108 @ WESTMINSTER I-II : Integration Architecture: Concepts and Patterns by MarkRichardsVery few applications stand alone anymore. Rather, they are combined together to form holistic systems that perform complex businessfunctions. One of the big challenges when integrating applications is choosing the right integration styles and usage patterns. In thissession we will explore various techniques and patterns for application integration, and look at what purpose and role open sourceintegration hubs such as Camel and Mule play in the overall integration architecture space (and how to properly use them!). Throughactual integration scenarios and coding examples using Apache Camel you will learn which integration styles and patterns to use foryour system and how open source integration hubs play an part in your overall integration strategy

Session #109 @ WESTMINSTER III-IV : Kotlin Fundamentals by Kenneth KousenLearn the basic syntax and semantics for the Kotlin programming language. Kotlin is an alternative JVM language that provides nullsafety, static typing, and powerful IDE support. This talk will emphasize the relationships between Kotlin and Java, highlighting thedifferences in types, functional programming, collections, and more.

Session #110 @ LEGACY : (Archived) Micro Frontends FTW by Lyndsey PadgetMicroservices have helped us break apart back end services, but large front ends often remain problematic monoliths.

Session #111 @ LAKEHOUSE : Creating React Applications by Venkat SubramaniamThis workshop will bring you up to speed on the essentials to create React applications.

Session #112 @ STANDLEY I : Test Harnessing Legacy Infrastructure by Arty StarrIn the world of legacy code, we often end up inheriting a tangled ball of mess with a lack of automation, and no clear surfaces fortesting. Yet still, under these circumstances, we're expected to safely make changes without regressions. Where do we start? Howdo we tackle this challenge? How do we get a handle on re-architecture? We'll start this discussion with a first-hand use case andexample -- tackling the re-architecture of an 800k line JBoss application with near-zero unit tests. Ugh. The only option on the tablewas Selenium. UGH. Let's talk about alternative strategies. How have you tackled similar situations? How could we build a data-drivenregression framework without going through the UI?

Session #113 @ STANDLEY II : Infrastructure-As-A-Code with Ansible by Raju GandhiAn integral part to any DevOps effort involves automation. No longer do we wish to manage tens, hundreds or even thousands ofservers by hand, even if that were possible. What we need is a programmatic way to create and configure servers, be those for localdevelopment, all the way to production. This is where tools like Ansible come into play. Ansible offers us a way to define what our serverconfigurations are to look like using plain-text, version-controlled configuration files. Not only does this help with avoiding "snow-flakes",but it promotes server configuration to participate in the SDLC, pulling server configuration closer to the developers.

Session #114 @ MEADOWBROOK : Managing teams in chaos by Chris MakiThe cloud promises highly scalable infrastructure, economies of scale, lower costs and a more secure platform. When moving to thecloud, how do you take advantage of these new capabilities? How do you optimize your organization to make the best use of theresiliency and elasticity offered by the cloud? Closely associated with cloud computing is Continuous Delivery, the automated process toget changes to your customers quickly, safely and in a sustainable way. Continuous Delivery was born in the cloud and is a great wayto get ideas to your customers. There’s one catch, if you want to adopt a Continuous Delivery strategy, you need to build applicationsdifferently, your team structure needs to change and how you test and validate systems needs to adapt to these changes.

Session #115 @ COTTON CREEK : Meshing Around with Observability by Jonathan JohnsonPrerequisite: If you are unfamiliar with Kubernetes or Istio meshing be sure to attend: _Understanding Kubernetes: Fundamentals_ or_Understanding Kubernetes: Meshing Around with Istio_. Kubernetes is a complex container management system. Your applicationrunning in containers is also a complex system as it embraces the distributed architecture of highly modular and cohesive services. Asthese containers run, things may not always behave as smoothly as you hope. Embracing the notions of antifragility and designing asystem to be resilient despite the realities of resource limitations, network failures, hardware failures and failed software logic. All ofthis demands a robust monitoring system to open views into the behaviors and health of your applications running in a cluster. Threeimportant aspects to observe are log streams, tracing, and metrics.

Session #116 @ WINDSOR : Adaptive Threat Modeling by Aaron BedraSecurity should always be built with an understanding of who might be attacking and how capable they are. Typical threat modelingexercises are done with a static group of threat actors applied in "best guess" scenarios. While this is helpful in the beginning, thereal data eventually tells the accurate story. The truth is that your threat landscape is constantly shifting and your threat model shoulddynamically adapt to it. This adaptation allows teams to continuously examine controls and ensure they are adequate to counter thecurrent threat actors. It helps create a quantitative risk driven approach to security and should be a part of every security teams tools.

Session #117 @ WAVERLY : Linked Data by Brian SlettenEveryone understands the Web as a platform, but not as many can see the thread that connects the Web to APIs to linked interoperabledata models. In this design workshop, we will investigate the properties of the Web and how they can be applied to data, documents,services and concepts as the basis of truly spectacular vision for information interchange.

Page 17: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #118 @ FLATIRONS - 2ND FLOOR : Resiliency, Reliability and Scalability: Tools andTechniques for the Enterprise by Peter PavlovichYou built the app. You are ready to launch! But how do you proceed from there? You need to ensure that, once deployed, your appremains 'up', healthy, available and secure. For that, you are going to need some serious tools in your belt! Join us as we explore thetools and services you can use to complete your deployment stack and give you all of the monitoring and control that you need for asuccessful launch!

Session #119 @ LONG’S PEAK - 2ND FLOOR : Kafka Connect by Tim BerglundYour goal is simple: take that is happening in your company—every click, every database change, every application log—and made it allavailable as a real-time stream of well-structured data? No big deal! You’re just taking your decades-old, batch-oriented data integrationand data processing and migrating to to real-time streams and real-time processing. In your shop, you call that Tuesday. But of theseveral challenges to tackle, you’ll have to get data in and out of that stream processing system, and there’s a whole bunch of codethere you don’t want to write. This is where Kafka Connect comes in.

3:00 - 5:15 PM : BREAK

3:15 - 6:45 PM - Sessions

Session #120 @ WESTMINSTER I-II : Responsible Microservices by Nathaniel SchuttaThese days, you can’t swing a dry erase marker without hitting someone talking about microservices. Developers are studying EricEvan’s prescient book Domain Driven Design. Teams are refactoring monolithic apps, looking for bounded contexts and defining aubiquitous language. And while there have been countless articles, videos, and talks to help you convert to microservices, few havespent any appreciable time asking if a given application should be a microservice. In this talk, I will show you a set of factors you canapply to help you decide if something deserves to be a microservice or not. We’ll also look at what we need to do to maintain a healthymicro(services)biome.

Session #121 @ WESTMINSTER III-IV : Kotlin: Coroutines And More by Kenneth KousenThis talk will examine features of Kotlin at a greater depth than most tutorials. Coroutines -- the most popular feature of the language --will be covered, as well as higher order functions, reduction operations like reduce and fold, and lambdas with receivers. Those topicsprogress toward building DSLs and builders in Kotlin. Terms like "apply", "let", "use", "also", and "with" will be covered along with theirtypical use cases.

Session #122 @ LEGACY : Testing the Undesirable by Daniel HinojosaIn reality, our jobs aren't dealing with new code, but old crufty and evil code. How do we test such code, how do we get through it? Howcan we surgically take some of this bad code apart and make it testable.

Session #123 @ LAKEHOUSE : Creating React Applications (continued) by Venkat SubramaniamThis workshop will bring you up to speed on the essentials to create React applications.

Session #124 @ STANDLEY I : Putting Out Fires with Gasoline by Arty StarrOnce upon a time, it was just me and my app -- the days when all I had to know was "get data, put on screen." Fast forward ten yearslater, and what the hell happened? The level of complexity that we deal with in modern software development is insane. Are we reallybetter off than we were 10 years ago, or have we just been putting out our fires with gasoline?

Session #125 @ STANDLEY II : Ansible (best) practices by Raju GandhiAnsible, like Git, aims to be a simple tool. The benefit here is that the level of abstraction that Ansible offers is paper-thin, withno complicated workflows, or opinions enforced by the tool itself. The downside is that without a prescribed approach to Ansible,developing your playbooks often becomes a case of trial-and-error. As engineers steeped in the DevOps mindset we must be able touse the tool effectively, allowing us to accelerate **and** shorten the lead time from development to production.

Session #126 @ MEADOWBROOK : TypeScript for the Enterprise by Jessica KerrWith TypeScript, the JavaScript + Node ecosystem becomes a serious contender for backend development. This talk describeswhy: maturity, strong language features, and Enterprise-quality open source tools. Once you know how cool and fun it is, I'll revealsome less-pleasant surprises. Get the information I wish I had when moving from Java/Scala to TypeScript. If you're new to Nodeor to TypeScript, or if you're experienced but still frustrated, this session will widen your development world and strengthen yoursuperpowers.

Session #127 @ COTTON CREEK : How secure is your cloud? by Ann MwangiAs Cloud computing becomes more popular and many businesses are keen to adopt it,one of their major concerns is security. Inspite of the hype accompanying it and the success stories from the large organisations who have adopted, there are also numerousexamples of breaches that have been experienced in the cloud. Many businesses would like to know how to create a secure cloudinfrastructure to ensure that all their applications and data is well protected. This talk is based on my experience in different projects thatI have been involved in, some pitfalls that my team has fallen into and considerations that we can take while preparing for new cloudinfrastructure.

Page 18: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #128 @ WINDSOR : Intelligent Cache Systems by Aaron BedraAny system of significant scale or latency sensitivity employs the use of caching. It could be as simple as memoization, or ascomplicated as a fully distributed system. These ideas serve us well, but how do we take it to the next level? Join Aaron as hedemonstrates customizing a caching system. He will discuss the pros and cons of embedding application and domain specificity intoyour caching model. Aaron will show a start to finish implementation of a custom Redis module that reduces latency, network roundtrips, and adds pub/sub notifications. Learn how to take your cache to the next level and encode elements of your system directly intothe handling of your most accessed data.

Session #129 @ WAVERLY : Linked Data (continued) by Brian SlettenEveryone understands the Web as a platform, but not as many can see the thread that connects the Web to APIs to linked interoperabledata models. In this design workshop, we will investigate the properties of the Web and how they can be applied to data, documents,services and concepts as the basis of truly spectacular vision for information interchange.

Session #130 @ FLATIRONS - 2ND FLOOR : Moving from Angular 1 to 7: A complete roadmap incode. by Peter PavlovichYou have an angularJS application and are contemplating the daunting job of modernizing it by moving it to the latest flavor of Angular.Never fear! The job is not as hard as you might think, provided you prepare and plan for this project properly. Join us for this fearreducing session in which I will share with you patterns and strategies to make your migration efforts painless and successful!

Session #131 @ LONG’S PEAK - 2ND FLOOR : First Principle of Successful Distributed Agile Teams:Time to Collaborate by Johanna RothmanMore than half of all agile teams are not collocated. They are distributed or dispersed in some way, all over the world. The problem isthese teams have trouble living the agile principles, never mind adopting any specific agile practices. Instead of adopting any givenagile approach or framework, see how the hours of overlap governs any agile approach you might consider. You can create a teamenvironment that works. It might not look like a “traditional” agile team. You’ll have the opportunity to create an action plan for when youreturn to your office. Note: This workshop focuses on hours of overlap because that is the biggest problem for distributed teams.

4:45 - 7:00 PM : BREAK

5:00 - 8:30 PM - Sessions

Session #132 @ WESTMINSTER I-II : Events, Dear Boy, Events by Tim BerglundHarold McMillan was Prime Minister of England from 1957 to 1963, the last British PM born during Queen Victoria’s rule, and one whosewit and even-keeled nature defined his administration. When asked by a reporter what might force his government off the course he hadfirmly laid out for it, he allegedly replied “Events, dear boy, events.” The same might be said about what is driving software architecturestoday. Event-driven systems have enabled organizations to build substantial microservices ecosystems with all of the decoupling andevolvability that we were promised by the distributed computing technologies of 20 years ago. But these systems raise some interestingquestions: if events now rule, what has become of entities? If we store events in logs, do we still need databases? Can we merelyproduce immutable events to trivially scalable logs and loose our microservices to consume them with no regard for what is actually outthere in the world?

Session #133 @ WESTMINSTER III-IV : (Archived - rebooted) Git: Concepts & Strategies byLyndsey PadgetGit. It can be intimidating if you're accustomed to other kinds of source control management. Even if you're already using it andcomfortable with the basics, situations can arise where you wish you understood it better. Developers often just want to write codeand tell everyone else to take a hike, but the reality is that most of us work on teams where the feature-based code we write must beintegrated, tested, and ultimately released.

Session #134 @ LEGACY : Grokking Generics by Daniel HinojosaFor those still grappling with Generics? This will be an attempt to clear the air about generics. What are wildcards? What is extends?What is super? What is covariance? What is contravariance? What is invariance? What is erasure? Why and when do I need this?

Session #135 @ LAKEHOUSE : Taking Polyglot Programming to the next level with GraalVM byVenkat SubramaniamFor those programmers aspiring to be polyglot, there's a virtual machine that's all polyglot. In this presentation you can learn aboutGraalVM, what it's for, the benefits it offers, and where you may use it.

Session #136 @ STANDLEY I : From Monolith to 20,000 Deployments by Chris MakiA down in the trenches look at building, running and day-to-day development with a Continuous Delivery pipeline. This talk is based onmy experiences building multiple CD pipelines and optimizing developer workflows to push changes to production all day. I'll walk youthrough how we transformed a two-day deployment process into a 20-minute CD pipeline and then go on to perform more than 20,000deployments.

Page 19: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #137 @ STANDLEY II : Pipelines-as-a-Code with Jenkins 2+ by Raju GandhiWe developers really like code. Code, being plain-text, can be version-controlled, versioned, and follow a traditional SDLC lifecycle.For the longest time however, we were forced to live with having most of our Ci/Cd and server configurations live outside of ourcodebases, often at the mercy of infrastructure/operations teams. With the evolution of DevOps comes the notions of constructs likeIaaC (Infrastructure-As-A-Code), and with Jenkins 2.0, we can now manage our Jenkins jobs configurations as code!

Session #138 @ MEADOWBROOK : Gradle Configuration Using Kotlin by Kenneth KousenGradle started including a Kotlin DSL over a year ago. The Kotlin DSL brings strong typing, null safety, and, most importantly, powerfulIDE support. The goal is to improve the user experience with Gradle build files through code assist and improved readability. Thispresentation will demonstrate the new build style, both for Java projects and for Kotlin projects.

Session #139 @ COTTON CREEK : What drives your achitecture by Ann MwangiWhen we have a problem which can be solved using a software, we first design an architecture that will guide how the system willlook like. This architecture needs to be robust and well thought of to ensure that it handles all the requirements at hand and flexibleenough for the future. This talk is about some considerations to take while designing a system: The problem to be solved The usersof the system Systems integrations The talk also highlights some common pitfalls that teams fall into during this process: Databasemanagement Buzzword-oriented architecture Outcome of the talk:

Session #140 @ WINDSOR : Fluid Trust by Aaron BedraMicroservices bring about a series of architectural shifts. One of the most powerful is true separation of concerns. This change bringswith it incredible security opportunities. Join Aaron as he demonstrates how to identify and execute on these opportunities. In thissession you will explore service and data classification techniques, authentication and access control, and service interface design thatrespects classification boundaries. If you are interested in, building, or currently using Microservices, this session is a must see!

Session #141 @ WAVERLY : Flying through Cloud Native (CNCF) by Ken SipeThe maturing of industry projects and tools around cloud development and administration has led to the formation of the Cloud NativeComputing Foundation. This new foundation is similar to the Apache Foundation in that it provides governance over projects fromincubation to maturity. These projects define the current and future standards of the cloud which is important for all devops teams to beaware of. This session is a guided at jet speed tour of each project and how it fits in the eco-system.

Session #142 @ FLATIRONS - 2ND FLOOR : Component Buffet: A single routing solution for yourAngular, AngularJS and React components! by Peter PavlovichLearn about the newest version of the community developed and supported UI Router. Explore its new features and how best to applythis powerful tool in your Angular and React applications!

Session #143 @ LONG’S PEAK - 2ND FLOOR : Seven Principles for Any Effective Agile Team,Collocated or Distributed by Johanna RothmanMany agile teams---distributed or collocated---practice cargo cult agile instead of realizing the freedom and ease an agile approach canactually supply. That’s because they don’t realize there are seven principles they can apply. Applying them isn’t easy but is possible.In this workshop, we'll walk through the seven principles and you'll create your action items for what you can do when you return to theoffice.

6:30 - 9:30 PM : DINNER - WESTMINSTER BALLROOM

7:30 - 10:30 PM : UBERCONF X PANEL DISCUSSION

8:30 - 11:00 PM : TECH TRIVIA SHOW - WIN PRIZES - JOIN US!!

Friday, Jul. 198:00 - 11:00 AM : BREAKFAST - WESTMINSTER BALLROOM

9:00 - 12:30 PM - Sessions

Session #144 @ WESTMINSTER I-II : This Java Goes To 11 by Kenneth KousenMany new features have been added between the last Long Term Support release in Java 8 and the current one in Java 11. This talkwill summarize many of those capabilities, from the Jigsaw implementation of JPMS to unmodifiable collections to local variable typeinference and more. In addition to the basic code changes, the new six-month release schedule and associated licensing issues will bereviewed.

Page 20: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #145 @ WESTMINSTER III-IV : Business driven cloud architecture by Ann MwangiAs the cloud becomes more popular, many cloud-inexperienced architects wonder whether migration to the cloud is the correct wayto scale. When they decide to migrate they have to figure out where to start from and which components to use. This talk is not abouta particular cloud vendor but the questions and considerations to take while deciding on a cloud architecture for your business. Afterdeciding to migrate to the cloud, the architecture design will determine the success rate of the infrastructure. This architecture needs tobe robust and well thought of to ensure that it handles all the requirements at hand and flexible enough for the future.

Session #146 @ LEGACY : Machine Learning: Overview by Brian SlettenMachine Learning is a huge, deep field. Come get a head start on how you can learn about how machines learn.

Session #147 @ LAKEHOUSE : Core Software Design Principles by Venkat SubramaniamCreating code is easy, creating good code takes a lot of time, effort, discipline, and commitment. The code we create are truly themanifestations of our designs. Creating a lightweight design can help make the code more extensible and reusable.

Session #148 @ STANDLEY I : Serverless by Chris MakiI hope you'll join me on this exciting survey of Serverless Computing. When you think of Serverless you probably think of Lambda's orCloud Functions but there's so much more to the Serverless ecosystem. During this session will look at Serverless Computing in all itsvarious forms and discuss why you might want to use a Serverless architecture and how it compares to other cloud services.

Session #149 @ STANDLEY II : Docker Workshop - Part I by Raju GandhiDocker! Docker! Docker! Whether its running a piece of software on your local machine, to hermetic deployments of your softwarein production - docker has a place in your workflow. In this 2 part workshop we will get our hands dirty with Docker. We will create,tear down and modify containers, create our own images, see how to set up networking and volumes for containers, see the role ofDockerfiles, and if we have time, attempt to "compose" an application using "docker-compose"

Session #150 @ MEADOWBROOK : Building Serverless Applications in AWS Workshop byChristopher JuddTired of trying to manage and maintain servers? Never have a large enough operations team? Don’t have a budget for running lots ofserver? Don’t want to pay for servers siting idle? Afraid you might become so popular that you won’t be able to scale fast enough? Don’tworry, it is possible to alleviate these issues by moving to a serverless architecture that utilizes microservices hosted in the cloud. Thistype of architecture can support all different types of clients including web, mobile and IoT. During this hands-on workshop, you will builda serverless application utilizing AWS services such as Lambda, API Gateway, S3 and a datastore.

Session #151 @ COTTON CREEK : An Introduction to Micronaut by Michael CarducciMicronaut is a modern, JVM-based, full-stack framework for building modular, easily testable microservice applications.

Session #152 @ WINDSOR : TypeLevel Cats by Daniel HinojosaImagine `toString`, `equals`, and `hashCode` in a single class. Can you change implementations on the spot? Probably not, there maybe too many dependencies on your implementation. Time to break out an adapter pattern, a utility class, or better yet, a type class! Atype class is a kind of template in very static functional programming languages. Imagine a template that can read, write information asa side effect as well? Type classes are powerful.

Session #153 @ WAVERLY : Angular Architectures: A roadmap for the hearty traveller by PeterPavlovichThere is no doubt that Angular is the titan of modern, Javascript frameworks. That made it easier for you to convince the powers-that-be to let you select Angular for your project. You've done a small but successful POC and now your 'big' project has been green lightedto kick off next month. Your team is jazzed but as you start to plan out the real work, you begin to realize that there are many aspectsinherent to large Angular projects that have no 'out of the box' answers.

Session #154 @ FLATIRONS - 2ND FLOOR : Secrets Management by Aaron BedraWe've all got secrets, but nobody seems to know where to put them. This long standing issue has plagued system design for agesand still has many broken implementations. While many consider this an application concern, the foundations rest in the design of thesystem. Join Aaron for an in-depth workshop that will cover the following secret management solutions: * Locally encrypted secretswith Ansible Vault * HSM backed local secrets with SOPS * AWS Secrets Manager * Hashicorp Vault Additionally, this workshop willdemonstrate tools for discovering sensitive information checked in to your project.

Session #155 @ LONG’S PEAK - 2ND FLOOR : Creating an Environment for Successful Team byEsther DerbySome teams seem to have some mysterious chemistry from the beginning. Other teams wallow, bicker, and slog their way to uncertainresults. What makes one team soar, and another stumble? It's not just chance. In this session, we'll explore the essential ingredientsthat result in that mysterious "chemistry." For example, we’ll examine the prerequisites for cohesion, and factors that pull teams apart.We'll look at myths and realities of software teams. You'll gain tools to assess your agile team, and insights on how to adapt the

Page 21: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

environment for growing great teams. Learning Outcomes: Identify the essential elements for great teams. Strategies to adapt theenvironment to improve the chance of team success. Identify common pitfalls for agile teams.

10:30 - 12:45 PM : MORNING BREAK

10:45 - 2:15 PM - Sessions

Session #156 @ WESTMINSTER I-II : Java Testing Skills with JUnit 5, Mockito 3, and More byKenneth KousenThe fundamental testing libraries in Java have undergone complete redesigns in the past few years. JUnit 5 redesigns the mostwell-known tool in all of testing. The most popular mocking library, Mockito, has also been rebuilt. This talk will demonstrate the newfeatures, how they are intended to be used, and discuss experimental ideas in the pipeline.

Session #157 @ WESTMINSTER III-IV : Offline First - The Progressive Web by Michael CarducciThe #1 fallacy of distributed computing is "The Network is Reliable." Yet we still build web apps that 100% rely on a server and anetwork connection. What if we could build web apps that work, regardless of connection state? The promise and capabilities ofProgressive Web Apps (PWAs) make this possible, and these capabilities are available today. This session doesn't focus on a specifictechnology or backend technology; while those demonstrations are impressive, they are only useful for a handful of use-cases. Insteadwe look at architecture patterns and techniques that can work with any framework, any backend, and virtually any app.

Session #158 @ LEGACY : Machine Learning: Natural Language Processing by Brian SlettenDocuments contain a lot of information. We'll introduce you to a variety of techniques to extract them.

Session #159 @ LAKEHOUSE : Qualities of a Highly Effective Architect by Venkat SubramaniamMany developers aspire to become architects. Some of us serve currently as architects while the rest of us may hope to become onesome day. We all have worked with architects, some good, and some that could be better. What are the traits of a good architect? Whatare the skills and qualities we should pick to become a very good one? Come to this presentation to learn about things that can makethat journey to be a successful architect a pleasant one.

Session #160 @ STANDLEY I : Consumer Driven Contracts by Chris MakiA real-world look at using Consumer Driven Contracts in practice. How to eliminate a test environment and how to build your serviceswith CDC as a key component.

Session #161 @ STANDLEY II : Docker Workshop - Part II by Raju GandhiDocker! Docker! Docker! Whether its running a piece of software on your local machine, to hermetic deployments of your softwarein production - docker has a place in your workflow. In this 2 part workshop we will get our hands dirty with Docker. We will create,tear down and modify containers, create our own images, see how to set up networking and volumes for containers, see the role ofDockerfiles, and if we have time, attempt to "compose" an application using "docker-compose"

Session #162 @ MEADOWBROOK : Building Serverless Applications in AWS Workshop (continued)by Christopher JuddTired of trying to manage and maintain servers? Never have a large enough operations team? Don’t have a budget for running lots ofserver? Don’t want to pay for servers siting idle? Afraid you might become so popular that you won’t be able to scale fast enough? Don’tworry, it is possible to alleviate these issues by moving to a serverless architecture that utilizes microservices hosted in the cloud. Thistype of architecture can support all different types of clients including web, mobile and IoT. During this hands-on workshop, you will builda serverless application utilizing AWS services such as Lambda, API Gateway, S3 and a datastore.

Session #163 @ COTTON CREEK : Intro. to Microservices on AWS by Chris HansenHow to architect and deploy a microservice architecture on Amazon Web Services using services such as API Gateway andCloudFormation. We'll touch on a broad swath of services in the AWS suite to learn about what they do and how they fit into amicroservice architecture.

Session #164 @ WINDSOR : Software Metrics for Architects by Alexander von ZitzewitzSoftware metrics can be used effectively to judge the maintainability and architectural quality of a code base. Even more importantlythey can be used as “canaries in a coal mine” to warn early about dangerous accumulations of architectural and technical debt.

Session #165 @ WAVERLY : VueJS [1]: A 50,00 foot Vue! Getting started with VueJS by PeterPavlovichVue is a new, powerful framework for building real-world applications. Enterprise ready, with a rich and diverse ecosystem, Vueis the currently ranked as the #2 front end framework and is rapidly gaining on its older brother, ReactJS. Join us for this first in acomprehensive series of session which will take you from blind novitiate to visionary VueJS expert in no time!

Page 22: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #166 @ FLATIRONS - 2ND FLOOR : Secrets Management (continued) by Aaron BedraWe've all got secrets, but nobody seems to know where to put them. This long standing issue has plagued system design for agesand still has many broken implementations. While many consider this an application concern, the foundations rest in the design of thesystem. Join Aaron for an in-depth workshop that will cover the following secret management solutions: * Locally encrypted secretswith Ansible Vault * HSM backed local secrets with SOPS * AWS Secrets Manager * Hashicorp Vault Additionally, this workshop willdemonstrate tools for discovering sensitive information checked in to your project.

Session #167 @ LONG’S PEAK - 2ND FLOOR : Creating an Environment for Successful Team(continued) by Esther DerbySome teams seem to have some mysterious chemistry from the beginning. Other teams wallow, bicker, and slog their way to uncertainresults. What makes one team soar, and another stumble? It's not just chance. In this session, we'll explore the essential ingredientsthat result in that mysterious "chemistry." For example, we’ll examine the prerequisites for cohesion, and factors that pull teams apart.We'll look at myths and realities of software teams. You'll gain tools to assess your agile team, and insights on how to adapt theenvironment for growing great teams. Learning Outcomes: Identify the essential elements for great teams. Strategies to adapt theenvironment to improve the chance of team success. Identify common pitfalls for agile teams.

12:15 - 3:30 PM : OUTDOOR BREAK & LUNCH - WESTMINSTER BALLROOM & SOUTH COURTYARD

1:30 - 5:00 PM - Sessions

Session #168 @ WESTMINSTER I-II : Docker to the Rescue by Chris MakiDocker has revolutionized how we build and deploy applications. While Docker has revolutionized production, it's also had a hugeimpact on developer productivity. Anyone that's used Docker for an extensive period of time will tell you it's a blessing and a curse. Yes,it's portable but networking and other characteristics of Docker can make the most chill developer long for plain old Java. During thissession we'll look at Docker's good points and how to tackle the difficult areas. The end goal - enable anyone on your team to go fromzero to productive in under 20 minutes.

Session #169 @ WESTMINSTER III-IV : Devs Just Want to Have Fun(ctional)! by Raju GandhiFunctional programming (FP) is fast becoming the tool that programmers reach for in this era of multi-core processors. Although thedefinition of "functional" varies quite a bit between implementations, there are a few facets that remain core and true to the paradigm.Facets such as functions as first-class, higher order functions, closures etc. In this session we will explore the meaning of these usingJavaScript as our medium.

Session #170 @ LEGACY : Machine Learning: Deep Learning by Brian SlettenDeep Learning is an evolution of the capabilities of more conventional machine learning to take advantage of the extra data availablefrom Big Data systems. With more data, many of the manual aspects of feature selection and other machine learning steps can bederived automatically. We will highlight many of the main deep learning frameworks and give you a hands on introduction to what ispossible and how you can start to use them.

Session #171 @ LAKEHOUSE : Applying Design Patterns by Venkat SubramaniamLearning about design patterns is not really hard. Using design patterns is also not that hard. But, using the right design pattern for theright problem is not that easy. If instead of looking for a pattern to use if we decide to look for the design force behind a problem it maylead to better solutions. Furthermore, with most mainstream languages supporting lambda expressions and functional style, the patternsappear in so many more elegant ways as well.

Session #172 @ STANDLEY I : Modeling for Architects by Nathaniel SchuttaIn some organizations, architects are dismissed as people that draw box and arrow diagrams - the dreaded whiteboard architect. Whilewe don't want to foster that stereotype, it is important for an architect to be able to construct basic architectural diagrams. An architectmust also be able to separate the wheat from the chaff eliminating those models that don't help tell the story while fully leveraging thosethat do.

Session #173 @ STANDLEY II : Hacking & Hardening Java Web Applications Workshop byChristopher JuddIt seems like everyday there is a new headline about a security breach in a major company’s web application. These breaches causecompanies to lose their credibility, cost them large sums of money, and those accountable undoubtedly lose their jobs. Security requiresyou to be proactive. Keep your employer out of the headlines by learning some key security best practices.

Session #174 @ MEADOWBROOK : How to organize your code for long term success by Alexandervon ZitzewitzMost nontrivial software systems suffer from significant levels of technical and architectural debt. This leads to exponentially increasingcost of change, which is not sustainable for a longer period of time. The single best thing you can do to counter this problem is to givesome love to your architecture by carefully managing and controlling the dependencies among the different elements and componentsof a software system. For that purpose we will introduce a DSL (domain specific language) that can be used to describe and enforcearchitectural blueprints. Moreover we will make an excursion into the topic of legacy software modernization.

Page 23: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #175 @ COTTON CREEK : Productivity for the hopelessly disorganized by Michael CarducciIt happens to us all; there are simply days where it seems impossible to get anything done. This session focuses on techniques and tipsto get into the zone, stay in the zone and to protect your productivity, even in disruptive environments.

Session #176 @ WINDSOR : Micro Shifts, Macro Results by Esther DerbyIt may seem paradoxical that something small leads to something big. Yet this is the case. Big changes can feel like an existential threatand cause major disruption. Tiny changes, working obliquely, evolving towards a more desirable pattern may lack drama, but get youwhere you need to go.

Session #177 @ WAVERLY : VueJS [2]: Gazing deeper: Getting a better Vue of VueJS by PeterPavlovichVue is a new, powerful framework for building real-world applications. Enterprise ready, with a rich and diverse ecosystem, Vue isthe currently ranked as the #2 front end framework and is rapidly gaining on its older brother, ReactJS. Join us for this second in acomprehensive series of session which will take you from blind novitiate to visionary VueJS expert in no time!

Session #178 @ FLATIRONS - 2ND FLOOR : One of Us – the Importance of Community inCulture Change by Laine Vyvyan and Josh SmithIf companies truly want to go FAST, occasionally that requires changing something about the culture of the company. Processes getstale or overly complex, people don’t know why things are the way they are, and everyone wonders at the wisdom of asking too manyquestions.

Session #179 @ LONG’S PEAK - 2ND FLOOR : Think Big, Plan Small: How to Use Continual Planningby Johanna RothmanMany agile teams (and programs) attempt to plan for an entire quarter at a time. Something changes—a better product opportunity, ora product development problem—and the quarter’s plan is not just at risk. That plan is now impossible. Instead of quarterly planning,consider continual planning. Continual planning allows a project or a program to use small deliverables to plan for the near future andreplan often to deliver the most value.

3:00 - 5:15 PM : AFTERNOON BREAK

3:15 - 6:45 PM - Sessions

Session #180 @ WESTMINSTER I-II : Cloud Native Applications by Chris MakiHow do you build a Cloud Native Applications? So many cloud deployments are a lift and shift architecture, what would it look like ifyou started from scratch, only used cloud native technologies? During this session we will compare and contrast two applications, onebuilt using a traditional Java application architecture, the other using a cloud native approach. How does building an app for the cloudchange your architecture, application design, development and testing processes? We’ll look at all this and more.

Session #181 @ WESTMINSTER III-IV : On being an effective developer by Raju GandhiAs developers we not only operate in different contexts, but also often have these different contexts interplay as part of our work.Each of the tools that we use — version control systems like Git (along with collaborative tools like Github/Gitlab), IDE's like Eclipse/IntelliJ, build systems like Gradle, Ci/Cd tooling like Jenkins, IaaC tools like Ansible, the command line — all introduce context. To beeffective developers we need to know when to operate in a certain context, combine or tease apart how these contexts interplay. Canyou improve your release announcements if format your commit messages consistently? You bet! How should your build tool interactwith your version control system? What does naming your files have to do with how you use your IDE?

Session #182 @ LEGACY : Machine Learning: TensorFlow by Brian SlettenThis open source machine learning framework from Google has taken off. Come learn what you can do with it in your own organization.

Session #183 @ LAKEHOUSE : Applying Design Patterns (continued) by Venkat SubramaniamLearning about design patterns is not really hard. Using design patterns is also not that hard. But, using the right design pattern for theright problem is not that easy. If instead of looking for a pattern to use if we decide to look for the design force behind a problem it maylead to better solutions. Furthermore, with most mainstream languages supporting lambda expressions and functional style, the patternsappear in so many more elegant ways as well.

Session #184 @ STANDLEY I : Modeling for Architects (continued) by Nathaniel SchuttaIn some organizations, architects are dismissed as people that draw box and arrow diagrams - the dreaded whiteboard architect. Whilewe don't want to foster that stereotype, it is important for an architect to be able to construct basic architectural diagrams. An architectmust also be able to separate the wheat from the chaff eliminating those models that don't help tell the story while fully leveraging thosethat do.

Page 24: July 16 - 19, 2019 Westin Westminster ÜberConf Web Apps John Riviello and Christopher Lorenzo Evolving to Cloud Native Nathaniel Schutta ... Westin Westminster July 16 - 19, 2019

ÜberConf-Session Schedule-

(event schedule as of July 18, 2019)

Session #185 @ STANDLEY II : Hacking & Hardening Java Web Applications Workshop(continued) by Christopher JuddIt seems like everyday there is a new headline about a security breach in a major company’s web application. These breaches causecompanies to lose their credibility, cost them large sums of money, and those accountable undoubtedly lose their jobs. Security requiresyou to be proactive. Keep your employer out of the headlines by learning some key security best practices.

Session #186 @ MEADOWBROOK : How to organize your code for long term success (continued) byAlexander von ZitzewitzMost nontrivial software systems suffer from significant levels of technical and architectural debt. This leads to exponentially increasingcost of change, which is not sustainable for a longer period of time. The single best thing you can do to counter this problem is to givesome love to your architecture by carefully managing and controlling the dependencies among the different elements and componentsof a software system. For that purpose we will introduce a DSL (domain specific language) that can be used to describe and enforcearchitectural blueprints. Moreover we will make an excursion into the topic of legacy software modernization.

Session #187 @ COTTON CREEK : VDD: Value Driven Development - 10 Golden Rules forincremental Greatness by Michael CarducciOn the NFJS tour, there are questions that seem to come up again and again. One common example is "How do we determine whichnew tools and technologies we should focus our energy on learning?" another is "How do we stop management from forcing us tocut corners on every release so we can create better and more maintainable code?" which, after awhile becomes "How can we bestconvince management we need to rewrite the business application?" There is a single meta-answer to all these questions and manyothers.

Session #188 @ WINDSOR : Managing Complexity by Esther DerbyEvery organization—whether it is 50, or 50,000 people—faces three broad sets of concerns. How it fits in the market, how it servescustomers, how it makes money, what sort of place it wants to be. Leaders in the organization have to figure out what initiatives toinvest in, and how to sequence and order work that flows into teams. They have to support teams, so they can do good work. Andteams need to figure out the details of their work and how best to collaborate.

Session #189 @ WAVERLY : Reactivity Simplified: Stellar Web Applications with VueJS, Vuex andMeteor by Peter PavlovichMeteor is an open-source, all-JavaScript platform for building reactive, top-quality web apps in a fraction of the time. Join us to see howto use VueJS along with this amazing full-stack Javascript framework to build realtime, reactive applications for both the web and formobile platforms.

Session #190 @ FLATIRONS - 2ND FLOOR : But I Don't WANNA - Protecting Your Resourcesas a Skilled Knowledge Worker by Laine Vyvyan and Josh SmithWe work in IT – and while we WORK with computers, we do not always FUNCTION like computers where inputs consistently make thesame outputs. Our jobs are mostly theory and design and strategy, with some good old fashioned implementation thrown in – and asskilled knowledge workers, we function best when we respect that our mental and emotional resources matter.

Session #191 @ LONG’S PEAK - 2ND FLOOR : Agile Program Management: Measurements to SeeValue and Delivery by Johanna RothmanToo many programs (collections of projects with one business deliverable) try to use team measurement to extrapolate to the program’sstatus. That doesn’t work. Teams have personal status, and you can’t add them together to understand the program state. Or, yourmanagement wants to know when you will be done, and every team uses relative estimation and you can’t understand how to “add”them all together. (You can’t.) Instead of trying to “scale” measurements, measure what you want to see and what you don’t want tosee. You can use a handful of program measurements that help everyone understand where the program is and where it’s headed. Inthis talk, Johanna will share program measurements—qualitative and quantitative—that show everyone the program state, and maybewhen the program could be done.

4:45 - 7:00 PM : CONCLUSION OF UBERCONF X - THANK YOU FOR ATTENDING!