Talks
Events

GOTO Chicago 2020

Talks

Practical End-to-End Container Security at Scale

Deploying containers using Kubernetes has become the new defacto deployment standard most companies are turning towards. Developing with containers is very different from traditional development practices and so is securing these containers & depl...

Yashvier Kosaraju

Security

Design Compact Deep Learning Models: Small is the New Big

The emergence of deep neural networks (DNNs) in recent years has enabled ground-breaking abilities and applications for modern intelligent systems. State-of-the-art DNNs have been found to achieve high accuracy on tasks in computer vision and natu...

Davis Sawyer

You Really Don't Need All That JavaScript, I Promise

JavaScript is your behavior layer; the way to add interactivity to your sites, to provide a slick and delightful user experience, to make everything fast and easy and clean. But at some point everything changed: the tail started to wag the dog ins...

Stuart Langridge

JavaScript

Observability for Data Pipelines: Monitoring, Alerting & Tracing Lineage

Data-intensive applications, with many layers of transformations and movement from different data sources, can often be challenging to maintain even after they are initially built and validated. To truly expand and develop a code base, developers ...

Jiaqi Liu

I Can Sell You Observability, But You Can't Buy It

Observability is practically a requirement to build a resilient, decentralized software application. In response to this, your options are practically limitless – and these options can make your head spin. How do you choose? What should you choose...

Austin Parker

Beyond Microservices: Streams, State and Scalability

Microservices have been a popular architecture choice for at least 5 years by now. Over these years we've adopted microservices architectures to ever growing set of use-cases and different development and deployment strategies. Lessons were learne...

Gwen Shapira

Microservices

How to Hack OAuth

OAuth is the foundation of most of modern online security, used everywhere from signing in to mobile apps, to protecting your bank accounts. Despite its ubiquity, it is still often difficult to implement safely and securely, especially in today's ...

Aaron Parecki

Security

Why Are Distributed Systems so Hard?

Distributed systems are known for being notoriously difficult to wrangle. But why? This talk will cover a brief history of distributed computing, clear up some common myths about the CAP theorem, dig into why network partitions are inevitable and...

Denise Yu

Microservices Out In the Wild

Microservices are no longer just for API developers. Fitch Solutions has been building API microservices for years while maintaining a monolithic front-end application architecture. In this talk, Rashid will describe how to successfully migrate to...

Matt Jones, Rashid Mohammad, Derek Ferguson

Microservices

People First Leadership

We must never devalue people in the process of delivering a technical solution. This requires all roles on a team to practice the core skills and techniques to lead without authority. This talk will highlight a wide range of topics including: the...

Kate Wardin

Bootiful GraphQL with Kotlin

GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data. In the GraphQL world, the schema plays a central role as it defines all the fields and types that can be queried by the clients. This makes Gr...

Dariusz Kuc

GraphQL

Refactoring Trust on Your Team

Trust is at the core of successful software teams. It is the basis of retention and defines how your team sees you. But what is trust? How do you know when it's missing? And how do you fix it when it's gone? You’ll discuss the elements of trus...

Rebecca Miller-Webster

Adopt GraphQL without Writing any Backend Code

GraphQL is taking the frontend world by storm. We all heard about the benefits of using it. But sometimes it might be hard to adopt GraphQL, especially if we have no access or control over the backend. In this talk, Uri will demonstrate 3 differe...

Uri Goldshtein

GraphQL

High Velocity Development of Microservices

Engineering teams spend significant effort on creating automated regression tests, and still cannot often go beyond “happy path” testing. Consumer technology companies therefore invested in testing in production. Unfortunately, these approaches do...

Rahul Lahiri, Venky Ganti

Microservices

Batching vs. Streaming - Scale & Process Millions of Measurements a Second

The John Deere data platform receives and processes millions of sensor measurements per second from machines around the world. In this talk, Adam will discuss the various technologies and architectures John Deere has implemented and how they had ...

Adam Butler

John Deere Operations Center Development Journey & Ecosystems

John Deere customers use Operations Center to be able to setup, plan, monitor and analyze the machines and agronomic data worldwide. In this talk, Niket will share how they support multiple user experience efficiently utilizing ECS/Fargate, EB/EC...

Niket Patel

Advanced Feature Flagging: It's All About The Data

Feature flags deliver the control needed to decouple deploy from release but can break traditional monitoring and KPIs. The good news is that teams are using them to "kill the release night" by moving from big-bang releases to gradual releases dur...

Dave Karow

Keys to Building Machine Learning Systems

In this session, you learn engineering techniques for building machine learning systems. Machine learning methods are capable of delivering immense business value. But machine learning is still not leveraged in many organizations. Engineering chal...

Garrett Smith

No Return: Beyond Transactions in Code and Life

At the root of catastrophes in both code and life lies a pervasive fallacy: the attempt to model processes as if they were transactions. Join Avdi for an honest, sometimes raw retrospective on two decades of building a software development career...

Avdi Grimm

Kotlin Flows and Channels for Android

Asynchronous programming is tricky. As new tools to approach concurrency emerge, it’s easy to become overwhelmed. However, the engineers at JetBrains took a pragmatic approach by making asynchronous coding simple yet purposeful. Built in the corou...

Ryan Pierce

Android

COVID-19: Data Science & Expertise

COVID has upended the world, including data science in the last few months. Scores of data scientists are busy building models to predict aspects of COVID. In this talk, Rajiv shares two projects for predicting COVID cases at the county level in ...

