Updated: Jun 30
Petr Zapletal is a Principal Engineer at Disney Streaming who specializes in the design and implementation of highly scalable, reactive and resilient distributed systems. He is a functional programming and open source evangelist and has expertise in the area of big data and machine classification techniques. Petr participates in the whole software delivery lifecycle; from requirement analysis & design, through to maintaining systems in production. During his career, Petr has worked for various companies from start-ups to large international corporations.
Petr's current interests are Reactive Systems, Distributed Streaming, and Deep Learning. Petr is also an author of ThisWeekInScala and a seasoned conference speaker.
1. In your 2019 presentation, you talked about Change Data Capture. Can you explain how your perspective on CDC has evolved over the years and why?
In my 2019 presentation, I discussed Change Data Capture (CDC). Over the years, I've witnessed its growing importance and impact on data integration, real-time analytics, and event-driven architectures. I believe CDC has become an essential tool for capturing and propagating changes in data systems efficiently and reliably.
Learn more here:
2. Do you have any projects you're currently involved in? What is its primary focus, and what unique challenges does it pose?
Currently, I am involved in a project that explores predictive scaling for distributed systems, utilizing artificial intelligence (AI) to efficiently manage resources. This project focuses on proactively anticipating workload changes and making real-time decisions for optimal resource allocation. The main challenge is to get accurate predictions and be able to project them into actual cloud deployments.
3. In the context of AI, what potential do you see for Scala, and how might it compete or collaborate with other languages popular in AI like Python or smth?
Scala's role in the era of AI is interesting, and I think complementary to Python. While Python has emerged as the go-to language for AI due to its extensive libraries and ecosystem, Scala offers its strengths and opportunities.
Scala's functional programming paradigm, static typing, and seamless integration with existing Java libraries make it a powerful tool for data manipulation and processing, which are crucial steps in AI workflows. Scala's expressive type system presents potential opportunities for developers to enhance data consistency, improve code readability, and mitigate runtime errors while building complex AI systems. While Scala has the potential to complement Python and provide a strong foundation for data manipulation, it is important to note that adopting Scala in AI comes with its own set of challenges and considerations.
The integration of Scala with existing AI frameworks and libraries may require additional effort, and the learning curve for developers transitioning from Python to Scala could pose initial hurdles.
Nevertheless, exploring Scala's typesafety for building reliable and scalable AI models could be an avenue worth considering.