Talks
Events

GOTO Chicago 2019

Talks

Vue and You

We'll discuss the Vue framework and why some organizations are choosing it over other popular frameworks. Including some history of javascript and the pain points of the early days, we will take a journey to this moment where another framework is ...

Matt Danforth

JavaScript

Vue.js

All The World’s A Staging Server

I have sad news - staging is a lie and will never be identical to production, because production is unknowable. Trying to replicate it is often prohibitively expensive. But I also have good news - production can contain multitudes, including feat...

Heidi Waterhouse

Software Architecture

Code + AI: Will Robots Take Our Coding Jobs? ML Applied to Programming

Machine learning is permeating every facet of our lives, from learning our preferences to self-driving cars, but what happens when you apply neural networks to code? How do you even view code as data? The key ideas are easy to summarize and fun to...

Stephen Magill

Machine Learning

Better Spotify Playlists through Music Theory & Discrete Optimization

I am a Spotify addict, former DJ, amateur musician, and professional software engineer. I take special pride in making expertly-curated playlists for myself and friends. It takes a lot of time and energy to set the right mood and tone, and even mo...

Cedric Hurst

Deliver Results, Not Just Releases: Control & Observability in CD

How do companies like Netflix, LinkedIn, and booking.com crush it year after year? Yes, they release early and often. But they also build control and observability into their CD pipeline to turn releases into results. Progressive delivery and the...

Dave Karow

DevOps

Observability, Distributed Tracing & the Complex World

In a world of increasingly complex architectures and environments, the concept of observability has emerged to provide tools to watch over the apps and architectures. With new focus on monitoring and alerts, tools are presenting levels of informat...

Dave McAllister

Kubernetes

Microservices

Getting Started with Quantum Programming

A Quantum Computer is a new type of computer that uses quantum mechanics to run certain algorithms exponentially faster than their classical equivalents. These quantum algorithms typically use phenomena such as superposition, the ability for a qua...

Guen Prawiroatmodjo

Quantum Computing

Role of App Integration in Cloud Native & Microservices Landscape

Integration of APIs, services, data, and systems have long been the most challenging yet most essential requirement in software application development. These disparate applications were integrated using point to point style, and later with the ES...

Kasun Indrasiri

Microservices

Welcome to Serverless 2.0

This talk from the creator of OpenFaaS and CNCF Serverless workgroup member Alex Ellis explores what hype actually means for our industry and why it matters so much for serverless right now. You’ll learn why ThoughtWorks says multi-cloud portabili...

Alex Ellis

Serverless

Securing the JVM

Consider a Java application in a private banking system. A new network administrator is hired, and while going around, he notices that the app is making network calls to an unknown external endpoint. After some investigation, it’s found that this ...

Nicolas Frankel

Java

Security

Not Just Events: Developing Asynchronous Microservices

The microservice architecture functionally decomposes an application into a set of services. Each service has its own private database that’s only accessible indirectly through the services API. Consequently, implementing queries and transactions ...

Chris Richardson

CQRS

Microservices

Depression and Burnout: the Hardest Refactor I’ve ever done

When I relocated to San Francisco in 2011, I didn't know much about mental health. My solid background in computer science didn't prepare me to fend off the depression that unfortunately affected both my personal and professional life for several ...

Jérôme Petazzoni

ReasonML: React as a Language and what the Future looks like

ReactJS took the world by storm just a few years ago, but do you know what the original creator of React's intent was? You'll find out :) Reason is a programming language created by the creator of ReactJS for developers to build bullet-proof apps ...

Peter Piekarczyk

Fight, Flight, or Freeze — Releasing Organizational Trauma

When humans are faced with a traumatic experience, our brains kick in with survival mechanisms. These mechanisms are the familiar fight or flight response, but can also include the freeze response - which occurs when we are terrified or feel that ...

Matt Stratton

Disrupting QA – Emerging Trends in Code Quality Automation

Historically, static analysis has been widely used to identify defined sets of security issues via overnight runs across entire code bases. A recent trend has been the evolution of static analysis methods and tools to: 1. become much more scalabl...

