How many times have you tried to introduce a new language in your organization? What did it take to make new languages production ready? Did you ask your SRE team about their opinion before introducing a new language to production? It can be a long-term commitment to onboard new languages for production usage, especially at large organizations. Even though we often are focused on development-phase concerns, there are also production related ones. At Google, we have tried to introduce a few new languages to production. SRE played a major role in making the new languages and runtimes ready with their requirements and guidance. This talk will go through what it takes to make a language production ready at large organizations. We will cover best practices, tools and integrations required to make a language widely-adopted in a company and how to use a new language in production with confidence.
Everybody knows that we need a cache, but where exactly to place it? Inside your application or as a layer in front of it? In the container or outside the container? In the era of Cloud Native and Microservices these questions get even more complicated. In this session I’ll present different architectural patterns for distributed caching: Embedded, Client-Server, (Kubernetes) Sidecar, and Reverse HTTP Proxy Caching.
< br /> In this session you’ll learn: - What are the design options for including the caching layer - How to apply caching layer in Istio (and Service Mesh in general) - How to use distributed HTTP caching without updating your microservices - Common pitfalls when setting up caching for your system
Rafał Leszko , Hazelcast
Cloud software engineer at Hazelcast, author of the book “Continuous Delivery with Docker and Jenkins”, trainer, and conference speaker. He specializes in Java development, Cloud environments, and Continuous Delivery. Former employee in a number of companies and scientific organizations: Google, CERN, AGH University, and more.
As infrastructure as code has become the basic standard for DevOps / SRE teams. The need to validate the written code has become more important. This is also has a cost implication as actual resources will be created in a commercial cloud environment.
In this talk we will explore using the go library terratest together with a combination of other open source tools like kind and localstack to write useful tests for your infrastructure as code in your local environment.
Most SRE talks focus about what people should be doing, but there are benefits to considering what NOT to do. This talk covers five organizational behaviors that seem obvious but will actually hurt your system availability, and offer some advice on how to get them right instead.
We’ve all been there: it’s 3 AM, the system is down, everything is on fire and it’s up to us to make it better. We do some digging, deploy a fix and draft a post-mortem. We might even identify some things we could have done differently, or suggest a process to avoid such problems in the future. Everyone sits down for the ceremonial presentation of the post-mortem and nods sagely, going back to their work secure that valuable lessons had been learned… right up until the next time the system crashes and we go through the motions again.
In this session we’ll consider not what could be done differently, but what shouldn’t be done at all: common engineering antipatterns that, if we fail to avoid, will degrade our system and hurt its availability.
Gabel Tomer , WeWork
A programming junkie and computer history aficionado, Tomer’s been around the block a few times before settling in at WeWork. Over the years he’s built any number of (predominantly back-end) systems, cofounded two major Israeli user groups (Java.IL and Underscore), organized an annual Scala conference (Scalapeño) and is a recurring speaker at software conferences. He secretly still hopes to realize his childhood dream of becoming a lion tamer.