5 Minutes With Vasiliy Soshnikov — A Leading Tarantool Engineer
Check out this interview with an engineer from the Tarantool team to learn about their work in DBMS and the microservices they use.
Join the DZone community and get the full member experience.Join For Free
Tarantool is becoming a well-known DBMS that includes many powerful tools and can achieve 1 million ACID transactions per second on a single CPU core! It is also fairly new in North America. I had the opportunity to chat with an important engineer on the Tarantool team, Vasiliy Soshnikov, to learn more about his work history, some of his projects, and what his typical day at Tarantool entails.
1. Tell us a bit about yourself and your background. How did you get into the DBMS space?
Well my official title is Head of Development Group at Mail.Ru, and I started working with DBMSes four years ago. Basically, I create new web services that work under heavy loads. Besides that, I commit to open source projects. For example, I’ve developed six NGINX modules, one of which is open source and five of which are commercial. I’ve also developed some commercial patches for PostgreSQL.
2. What does your day-to-day routine look like and what's it like to work on the Tarantool team?
That is a really good question! Usually my day starts by reading Hacker News. After that, I check a few mailing lists, including Tarantool's. Next, I communicate with developers, customers, and our partners. Then, I write some code and often some technical specifications. I really love my work. Each day I'm learning something new and have new challenges.
3. Can you tell us about your work with your NGINX Tarantool module and how it facilitates microservices?
Sure, I'll start with the basics. The typical architecture of a microservice looks like this: users requests come down through NGINX onto an application server. There is business logic running on the application server that the users interact with. The application server does not hold any states, so you need to store states somewhere else. You can use a database for that. Also, there is a cache to decrease latency and to ensure faster content delivery. In the end, there are five tiers:
- The application server
- The cache
- The database proxy
- The database itself
So one day, I decided to try and eliminate some of the tiers. I created a Tarantool NGINX upstream module that helped me reduce the number of tiers down to two. How? Well, tier one is NGINX and tiers two, three, and five are now replaced by Tarantool. For more info, see the article here.
4. What is your favorite example of a clever Tarantool microservice?
I think the best examples of Tarantool’s usage are in microservices related to authorization, authentication, and anti-fraud.
5. Do you work on any other open source projects in addition to Tarantool?
Yep. Intel MRAA , Centrefugo , NKIT  and a few more. Here are the links on GitHub:
It was such a pleasure to chat with Vasiliy. If you have any questions you would like to ask, please visit Tarantool and connect with one of our developers—or Vasiliy himself!
Opinions expressed by DZone contributors are their own.