Note: this is a past event Check out the current event!

Yaroslav Tkachenko

Senior Software Engineer, Lead at Mobify at Mobify

Talk

Why Actor-Based Systems Are The Best For Microservices
Friday 14:35 - 15:20
Topics:
Scala
Akka
Microservices
Message Queues
Level:
Intermediate

Your rating:
0/5

Nowadays microservices are widely adopted in the industry, but we're still trying to understand the best practices for building and maintaining successful systems. HTTP/RPC synchronous communication is very popular in microservices, but it has a lot of challenges like service discovery, retries, back-pressure, etc. From the other side, microservices can be build to communicate asynchronously using messages. This approach also has its pros and cons, but I'm confident that most of the businesses can benefit from it. Also, messages are natural way to exchange data in actor-based systems, so it should be possible to leverage actors for building great microservices environments. I want to share my experience and show how Enterprise Integration Patterns can be used to design and build fine-grained microservices with asynchronous communication using actors.


Workshop

Deep Dive Into Scala and Akka
Tuesday 9:00 - 17:00
Topics:
Scala
Akka
Microservices
Distributed Systems
Level:
Intermediate
Your rating:
0/5

Akka is a toolkit and runtime for building highly concurrent, distributed, and resilient message-driven applications on the JVM that follows Reactive Manifesto.

I’m going to give a short introduction to Scala programming language and follow with the fundamentals of Actor-based programming and Akka framework. We’ll finish with more advanced topics like Akka HTTP, Akka Clustering, Akka Persistence and Akka Streams.

Topics include

  • Scala basics
  • Functional programming in Scala
  • Scala Futures
  • Actor-based programming: theory, common patterns
  • Actors in Akka
  • Supervision
  • Solving practical problem with Actors and Akka
  • Akka HTTP
  • Akka Clustering: sharding and singleton
  • Akka Persistence with Cassandra
  • Akka Streams
  • Testing in Akka

Prerequisites & Requirements

No experience with Scala, Akka or Actor-based systems is necessary. Please make sure you have the latest Java 8, Scala and SBT (Scala build tool) installed.

About

Yaroslav Tkachenko is a Senior Software Engineer, Lead at Mobify. He joined Mobify to work on Mobify Platform, which includes Progressive Mobile and Engagement Marketing solutions.

Before that Yaroslav was a Director of Engineering at Bench Accounting. He joined the company as a first employee (and a first Software Engineer) and helped to grow the engineering team from 3 to almost 30 people.

At Bench Yaroslav worked with Platform and Integrations teams and was mostly focused on designing and implementing microservices architecture using various stacks (Scala, Node.js), building low-level infrastructure and contributing to DevOps tooling.

Before joining Bench, Yaroslav worked for various digital agencies and e-commerce.

He’s interested in:

  • Distributed systems and microservices
  • Back-end programming
  • Infrastructure, DevOps tools and practices