Stephen Magill

Testing

Raising a Coder in an Educational Maelstrom: Advice & Lessons Learned

Basic computer skills are a must, but knowledge of computer programming has become even more in demand. To get children involved with technology at an early age will become more and more important in a very near future. When children learn how to ...

Seth Thomson

What Does THIS Button Do? Serverless and IoT

Serverless is cool. IoT is cool. Put them together and you have a whole mess of cool. In this session we are going to explore the coolness of IoT and serverless working together by building an application that utilizes a simple IoT button with a s...

Eric Johnson

Serverless

Achieving Functional Programming in Java

For years, the conventional wisdom around attempting pure functional programming in Java has been "don't", and for plenty of good reasons: lambdas weren't supported until the eighth major release of the language specification, creating value types...

John Napier

Functional Programming

Java

Accelerating Machine Learning DevOps with Kubeflow

Kubeflow is an exciting new technology for enabling data scientists and software engineers to move their models smoothly from development through training and into Production with the same ease that we have come to expect from DevOps technologies ...

Derek Ferguson

DevOps

Kubernetes

Machine Learning

Server-side Kotlin with Coroutines

Kotlin was designed as a general-purpose programming language and with coroutines writing server-side code is a easy as never before on JVM. We'll dissect scalability and reliability problems of a traditional thread-based stacks and discuss the pr...

Roman Elizarov

Kotlin

Fueling the Quantum Application Era with the Cloud

In the past, quantum computing was largely reserved for researchers, physicists, and scientists with direct access to physical quantum computing systems. But the game has changed, thanks to the cloud. Barriers to quantum computing are coming down ...

Murray Thom

Cloud

Quantum Computing

Supersonic, Subatomic Eclipse MicroProfile

What if there was a way you could take advantage of the latest microservice architectures by leveraging the developers and skills you already have? What if you could do that with blazingly fast startup and crazy low memory consumption? In this se...

Scott M Stark

Microservices

Quarkus

Deprecating Simplicity 3.0

When engineering teams take on a new project, they often optimize for performance, availability, or fault tolerance. More experienced teams can optimize for these properties simultaneously. Now add an additional property: feature velocity. Organiz...

Casey Rosenthal

DevOps

Embracing the Future in a Multi-Platform World: A Kotlin Story

So you know Kotlin, but you aren’t sure you’re utilizing it to its full potential across platforms? If you’re not sure about what Coroutines really have to offer or if you want to share your business logic between Android and other platforms, thi...

Sean McQuillan

Android

Kotlin

The Language of Programming

Humans use language to communicate with one another; humans use programming to communicate with machines (or do they?). In this talk we’ll look at the practice and culture of programming from the perspective of linguistics, the scientific study of...

Anjana Vakil

The Soul of Erlang and Elixir

Whether you're developing a small web site or a large-scale distributed system, Erlang and Elixir are great tools for building server-side systems. Both languages can help you start quickly and deal with highly complex problems at a large scale. ...

Saša Jurić

Elixir

Erlang

What Technical Leads Can Learn from Great General Managers

Being a member of a rapidly growing team can feel both exhilarating and overwhelming. Technical decisions become more complicated alongside the growth of the team. Many of us are also thrust into the spotlight of leadership and asked to perform ex...

Courtney Hemphill

Why Open Source Firmware is Important

This talk will dive into some of the problems of running servers at scale with data from surveys and how open source firmware can solve some of those problems. Why is it important for security and root of trust? It will also cover the state of ope...

Jessie Frazelle

Open Source

Security

DevSecOps, Containers & Shift-Left, are those just Buzzwords?

Are you thinking about using Containers? Why should I worry about security? Why is everything Devinsert something hereOps? Isn’t shift left just a fancy way of saying ‘do it earlier’? Let's talk about real life experiences and what are some of the...

Juan Alvarez, James Szubryt

DevOps

Security

Introduction to Quantum Computing

