Industry practitioners and technical product managers from leading vendors demonstrate solutions to some of today's toughest software development challenges in the areas of performance monitoring, Big Data, software delivery, scalability, and more.
Track: SPONSORED SOLUTIONS TRACK III
Location: Pacific BC
Day of week:
Track Host: Nitin Bharti
Nitin has helped build several notable online developer communities including TheServerSide.com, DZone, and The Code Project. He is known for his extensive editorial work in the Enterprise Java, .NET, SOA, and Agile communities. As Managing Editor and Product Manager at C4Media - the producer of InfoQ.com and QCon events - Nitin continues to pursue his primary passion: helping spread knowledge and innovation throughout the enterprise software development community.
10:35am - 11:25am
Real-time Log Analytics at Scale with Kafka
In today’s complex deployment environment, our systems are increasingly more difficult to understand. When “the system” is a composite distributed system using cloud technologies and microservices, things happen everywhere and it’s difficult to get a feel for the system as a whole.
With this distributed deployment, fixing system issues is inherently problematic and a simple, scalable solution is critical. During this talk, Kresten will discuss the importance of having the capability to understand, monitor, and debug complex systems using log analytics in real-time and at a massive scale. Kresten will also cover how and why Humio uses Kafka internally as a straightforward event-sourcing model for distributed deployments.
11:50am - 12:40pm
Making the Unknown Manageable
You're about to start your new role of EM. Your first day on the job you learn that your team has not met their goals last quarter, and you'll be tasked with improving their performance moving forward. This was Ale's situation last October. This talk is about how to get up to speed on the context necessary to build up your team. Ale goes though how she used data to evaluate the state of the team, worked with them to identify opportunities for improvement, and ultimately boosted delivery performance by 50%.
1:40pm - 2:30pm
The Case for Human-Centric Observability
Modern systems have resulted in an explosion of complexity for organizations of every size, shape, and purpose. In an effort to create more resilient and reliable software, we’ve cast around for solutions to tame and manage this complexity. Observability practices have come to be seen as essential for operating systems at scale, but in practice they’re often seen as technical solutions to what is ultimately a social problem: Software, at the end of the day, is built and run by people.
Human-Centric Observability is a methodology to evaluate observability practices by how they impact, and are built around, three distinct groups of people: external users, internal users, and engineers. In this talk, you’ll learn how to identify these groups and the value of putting them at the center of your observability practice. You’ll take away valuable insights from years of building and running deep systems at scale, and how we’ve built not only resilient software, but a resilient organization -- one that can adapt to changing requirements and needs. At the end of this talk, you’ll have a framework to not only evaluate your own internal practices, but also be inspired to do more to make on-call suck less for your team.
2:55pm - 3:45pm
My Code Is Broken but So Is the Debugging Experience
Everybody writes broken code. Some bugs even make it into production and cause crashes. We cover what tools can be used to hunt these bugs down and why it’s surprisingly hard to get to the root-cause. (Spoiler: these tools are just not cutting it.)
4:10pm - 5:00pm
(Really) Understanding Garbage Collection
The more things change, the more they stay the same. It's 2019, and while while Garbage Collection in Java has come a long way since inception, the fundamentals have not changed. In this session, Gil Tene (CTO, Azul Systems) will review and classify the various garbage collectors and collection techniques available in JVMs today. Following a quick overview of common garbage collection techniques including generational, parallel, stop-the-world, incremental, concurrent and mostly-concurrent algorithms, we will define terms and metrics common to all collectors. We will classify each major JVM collector's mechanisms and characteristics and discuss the tradeoffs involved in balancing requirements for responsiveness, throughput, space, and available memory across varying scale levels. We will conclude with some pitfalls, common misconceptions, and "myths" around garbage collection behavior, as well as examples of how some good choices can result in impressive application behavior.
5:25pm - 6:15pm
Zero Message Loss: Kafka Tooling @checkr
This talk will provide an introduction to Apache Kafka and the concept of message queues in software; explain how and why we integrated Kafka into the Checkr ecosystem; describe some pitfalls we encountered and ways in which even reliably-built queues can fail; and present Republishr, our custom microservice for handling message delivery errors.
Last Year's Tracks
Monday, 1 November
-
Microservices / Serverless Patterns & Practices
Evolving, observing, persisting, and building modern microservices
-
Practices of DevOps & Lean Thinking
Practical approaches using DevOps & Lean Thinking
-
JavaScript & Web Tech
Beyond JavaScript in the Browser. Exploring WebAssembly, Electron, & Modern Frameworks
-
Modern CS in the Real World
Thoughts pushing software forward, including consensus, CRDT's, formal methods, & probabilistic programming
-
Modern Operating Systems
Applied, practical, & real-world deep-dive into industry adoption of OS, containers and virtualization, including Linux on Windows, LinuxKit, and Unikernels
-
Optimizing You: Human Skills for Individuals
Better teams start with a better self. Learn practical skills for IC
-
Open Spaces
Tuesday, 2 November
-
Architectures You've Always Wondered About
Next-gen architectures from the most admired companies in software, such as Netflix, Google, Facebook, Twitter, & more
-
21st Century Languages
Lessons learned from languages like Rust, Go-lang, Swift, Kotlin, and more.
-
Emerging Trends in Data Engineering
Showcasing DataEng tech and highlighting the strengths of each in real-world applications.
-
Bare Knuckle Performance
Killing latency and getting the most out of your hardware
-
Socially Conscious Software
Building socially responsible software that protects users privacy & safety
-
Delivering on the Promise of Containers
Runtime containers, libraries, and services that power microservices
-
Open Spaces
Wednesday, 3 November
-
Applied AI & Machine Learning
Applied machine learning lessons for SWEs, including tech around TensorFlow, TPUs, Keras, PyTorch, & more
-
Production Readiness: Building Resilient Systems
More than just building software, building deployable production ready software
-
Developer Experience: Level up your Engineering Effectiveness
Improving the end to end developer experience - design, dev, test, deploy, operate/understand.
-
Security: Lessons Attacking & Defending
Security from the defender's AND the attacker's point of view
-
Future of Human Computer Interaction
IoT, voice, mobile: Interfaces pushing the boundary of what we consider to be the interface
-
Enterprise Languages
Workhorse languages found in modern enterprises. Expect Java, .NET, & Node in this track