Events are the fundamental component of every streaming architecture, and how you implement them will hugely impact your event-driven architectures. Despite the wide range of materials on event-driven architectures and the importance of event modeling, this critical domain is often left as an exercise for you to implement on your own. Improperly modeling your events can have difficult and costly impacts on not only your event consumers but on the teams and systems that produce them as well. In this talk, Adam covers the main considerations of modeling and implementing events. Data is often modeled as a Fact or a Delta, though the distinction isn't always clear. For one, facts are commonly used in the event-carried state transfer pattern, while deltas are commonly used in event sourcing. But when communicating across domain boundaries, which ones should you choose? What are the tradeoffs, the benefits, and the best use-cases for each? Adam digs into these main event types, providing some examples and guidelines for when to use each. Adam closes out the presentation with an opinionated list of best practices. Do you think naming is tricky? What about versioning? Evolving your data model got you down? Torn between multiple event types per stream and multiple streams per event? Adam's has a host of best practices, well-reasoned examples, and practical tips to help you model and implement your events and streams. But what is the real-time data analytics stack? Kafka is the de facto standard for getting data-in-motion but what do we add in order to extract insights in real-time? The modern developer has many options to choose from: there’s stream processing frameworks/engines such as Kafka Streams or Apache Flink, real-time OLAP databases such as Apache Druid or Apache Pinot, streaming databases such as Materialize and ksqlDB, time series databases such as TimescaleDB or InfluxDB and even your regular OLTP database such as PostgreSQL or MySQL. What should you choose and why? This talk will explore the real-time analytics technology space from the perspective of the software developer that wants real-time insights in their software. We’ll cover the main categories, how these technologies work and their strengths and weaknesses. I want developers to come away from this talk empowered to add real-time insights to their software, using the right tool for their needs.