The Toronto Java Users Group (http://www.tjug.ca) provides presentations of exciting new technologies and socialization with your fellow developers in a relaxed atmosphere. Join us for dinner, drinks, and a talk on an interesting topic presented by one of your peers. We have been meeting regularly since 2009.
[Note from the organizers: this talk was originally scheduled for March, but we have swapped it with the February talk to better accommodate the speakers' schedules]
We live in an era where technology is evolving fast, the Cloud platforms and tools allow us to deliver more applications and more features faster than ever. How resilient is your distributed system? How to prevent failures? What about a cascade of failures? How to prevent it from happening again and again?
One such approach is Chaos Engineering. In this session, we will review the principles of chaos engineering, review several tools and use them to inject random failures into a demo application and Cloud infrastructure. Our goal is to detect and identify potential issues, make our application resilient and tolerate failures.
About the speaker:
Christophe has over 20+ years of experience as an enterprise application developer. He is co-founder of Phlyt, a cloud native development company. Before Phlyt, he was a software architect, consultant, developer at Helpful, Pivotal and other companies. His hobbies include hiking, traveling and scuba diving.
[Note from the organizers: this talk was originally scheduled for February, but we have swapped it to March to accommodate the speakers' schedules]
Flutter is a framework from Google for building native mobile application for iOS and Android. Flutter is based on Dart and complies to native ARM code so it's pretty fast. This talk will feature live coding of a flutter application from scratch no previous experience with Dart or flutter require we will start the beginning and see how much we can code in a short time frame.
Event-centric design and event-driven architecture are powerful tools for designing scalable distributed systems, capable of taking advantage of the agility and organizational efficiencies promised by microservices. In this presentation we will show you how to build such an architecture using Kafka and Kubernetes. To build such an architecture, you need a reliable and scalable messaging system (Kafka), a powerful programming model (Spring/Kafka Streams), and a platform where they all can run reliably and resiliently (Kubernetes.)
In this presentation, you will see a demo-centric introduction to how these technologies complement each other and deliver a cohesive solution:
* how to run Kafka on Kubernetes using the Strimzi operator for Kafka;
* how to build microservices using Spring and Kafka Streams;
* how to run bring them all together in complex data processing topologies on Kubernetes.