Andrey Chernykh

Full-time Elixir developer, OSS enthusiast, medium.com-writer

Andrey started as C# developer more than 10 years ago, with C# he took the path from junior developer to team lead position. After doing enterprise stuff, Andrey switched to Ruby. Andrey had been working with Ruby on various projects for years when he decided to add new programming language for concurrent, distributed systems into the toolbox.

He considered Scala, Go, Erlang ... and finally noticed Elixir. Elixir made the same wow-effect as Ruby when Andrey had first switched to it from C#. Andrey had found what he'd been searching for!

Andrey works with Elixir on a daily basis and has done so for the past two years. Andrey's created a number of services which work in production, he contributes to open source (exop, express and other), writes articles on Medium and enjoys Elixir every single day. Andrey is very keen on clean, maintainable code and the DDD principle.

Past conferences

Andrey Chernykh
Code BEAM Lite Berlin 2018

Structs for order

Sometimes when Andrey looks at Elixir code written by Elixir-newcomers he notices that some of them avoid Structs. Maybe ‘avoid’ is the wrong word, but he sees a lack of Structs usage. In most cases that usage ends up with Ecto models, but there are a lot of places in a Phoenix application (or just an Elixir console application) where Structs might be very helpful. During the talk Andrey will try to show the value of Structs and how they are related to an application's domain model as elementary entities that define data contracts and are responsible for this data validation and handling.

More information can be found in the article he wrote: https://medium.com/coingaming/elixir-structs-for-the-order-5c45be57c5c9


The talk will show an approach to break complex 'one-huge-file' controllers/modules into small pieces and how Structs is responsible in this.

Andrey Chernykh
Code BEAM STO 2019
16 May 2019
11.35 - 12.20

Exop on StreamData

Andrey will tell a story of how he was inspired by Andrea Leopardi's talk. Property-based testing is a mindset at ElixirConfEU 2018 in Warsaw, Poland, and what is ExopData as the result of this inspiration.

The audience will find out what are Exop and StreamData with a brief description of these libraries. Next, Andrey is going to provide the idea behind ExopData, how it was started and evolved, which tricky moments we've faced during the implementation. And how ExopData can help you with data generating or property-based testing.


First of all, Andrey wants to inspire developers to share their knowledge, participate in conferences, because this is the way how interesting OSS borns. How a single conference might bring you an idea and how this idea evolves. Another goal is to present ExopData itself, of course, and how it can help to write well organized and tested code.


This talk might be interesting for those who are keen on property-based testing as well as in 'modular' (or service-based) code organisation.