Track: Java - Propelling the Ecosystem Forward
Day of week:
Java continues to evolve to support an ever-changing ecosystem of applications, languages, and platforms. Whether you are building systems that run at scale, or applications for mobile devices, performance and features are key. This track will focus on how you can build better software, innovate in new spaces, and improve efficiency by leveraging improvements in the JDK.
by Rossen Stoyanchev
Spring Framework Committer @Pivotal
In the past year Netflix shared a story about upgrading their main gateway serving 83 million users from Servlet-stack Zuul 1 to an async and non-blocking Netty-based Zuul 2. The results were interesting and nuanced with some major benefits as well as some trade-offs.
Can mere mortal web applications make this journey and moreover should they? The best way to explore the answer is through a specific use case. In this talk we'll take 5 common use cases in web application development...
by John Chapin
Cloud Technology Consultant with an expertise in Serverless Computing
The modern Java Virtual Machine (JVM) is the culmination of millions of hours of expert engineering, and is the foundation on which enormous portions of the digital landscape are built. However, as a runtime for AWS Lambda functions, the JVM is often derided as being a poor fit for an ephemeral world. The truth of the matter is that the JVM is an excellent choice of runtime for a wide range of AWS Lambda use cases, and developers need not even constrain themselves to just the Java language...
by Dan Lawesson
Migrating a Java 8 application to Java 9 is not just an exercise in API management, but also a learning experience in areas such as memory management and package dependencies.
This talk will share insights from our experience migrating Speedment to Java 9 with a focus on 2 key areas. First, Speedment is an ORM with a Java 8 Streams API and one of its prominent features is acceleration based on in-memory off-heap caching of data. Because it relies on the efficient handling of Strings...
by Thomas Wuerthinger
Graal Compiler Architect
Current language runtimes often execute in isolation -- running in different processes, using different compilation infrastructure, and maintaining their own garbage collectors. There is no reuse of infrastructure and cross-language communication is inefficient. Our vision of the future of execution runtimes is Graal: an integrated, polyglot, high-performance execution environment. Its core is a new just-in-time compiler for the Java Virtual Machine. Graal doesn’t only support Java-based...
Monday, 26 June
High Velocity Dev Teams
Working Smarter as a team. Improving value delivery of engineers. Lean and Agile principles.
Innovations in Fintech
Technology, tools and techniques supporting modern financial services.
Java - Propelling the Ecosystem Forward
Lessons from Java 8, prepping for Java 9, and looking ahead at Java 10. Innovators in Java.
Microservices: Patterns & Practices
Practical experiences and lessons with Microservices.
Modern Clientside Apps
Reactive, cross platform, progressive - webapp tech today.
Tuesday, 27 June
Architectures You've Always Wondered about
Case studies from the most relevant names in software.
Building Security Infrastructure
How our industry is being attacked and what you can do about it.
Chaos & Resilience
Failures, edge cases and how we're embracing them.
Developer Experience: Level up your engineering effectiveness
Trends, tools and projects that we're using to maximally empower your developers.
Stream Processing at Large
Rapidly moving data at scale.
Wednesday, 28 June
Immutable Infrastructures: Orchestration, Serverless, and More
What's next in infrastructure. How cloud function like lambda are making their way into production.
Machine Learning 2.0
Machine Learning 2.0, Deep Learning & Deep Learning Datasets.
Modern CS in the Real World
Applied, practical, & real-world dive into industry adoption of modern CS.
Next Gen APIs: Designs, Protocols, and Evolution
Practical deep-dives into public and internal API design, tooling and techniques for evolving them, and binary and graph-based protocols.
Maximizing your impact as an engineer, as a leader, and as a person.