6:00pm - Snacks & mingling
6:15pm - Presentation
Skill Level: Intermediate
For our next Meetup we are looking forward to having Yaroslav Tkachenko, Director of Engineering at Bench Accounting give the group an in depth look at Elastic Beanstalk.
Description: Elastic Beanstalk is a PAAS platform from Amazon Web Services. We've been using it in Bench Accounting for more than 2 years and really happy with it. Currently we run all our microservices using Docker-based environments.
There are lots of different tools to run Docker containers in microservice-oriented architecture. Kubernetes and Mesos are definitely great solutions, but they're relatively low-level tools and require proper setup, configuration and constant maintenance. Also, they seem like an overkill for systems with just dozens of services/containers, and we still have relatively small fleet.
Elastic Beanstalk uses cluster scheduler (EC2 Container Service) internally, which makes it very similar to Kubernetes or Mesos, but it's a more high-level solution in general, which also integrates nicely with existing AWS functionality. Features like load balancing, auto scaling, monitoring, health checking, logging and etc. are built-in. At the same time, every component is customizable. So, we chose Elastic Beanstalk because it's really easy to setup and maintain, which means that you don't need a big team to support it!
I'd like to show Elastic Beanstalk features and also go a little bit deeper - explain potential customizations and structure of the environments. I’m also going to share our experience with the platform, including tools and best practices we’ve built.
Speaker: Yaroslav Tkachenko is 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.
Currently, Yaroslav works with Platform and Integrations teams and he is mostly focused on designing and implementing microservices architecture using various stacks (Scala, Node.js), building low-level infrastructure and contributing to DevOps tooling.