Certain types of problems can take billions of years to solve on our current conventional computers. Quantum computers, however, can solve these types of problems in just seconds. Because of their ‘quantum power’, quantum computers have the potent...

Jessica Pointing

Quantum Computing

Using Kubernetes for Machine Learning Frameworks

Kubernetes provides isolation, auto-scaling, load balancing, flexibility and GPU support. These features are critical to run computationally and data intensive and hard to parallelize machine learning models. Declarative syntax of Kubernetes deplo...

Arun Gupta

Kubernetes

Machine Learning

Adopting gRPC: Overcoming Team and Technical Hurdles

gRPC and Protocol Buffers are becoming industry standards for exchanging data across systems and stitching together micro-services to build scalable applications. But there are barriers for new teams that want to adopt gRPC, such as minimal toolin...

Josh Humphries

Kubernetes

Microservices

gRPC

Journeys To Cloud Native Architecture: Sun, Sea & Emergencies

Many businesses want to embrace modern business practices by delivering projects quickly and scaling faster. For this, adopting a Cloud Native mindset and architecture makes sense but is not a simple magic carpet ride. In this talk, Nicki Watt fr...

Nicki Watt

Microservices

Troubleshooting & Debugging Microservices in Kubernetes

Debugging applications in production is like being the detective in a crime movie. Especially with microservices. Especially with containers. Especially in the cloud. Trying to see what’s going on in a production deployment at scale is impossible ...

Robert Kubis, Ray Tsang

Kubernetes

Microservices

Dynamic Reteaming at Fast-Growing Companies

Team change is inevitable, especially when your company is hiring like crazy and doubling in size. Your teams might grow and split - like mitosis. Twenty people might arrive in one day. What feels like tectonic shifts happen as you morph structura...

Heidi Helfand

The Promise and Limitations of AI

Almost everyone who talks about Artificial Intelligence, nowadays, means training multi-level neural nets on big data. Developing and using those patterns is a lot like what our right brain hemispheres do; it enables AI's to react quickly and – ve...

Doug Lenat

Artificial Intelligence

Machine Learning

AppSec: From the OWASP Top Ten(s) to the OWASP ASVS

Some people are under the misconception that if they follow the OWASP top 10 that they will have secure web applications. But in reality the OWASP Top Ten (and other top ten lists) are just the bare minimum that at best provide entry-level general...

Jim Manico

Security

It Really is Easier to Ask for Forgiveness (than Permission)

It's a Pythonic maxim that "it's easier to ask for forgiveness than permission" and Pythonic code is written with a strong preference for attempting an operation and raising exceptions as needed. This contrasts with many languages which take a "lo...

Naomi Ceder

Python

Without Data, you're just another Person with Opinions

In this talk, we'll talk about data-driven DevOps and how the cross-cutting metrics from dev, QA, and ops can be integrated to provide you and the teams you support with an insight into the status of your engineering organization. As the DevOps E...

Baruch Sadogursky

DevOps

Discovering RESTful Web Microservices: A Traveler's Guide

Navigating the landscape of scalable, resilient Microservices can be tricky. While each service fulfills a different purpose, there are a handful of shared properties of microservices. Knowing what these properties are and how to implement them is...

Mike Amundsen

Microservices

Re-engineering Inclusion

For years now, companies across the tech industry have been releasing dismal diversity reports. We started with the basics: implementing unconscious bias training, hiring heads of Diversity & Inclusion, and pouring funding into Employee Resource G...

Jill Wetzler

Frugal Innovation

Even when located in one of the largest cities on the continent of Africa, we still face many challenges when building software: lack of electricity, little to no connectivity particularly in rural areas, cash-based transactions, lack of an addres...

Betty Enyonam Kumahor

Data-Driven Engineering

Big Data is changing nearly every aspect of our lives. As a software engineer, there’s a good chance you’re already leveraging data to help your end users do their jobs more efficiently, but have you considered how it might help you do your own jo...

Andy Cirillo

Kubernetes Operability Tooling

