Adrian Hornsby, Developer Advocate at AWS
We have traditionally built robust software systems by trying to avoid mistakes and by dodging failures when they occur in production or by testing parts of the system in isolation from one another. Modern methods and techniques take a very different approach based on resiliency, which promotes embracing failure instead of trying to avoid it. Resilient architectures enhance observability, leverage well-known patterns such as graceful degradation, timeouts and circuit breakers. In this session, will review the most useful patterns for building resilient software systems and especially show the audience how they can benefit from the patterns.
Half French/English living in Finland for 15 years, climber, musician, amateur photograph, all this wrapped together in a Technical Evangelist working for AWS and passionate about everything cloud. Adrian has over 15 years of experience in the IT industry, having worked as a software and system engineer, backend, web and mobile developer and part of DevOps teams where his focus has been on cloud infrastructure and site reliability, writing application software, deploying servers and managing large-scale architectures. Today, Adrian tends to get super excited with AI, IoT and everything Serverless.
Emily Freeman, Azure Advocate for Microsoft
Scaling systems is hard, but we’re developers — that’s kind of our thing. Scaling people? Well, that’s significantly harder. Humans are complicated. Broadly speaking, companies have three stages of development: infancy, those awkward teenage years and — if they survive the trials of adolescence — adulthood. An infant startup is so drastically different from its adult incarnation that they can be considered different companies. Each will have a unique mission and culture. Scaling isn’t just about making what you have bigger. An ant can’t be scaled to the size of an elephant. Because the internal structure is fundamentally different. Instead, companies have to evolve. But companies aren’t living, breathing organisms. They’re collections of people — families, tribes and civilizations. So how do you scale a team of two to twenty? The answer starts over 2,000 years ago in Sparta. This talk will focus on three distinct military organizations: Spartans, Mongols and Romans. Sparta’s standing army numbered 10,000 whereas Rome’s peaked at half a million. We’ll look at the structure of each military and apply the lessons learned to our development teams and organizations. Options.
Manfred Steyer, Angular College
Architectures for huge Angular based Enterprise Applications: npm Packages, Monorepos and Microservices
Nowadays, we build large enterprise applications with Angular. But how to best structure such projects to ensure long-term maintainability and reusability? This session provides multiple answers! We explore how to split large projects into individually reusable npm packages and discuss the monorepo approach as an alternative. Then, we look at Micro Apps and different strategies to implement this idea with Angular. Implementation options, advantages and disadvantages are investigated. By the end you will know the different options and which approach works best in your current project.
Heidi Waterhouse, Developer Advocate at LaunchDarkly
Lots of us aren’t developing tidy, discrete features that are easy to manage. How do you plan to move from a tangle of interconnected features to something that you can test and deploy each part of? How do you manage the combinatorial complexity of individual feature testing? Join us for an overview on the conceptual basis of designing for feature management. It sounds simple to say that we will build one feature at a time, give it an API interface and allow it to connect with other features and microservices. The implementation is anything but simple. This talk explores how you can start migrating your existing features and services to a more modular, testable, and resilient system. Since containers are not state-aware, how do you make changes to their presentation without needing to rebuild them entirely? With feature flags, your container can be stable and your presentation dynamic. How can you test a distributed architecture on your laptop? How can you simulate partial outages? This talk is going to touch on some of the best practices that you can use to bring new life to your brown fields.
With over 40 conferences and three continents of experience, Heidi is an excellent resource for technical talks on a variety of topics. She’s also flexible and adaptable enough that she always has a spare talk if you have a crisis on short notice. Her talks are thoughtful, witty, and broadly applicable. She’s spoken at language-specific conferences (RubyConf, PyDX), industry conferences (Write the Docs, SpringOne Platform, DevOps Days) and generalist technology conferences (OpenSource Bridge, Abstractions).
Matheus Fernandes, SVP Engineer at Zeit
In 2017, Matheus spoke to 1500 developers in Brazil about how to develop their web applications in a way that they would scale independently, cheaply and reliably, with the help of microservices. Now, after almost 2 years of thinking and working on scaling web applications at ZEIT, he is ready to talk about how to Compose the Cloud, again – with a plot twist.
Before writing Kap with friends he met online while developing Hyper, he spent 3 and a half years in college planning how he would leave to follow his dream of living and working in San Francisco. Now, he's SVP Engineering at ZEIT, leading their fast-growing team and global infrastructure at scale.
Mathieu Henri, Creative Coder at Microsoft
Our daily work might seem rigid at times. But there is always room to take a step back and embrace a creative approach where you don't make mistakes. Exploring techniques outside of our domain, having "happy accidents", feels liberating and sharpens our skills. This is the story of how teaching, making audio-visual art and delivering enterprise projects for +100M users collide to bring a whole new perspective to solve problems, and how this serendipitous approach can work for you too.
Carmen Andoh, Program Manager at Google
Over the last 2 decades, the world has embraced open source as a winning strategy. It has revolutionized the way we build software and digitized markets, and has even enabled the next big movement: Cloud. But we in the open source ecosystem are going through an existential crisis of sorts. Cloud Providers are coming in and offering managed services that compete with our monetization strategies. It feels like the ecosystem is consolidating. How can navigate these changes as developers and companies? Let's explore this rapidly shifting landscape together.
Carmen is a program manager at Google. She was the first scholarship recipient for Gophercon in 2015, where she was first introduced to Go, and hasn't looked back. Ask her about her past lives as a Behavioral Analyst for Autism Spectrum Disorders, Teach for America, and having personally visited over 1000 high schools in the states of NJ, TX, NM, and CO, and all 5 boroughs of NYC.
Ulf Adams, Software Engineer at Google
Using a build system to build all parts of your software stack in a single polyglot build comes with a number of unique advantages: 1) it supports higher-level integration tests, 2) it improves static and dynamic code analysis capabilities, 3) it makes it easier to embed security into the software development life cycle, and 4) it improves collaboration and a sense of shared responsibility. Research has shown that these are key capabilities for improved business outcomes. Here's how Google does it, and how you can, too.
Rainer Stropek, CEO at Software Architects
Rainer Stropek is co-founder and CEO of the company Software Architects and has been serving this role since 2008. At Software Architects Rainer and his team are developing the award-winning SaaS time tracking solution “time cockpit”. Previously, Rainer founded and led two IT consulting firms that worked in the area of developing software solution based on the Microsoft technology stack. Rainer is recognized as an expert concerning .NET development, software architecture and databases. He has written numerous books and articles on C#, database development, Microsoft Azure, XAML, and web development. Additionally he regularly speaks at conferences, workshops and trainings in Europe and the US. In 2010 Rainer has become one of the first MVPs for the Microsoft Windows Azure platform. In 2015, Rainer also became a Microsoft Regional Director. 2016, Rainer also got the MVP award for Visual Studio and Developer Technologies. Rainer graduated the Higher Technical School Leonding (AT) for MIS with honors and holds a BSc (Hons) Computer Studies of the University of Derby (UK).
Chris Thalinger, Staff Software Engineer at Twitter
Running Twitter services on Graal has been very successful and saved Twitter a lot of money on datacenter cost. But we would like to run more efficient to reduce cost even more. I mean, who doesn’t? In order to do this we are using our Machine Learning framework called Autotune to tune Graal inlining parameters. This talk will show how much performance improvement we got by autotuning Graal.
Chris Thalinger is a software engineer working on Java Virtual Machines for over 14 years. His main expertise is in compiler technology with Just-In-Time compilation in particular. Initially being involved with the CACAO and GNU Classpath projects, the focus shifted to OpenJDK as soon as Sun made the JDK open-source. Ever since Chris has worked on the HotSpot JVM at Sun, Oracle and now at Twitter.
Wolfgang Hennerbichler, Site Reliability Engineer at GitHub
Site Reliabilty Engineering (SRE) is a pessimistic job. While many developers write their code in an optimistic way, thinking about how things will work, SREs mostly think about what can go wrong. They try to optimize distributed systems for the worst case scenarios - traffic overload, cascading failures and how databases can go corrupt. This talk will be about the culture of SREs, how to establish trust between developer teams and SRE teams and how to prevent failure.
Wolfgang Hennerbichler recently switched to GitHub as a Site Reliability Enginner, where he is responsible for monitoring and observability. He worked at Google for the last 5 years as a Site Reliability Engineering Tech Lead for the company wide alerting system as well as as a manager of two Site Reliability Engineering teams.