Rajiv Shah

Investigation and Creation of Software

As software developers we operate in pockets of reality with their own rules. From our language system to frameworks to the software we interface with, our work is first that of the scientist: how does the world work? We find causes and effects. ...

Jessica Kerr

Ray: A System for Distributed Applications

Ray (https://ray.io) is a framework for scaling Python applications from single machines to large clusters. It is used in several ML/AI systems and production deployments. Dean will explain common problems in scalable, distributed computing, part...

Dean Wampler

Git from the Ground Up

Git is notorious for its complex and opaque commands and high learning curve. In this talk, we'll unlock git by exploring what happens under the hood in its key pathways. Attendees will leave this talk with an understanding of git internals and kn...

Safia Abdalla

Practical Quantum Computing with D-Wave

An introduction to D-Wave Leap 2. Alexander Condello - Manager, Applications Development Technology and Tools at D-Wave Systems

Alexander Condello

Building an Accessibility Culture

It can be a daunting task to begin building a culture of accessibility, but there’s no time like the present to get started. The question is— what to do first? In this session, we’ll cover the incremental changes we’re making at Optimizely to ens...

Ayesha Mazumdar

War is Peace, Freedom is Slavery, Ignorance is Strength, Scrum is Agile

A few years ago, the death of agile was a meme. Agile was (and is still) being supplanted by "Dark Agile", an Agile in name only, with few of the benefits of the real thing. In a way, things have gotten worse. Agile has arisen as a zombie, eating ...

Allen Holub

The Asynchronous Enterprise

The one question I'm asked more than any other when talking about working at GitLab is: wait, you don't have any offices? That is often followed by a confused look or the direct question: How? Writing down decisions, asynchronous communication, m...

Brendan O'Leary

#DigitalNudge - The Hidden Forces that Shape our Digital Decisions

35 thousand — that's the average number of decisions a person makes a day. Almost one decision every two seconds. Have you ever wondered how many of these are "digital decisions"? Digital decisions are the ones we make using technology devices li...

Fabio Pereira

A Quantum Computing Lab Tour at D-Wave

Ever wondered what a quantum computer actually looks like? And why it is they need to run in temperatures below those found in interstellar space? And what is a QPU anyway? To find out, join us in a guided tour with Murray Thom through his labs ...

Murray Thom

How to Lead through Turbulence w/ Compassion & Confidence

We can't always know what comes next. A clear blue sky can turn suddenly stormy and turbulent, knocking everyone off balance. Right now, our world feels unpredictable and uncertain to some. In trying times people fall back on their instincts of fi...

Sara Caldwell, Angela Dugan

Visualizing Cloud Systems

Cloud-native systems increasingly integrate services, or functions. Microservices and serverless patterns produce many small parts. See how effective visualization matters in solution design and implementation. Understand emergent visualization by...

Lynn Langit

2FA in 2020 and Beyond

This talk will explore the modern landscape of 2FA. With a data driven analysis of the tradeoffs between different types of factors, we'll dive into a detailed comparison of cryptographic security strength and UX for methods like SMS, Soft Tokens,...

Kelley Robinson

SaaS Deep Dive: Designing and Building Multi-Tenant Solutions

Creating a multi-tenant software-as-a-service (SaaS) application requires developers and architects to take new approaches to how they design, build, operate, and deploy their solutions. SaaS touches every dimension of your design, including how y...

Tod Golding

Prioritizing Technical Debt as if Time and Money Matters

Many codebases contain code that is overly complicated, hard to understand and hence expensive to change and evolve. Prioritizing technical debt is a hard problem as modern systems might have millions of lines of code and multiple development team...

Adam Tornhill

Next-Generation Programming: Rust & Elm

Richard Feldman - Author of “Elm in Action” and THE Elm master

Richard Feldman

Elm

Rust

Maximizing Java Application Performance with GraalVM

GraalVM is a high-performance virtual machine offering new optimizations for individual languages and seamless interoperability for polyglot applications. For Java, GraalVM lets you optimize different performance aspects including a choice between...

Oleg Šelajev

GraalVM

Java

Modern Continuous Delivery

The first product built specifically for continuous delivery pipelines came out over 10 years ago. The Continuous Delivery book came out 9 years ago. In the time since we’ve seen massive changes in the types of software we’re building, testing and...

Ken Mugrage

DevOps

Moving Fast at Scale

Most companies slow down as they get larger, but some actually get faster. Based on the speaker's experiences leading high-performing engineering teams at Google, eBay, and Stitch Fix, this session will outline the culture, the organization, and t...

Randy Shoup

Racing Robocars

For a century the car industry has used racing to drive innovation. But with self-driving cars, it's not happening. Companies are more concerned about embarrassing and expensive failures than speed and nimbleness, so much so that the biggest risk ...

Chris Anderson

Application Security at High Velocity

Finding and addressing vulnerabilities immediately is key to accelerating development and delivery of competitive applications. This step-by-step view through the developers’ workflow will show exactly where application security can be embedded fo...

Francis Potter

Security

HTML: How to Make Loveliness

You’re a PHP ninja. You’re a React god. You’re a magician with Sketch. But if your code is assembling HTML to get delivered to a user’s browser, how much do you know about HTML’s semantics? Choosing the correct HTML elements rather than vomiting a...

Bruce Lawson