Artisanally hand-crafting our own container hosting solutions can be a fun learning experience, but for repeatable production use, we want to deploy and manage Kubernetes in a reproducible fashion. Using Azure Kubernetes Service (AKS) with open s...

Bridget Kromhout

Kubernetes

Why You Need a Software Delivery Machine

Many teams have a clear vision of how they want their software delivery to work. For example, what checks and staging deployments should occur on commits; what approval steps are required before promotion to production; what code needs to be inclu...

Rod Johnson

Serverless is the Abstraction We Deserve

Monolithic applications are an anti-pattern, especially when moving to cloud scale deployments. For years, microservices adoption has been tied to containers and more recently to Kubernetes. But moving from pure software development to learning Ku...

Jesse Butler

Kubernetes

Microservices

Serverless

Keep it Clean: Why Bad Data Ruins Projects and How to Fix it

The Internet is full of examples of how to train models. But the reality is that industrial projects spend the majority of the time working with data. The largest improvements in performance can often be found through improving the underlying data...

Phil Winder

Machine Learning

Intro to Empirical Software Engineering: What We Know We Don't Know

There are many things in software we believe are true but very little we know. Maybe testing reduces bugs, or maybe it's just superstition. If we want to improve our craft, we need a way to distinguish fact from fallacy. We need to look for eviden...

Hillel Wayne

Reactive Spring

Microservices and big data increasingly confront us with the limitations of traditional input/output. In traditional IO, work that is IO-bound dominates threads. This wouldn't be such a big deal if we could add more threads cheaply, but threads ar...

Josh Long

Microservices

Spring

Principles for Developing More Secure Systems

Security can be scary – regardless if you've been coding for a few months, years or decades. In this talk, we'll walk you through a useful set of tools for thinking about system security, regardless of what kind of system you're building. While y...

Eleanor Saitta

Security

Kotlin: Dissecting the stdlib

One of the best places to learn idiomatic Kotlin is the stdlib. Now I don’t mean just using the stdlib but going to the source, literally. In this session, we’ll look at some of the methods and tools inside the stdlib and dig into how they’re wri...

Huyen Tue Dao

Functional Programming

Kotlin

On the Road to Artificial General Intelligence

Danny Lange will demonstrate why a game engine is the perfect virtual biodome for AI’s evolution. Attendees will recognize how the scale and speed of simulations is changing the game of AI while learning about new developments in reinforcement lea...

Danny Lange

Artificial Intelligence

Machine Learning

A Case For Outside-In Design

For the past few decades, one of the most common approaches to software design has been to first focus on the domain model (application layer), then persistence (data layer) and finally the user interface (presentation layer). But what are the pro...

Sandro Mancuso

DDD

Microservices

Software Architecture

How Business Is The Key To Making The World A Happier Place

We can all agree that we want to live in a happy world. We can make slow change by teaching people the tools necessary to lead happier lives, or we can make a bigger impact by also leveraging businesses to make the world a happier place. Evan Sut...

Evan Sutter

Java Current and Future

Java has changed more in the last year than in the previous five years. Find out more about these changes and what they mean for you! This session will cover the changes to the Java Release cadence and licensing, choices and options available to y...

Mikael Vidstedt, Georges Saab

Java

Data Driven Observability & Incident Response

The focus of DevOps is to streamline processes across the board. One way to produce a better experience across teams is to inject observability, leading to a proactive approach toward development and a fully visible situation when incidents occur....

Matt Stratton, PJ Hagerty

Going Serverless with VueJS

With the rise of serverless architectures, developers have the power to do more with less. Rather than spending time and energy deploying and managing a server, they can now focus on the business logic driving their applications. Serverless functi...

Divya Sasidharan

Serverless

Vue.js

CI/CD is just the Beginning: Optimize Value Creation with Flow Framework

DevOps practices, like CI/CD, have been key for speeding up software delivery from code commit to code deploy. Yet at large organizations, development work is still disconnected from the business needs and teams are struggling to accommodate decad...

Nicole Bryan

DevOps