Ruslan Sinitsky: “Do not be afraid to break the standards”
Introducing the zero issue of the podcast on technology, processes, infrastructure, and people in IT companies. Today, visiting CTOcast is Ruslan Sinitsky, CTO and co-founder of Jelastic.
Listen to the podcast
1st part of the text version of the podcast

Alexander Astapenko: I want to return us to the question of people. How many people are currently working in Jelastic? Where they are? Do they work from the office? Remotely?
Ruslan Sinitsky: We have a distributed team. There are people who are in Zhytomyr, Moscow, America. Someone is working remotely. We still try to keep people in the office, because communication and communication are very expensive. It is possible to work remotely, but in our case, when the product is very complex, a large number of communications is required. 30% of the time in our team goes to rallies, various technical solutions are constantly discussed. Currently, there are about 50 people in Jelastic.
Alexander Astapenko: And what kind of people are these? What is the percentage of developers? Where are the developers sitting and who is located, for example, in California?
Ruslan Sinitsky: Our team is divided approximately as follows. We have system administrators - those who program in Bash, Perl, say, those who write scripts, automate routine administrative processes, there are Java developers who write a backend, and there are JavaScript developers who write a frontend. The backend and frontend are separate from each other. We have a fully one-page web application that communicates based on the JSON protocol, that is, client code is not generated by the server side.
There are testers, now there are about 7 of them, and we are expanding this team even more. There are test automation systems that automatically test the Jelastic installation, perform functional testing, and regression testing. There is an operations team that installs Jelastic on hosters or enterprise clients. In America, mostly marketing and sales are sitting, that is, people who do business.
Pavel Pavlov: Speaking about development processes, you now have a fairly large testing team. As I understand it, at the very beginning there was nobody and there were probably enough problems. And how was the product testing process organized, especially considering its specifics?
Ruslan Sinitsky:Testing was initially based on the basis of self-testing, that is, you write, you test yourself and see if everything works. Then we realized that we needed to expand, add testers, write a system of automated tests. We have two types of testers: manual, which test with your hands, and auto-testers, who write scripts for automatic testing. We have developed our own internal system that runs APIs, complex scripts for calling API combinations. When some kind of bug crawls on production, you understand that the quality of the code needs to be increased, the quality of the product needs to be improved, and you begin to make efforts in this direction. Again iteratively, all iteratively.
Pavel Pavlov:There was no desire to make open the system that you created inside yourself and use for testing, that is, share with other people so that they can use it on their projects?
Ruslan Sinitsky: I say to the guys who write this system that they create a startup inside a startup. Because it really did a unique thing that I didn’t meet on the market - API testing directly. Probably then we will make it open.
In general, we think about Open Source. The question is that now this will not change our business, but will only impose certain burdens. Just opening the source code means nothing, you need to maintain a community, communicate with people, make it convenient to work with this source code. The only question is when will Jelastic become an open source product. Java was originally closed, then it became open. The time has not come yet. Because we focus on the most important things for our team. Now this is creating a successful business. If there is a successful business, then other issues can be resolved. At the moment, Jelastic is not profitable, we spend more than we earn. At the same time, of course, we are growing. The growth is good, income is growing about 30% per month. But there are still the most critical things that need to be addressed.
Pavel Pavlov: With the advent of such a large team of testers, the practice of unit testing remained? Or is it no longer necessary and responsible for the quality of the product carries QA / QE?
Ruslan Sinitsky: Unit testing is, but minimal, because we have a very comprehensive product that consists of different modules. This is a hybrid, a mixture of client, server code, admin scripts. Therefore, we use comprehensive testing systems that allow you to call up a whole chain of scripts and identify the problem in a particular module. We do not avoid unit testing, we simply do not pay enough attention to it due to lack of resources. In the future, we will cover modules with unit tests more.
Pavel Pavlov:Does the company have a code review practice and who, ultimately, is responsible for the quality of the code?
Ruslan Sinitsky: Yes, we have a code review in the team. We know which modules require a review, and which, in principle, are not, which are critical and which are less critical. I myself do code reviews of certain modules. There are people who insure each other. We try to periodically do code reviews in critical parts. Especially if we see the appearance of regression, that is, the test determines that something breaks after adding new functionality. Accordingly, more specialists begin to delve into the code, into this module and do a review.
Pavel Pavlov: What tools did you use? Did they create or apply existing solutions?
Ruslan Sinitsky:I would not say that we automated everything here. It’s just that a person commits, there are people who are subscribed to commits in one or another branch, a notification arrives that such and such a code has been committed. A man can bark. Or, for example, I ask the developer who is working on the module to sit down and see how it is implemented inside. I would not say that this is a super-formal process.
Pavel Pavlov: And, in fact, there is no need for such a super-formal process?
Ruslan Sinitsky: Now, no, it will be necessary in the future, when there will be even more people. At the moment, what we have is fine with us. But a code review is a very important thing, it is very important to have several people who understand one piece of code.
Pavel Pavlov:And how do deployment and updates generally take place from the point of view of end customers, users? How do you deliver new versions of software, new builds? How seamlessly does this whole process go?
Alexander Astapenko: I will add one more point. If you were something like cloud service solutions with your servers, infrastructure, then you would roll out and control the deployment process completely independently, automatically, but when you have a scattered network of partners, that is, such a middle menu through which you are already knocking to end customers, how do you roll out updates to them, how does this process happen?
Ruslan Sinitsky:Indeed, upgrading to the next version is one of the most difficult processes within the product. Because there are people who already pay for the product and it is necessary to prevent any down-time of their applications, to minimize the down-time of our dashboard. Imagine how many partners there are, each of them has their own custom kind of chip. Someone has one billing system, someone else, someone has the same settings, someone has slightly different, different types of servers. And it brings a lot of trouble. What are we doing? We created a tool called a “pipe” and into this pipe we say: “We have version 1.9.2. We want to update it to 1.9.3 ”. The pipe cleans the iron, installs 1.9.2, conducts tests, then on top makes an upgrade, again tests and sends a report. And we see what problems at what stage and try to prevent them even at the stage of testing the upgrade. We write patches for upgrades: patches for infrastructure elements and patches for custom containers (sometimes also required). All these patches, additional modules are tested during the upgrade. Further, when an upgrade occurs, with new releases we introduce such a rule (in order to more secure the end users that our partner has): the partner must provide a separate platform where we clone the production and do the pre-production upgrade. We do a pre-production upgrade, we look that some custom things that this partner has, for example, are incompatible with the current update. If everything is ok, then we produce a production upgrade. patches for infrastructure elements and patches for custom containers (sometimes also required). All these patches, additional modules are tested during the upgrade. Further, when an upgrade occurs, with new releases we introduce such a rule (in order to more secure the end users that our partner has): the partner must provide a separate platform where we clone the production and do the pre-production upgrade. We do a pre-production upgrade, we look that some custom things that this partner has, for example, are incompatible with the current update. If everything is ok, then we produce a production upgrade. patches for infrastructure elements and patches for custom containers (sometimes also required). All these patches, additional modules are tested during the upgrade. Further, when an upgrade occurs, with new releases we introduce such a rule (in order to more secure the end users that our partner has): the partner must provide a separate platform where we clone the production and do the pre-production upgrade. We do a pre-production upgrade, we look that some custom things that this partner has, for example, are incompatible with the current update. If everything is ok, then we produce a production upgrade. which our partner has): the partner must provide a separate platform where we clone the production and do the pre-production upgrade. We do a pre-production upgrade, we look that some custom things that this partner has, for example, are incompatible with the current update. If everything is ok, then we produce a production upgrade. which our partner has): the partner must provide a separate platform where we clone the production and do the pre-production upgrade. We do a pre-production upgrade, we look that some custom things that this partner has, for example, are incompatible with the current update. If everything is ok, then we produce a production upgrade.
The process, frankly, is very complicated. Often the first upgrades took two days each. Well done guys of course, the team is very motivated, but in the end - squeezed lemons. Today we divided the process into two stages. The first is preparation for an upgrade, when certain actions are performed, they can be carried out in a calm environment, without rushing, prepare the infrastructure, and do backups somewhere before. And the second is the actual update time. That is, we are trying to minimize the update interval, to take maximum actions to the preparatory stage. The latest updates took about 4-5 hours. There were more, there were less, depending on the complexity of a particular production. We strive to ensure that updates are made by our partners, that is, we will release a new version and say: here, in the repository, a new version, following such and such instructions,
Pavel Pavlov: And what is the distribution of roles between you and partners, hosting providers in the context of user support and infrastructure?
Ruslan Sinitsky:To date, the procedure is as follows. We install Jelastic and provide a series of trainings. Trainings on support, on monitoring the platform, and simultaneously connecting marketing, which begins to train partners, for example, hosters how to market this product, that you can advertise how to change the site, that is, a whole range of measures and procedures. There are three stages of launching our platform - POC (Proof of concept), when we simply put Jelastic on a piece of iron, we see that everything works well; then a beta launch, when we are already doing customization, a series of trainings and the hoster begins to independently manage the platform; and commercial launch, when billing integration ends and press releases are held, a full-fledged marketing company. After that, the hoster is responsible for maintaining the health of the cluster and for supporting end users. All messages, first of all, come to the hoster and all problems come to the hoster. We provide a second line of support and fix some complex things that, for example, the hoster for one reason or another cannot figure out: the complexity of the product, product flaws (this also exists, of course), or a hoster misunderstanding this or that functionality. But we are no longer responsible for the platform after the commercial launch. Therefore, at the moment there are various providers that provide different levels of quality. I now know that in one country there are hosters that provide different levels of Jelastic quality. And on one hoster, people are happy, but on the other - not very happy. come to the hoster and all problems come to the hoster. We provide a second line of support and fix some complex things that, for example, the hoster for one reason or another cannot figure out: the complexity of the product, product flaws (this also exists, of course), or a hoster misunderstanding this or that functionality. But we are no longer responsible for the platform after the commercial launch. Therefore, at the moment there are various providers that provide different levels of quality. I now know that in one country there are hosters that provide different levels of Jelastic quality. And on one hoster, people are happy, but on the other - not very happy. come to the hoster and all problems come to the hoster. We provide a second line of support and fix some complex things that, for example, the hoster for one reason or another cannot figure out: the complexity of the product, product flaws (this also exists, of course), or a hoster misunderstanding this or that functionality. But we are no longer responsible for the platform after the commercial launch. Therefore, at the moment there are various providers that provide different levels of quality. I now know that in one country there are hosters that provide different levels of Jelastic quality. And on one hoster, people are happy, but on the other - not very happy. product defects (this also exists, of course), or a hoster misunderstanding of a particular functionality. But we are no longer responsible for the platform after the commercial launch. Therefore, at the moment there are various providers that provide different levels of quality. I now know that in one country there are hosters that provide different levels of Jelastic quality. And on one hoster, people are happy, but on the other - not very happy. product defects (this also exists, of course), or a hoster misunderstanding of a particular functionality. But we are no longer responsible for the platform after the commercial launch. Therefore, at the moment there are various providers that provide different levels of quality. I now know that in one country there are hosters that provide different levels of Jelastic quality. And on one hoster, people are happy, but on the other - not very happy.
Alexander Astapenko: This is not a coincidence in Russia?
Ruslan Sinitsky: I will refrain from commenting)
Alexander Astapenko: Do the hosters do not require any legal guarantees from you? Especially with respect to down-time moments, which are possible when switching from pre-production to production.
Ruslan Sinitsky:I would not say what they demand. They expect that everything will be fine, that there will be no down-times, and that we will carry out our work efficiently. Frankly, sometimes serious difficulties arise, because it is really a very complex product, there are a lot of modules and some moments are sometimes difficult to foresee. Naturally, we try to avoid such situations, but if they happen, we do everything possible to minimize damage. Nevertheless, people, hosters understand that problems can arise, it is important how you feel about solving these problems. If you turn your back and slowly react, then the relationship is not very good. There are hosters with whom we generally have a golden relationship. I invite them to us inside the team, sit down with them, rummage around and discuss the roadmap, try to understand their feedback. There are partners with whom we simply maintain formal relations. There are partners with whom we communicate a little, because they do their job well and we do our job well. There are very different situations.
Pavel Pavlov: And which region was the most difficult, where was the most difficult to go out and work? And were there such regions, countries at all?
Ruslan Sinitsky:Currently, Asia is the most difficult region for us to commercially launch, as long as there is no Asian partner. Hope to appear in the near future. I mean Singapore, Malaysia. We already have Australia, Japan, I would also like Singapore and China. China, of course, is very difficult. It’s hard for business. Directly by cooperation, I do not know, everything is specific in reality. I would not say that it depends on the region, depends on the motivation of this or that hoster. Hosters are different: there are large, there are small. Somewhere, the director was delighted, they connected Jelastic and the whole team was delighted. They do a great promotion, their customers are thrilled, everything is going well, everything is growing well. And sometimes someone was let down from above: “launch the product” and the person who is responsible is not motivated, therefore, development is slow. Everything depends, first of all, on people,
Alexander Astapenko: A brief question in the same topic. There is integration, then support. The latter happens remotely or is there some kind of specialist onsite? You talked about an account manager, a technical specialist. Some of them go on-site or is it some kind of business trip? Or is someone constantly there?
Ruslan Sinitsky: This is not necessary at the moment. The product is automated. Sometimes business people travel to build relationships. I went to my partners several times in order to talk inside, to sit, to understand how to speed up the processes and eliminate certain problems, or simply to listen to their business ideas. There are partners with whom it is necessary to keep a very warm relationship, they are critically important. We periodically meet with them.
Alexander Astapenko:Well, like a minimum drink a beer.
Ruslan Sinitsky: How to drink beer at least. That's right. That is, you need to understand that you work, first of all, with people. These are ordinary people, they are the same: they drink beer and swear sometimes.
Alexander Astapenko: Or sake.
Ruslan Sinitsky: Well, or sake, yes)
Alexander Astapenko: We are slowly coming to an end. I think, Ruslan, you are already tired of talking. So far we are doing very well. I wanted to ask about people in Jelastic. Why do you think they want to work in your company and what values you bring to the world, what motivates people to work in Jelastic?
Ruslan Sinitsky:I think the team will respond best. But my opinion is that, first of all, we have good relations within the team. We have normal relations, friendly. We are like a family. Initially, when we were few and only one house was enough, we lived in a private house like on Facebook, ate at the same table, that is, this is a family team relationship, a family product. Now we have grown, there is not enough space - we have moved to another, more formal office now. Nevertheless, the relationship remained warm inside the team. The second, very important - people understand that they are creating a serious world-class product, that we are competing with big players, that they are creating history. It is very motivating. And many things do not come down to them from above, but they themselves can take part in the development of the product.
Alexander Astapenko:And you, Konstantin, stood at the head of this family for a long time, and then in September of this year a new CEO came. Can you tell a few words about the reasons? Maybe about unofficial reasons. I already read the official reasons in an interview. How did you finally get the idea to take the CEO outside and are you satisfied with the result of two months?
Ruslan Sinitsky:The thought has matured as follows. A man orchestra is good at a certain stage, but when a company begins to grow, it slows down growth. To some extent, I was such a person. And technology, and business, and marketing. It is impossible to pull for a long time. We decided that to scale our business, it is necessary to attract more professional people. And this is actually good practice. This is a very important point that needs to be realized. Many people may fear that a person who is smarter will come and take you and throw you out or cheat, outwit. But these are silly fears. You need to attract people who are smarter than you so that they can do better than you. John is just that person, he has much more experience in many things than I have. We are opening a new enterprise direction - an area where I have never been. For me, hosting was a new area and it was not easy. Enterprise is even harder. Relations, acquaintances, experience, trust play a role there. The right person, the right English. There are many factors that are important. Therefore, we decided to hire a professional director. This freed up most of my brain, I can now focus on the things that work best for me - technology, architecture, product development planning.
Alexander Astapenko: You say that the decision was made by “we”. Five years have passed since the idea came about and three years since the inception of the company, you have many partners, somehow you managed to negotiate with them, you went and talked with the hosters, but for some reason, right now you made such a decision. Tell me, whose initiative was it? Yours, teams, leading specialists of the teams you spoke about, or was it, for example, an initiative of investors? Just a change of director coincided with the arrival of Maxfield Capital. Can you clarify this point?
Ruslan Sinitsky:First of all, company management, cofounders and investors. Such decisions are not taken in a month. We started thinking about it, when the team began to grow, we encountered certain problems and realized the potential of another market. A round with Maxfield Capital was made in order to hire more professional, more expensive people.
Alexander Astapenko: Tell us a little about your personal plans. In one of your interviews, I read that you would like to do robotics. Are you tired of another five years of working on the product, when you already come to enterprise, when the process is built, the integration is built? What are your future plans after Jelastic?
Ruslan Sinitsky:I think that everything is not perfect yet, many questions need to be solved, there is still space for me here. I am interested in working at Jelastic at the moment, because it is a drive, I live it. I wake up - I live Jelastic, I fall asleep I live - I live Jelastic, my wife is jealous of me for Jelastic. I'm not tired of working at Jelastic yet.
Naturally, I follow the technologies and news happening in parallel, but I can’t say that I have enough time to concentrate on some additional direction. In principle, I am not yet burning with special desire. I want to make Jelastic really big successful company, which would be known throughout the world and steadily stood on its feet.
What will happen next - we'll see. What saddens me, I’m honestly telling you, a small number of people in Ukraine who would like to create their own product. Basically, I could help many people achieve their goal. Either contacts, or suggest some advice. Experience has accumulated, I know for sure that I can help people achieve certain results in certain areas. After talking with others, I saw a very small number of people who have energy inside, who want to create something on their own.
Alexander Astapenko: Ruslan, on this I propose to complete the recording of our zero “CTOcast”. Thank you for agreeing to participate. Maybe you want to say some last words?
Ruslan Sinitsky:Do not be afraid to create something new, do not be afraid to destroy standards, do not be afraid of the state where you live. Fight for your idea, for your dream, do not give up, try to create something interesting, new. Try to make the work a part of your life, then you will have fun. Because 30% of our time we spend on work. Rejoice at what you have and strive for more. On such a note, I would like to complete our podcast.
Listen to the podcast
1st part of the text version of the podcast

Text version of the podcast (Part 2)
Alexander Astapenko: I want to return us to the question of people. How many people are currently working in Jelastic? Where they are? Do they work from the office? Remotely?
Ruslan Sinitsky: We have a distributed team. There are people who are in Zhytomyr, Moscow, America. Someone is working remotely. We still try to keep people in the office, because communication and communication are very expensive. It is possible to work remotely, but in our case, when the product is very complex, a large number of communications is required. 30% of the time in our team goes to rallies, various technical solutions are constantly discussed. Currently, there are about 50 people in Jelastic.
Alexander Astapenko: And what kind of people are these? What is the percentage of developers? Where are the developers sitting and who is located, for example, in California?
Ruslan Sinitsky: Our team is divided approximately as follows. We have system administrators - those who program in Bash, Perl, say, those who write scripts, automate routine administrative processes, there are Java developers who write a backend, and there are JavaScript developers who write a frontend. The backend and frontend are separate from each other. We have a fully one-page web application that communicates based on the JSON protocol, that is, client code is not generated by the server side.
There are testers, now there are about 7 of them, and we are expanding this team even more. There are test automation systems that automatically test the Jelastic installation, perform functional testing, and regression testing. There is an operations team that installs Jelastic on hosters or enterprise clients. In America, mostly marketing and sales are sitting, that is, people who do business.
Pavel Pavlov: Speaking about development processes, you now have a fairly large testing team. As I understand it, at the very beginning there was nobody and there were probably enough problems. And how was the product testing process organized, especially considering its specifics?
Ruslan Sinitsky:Testing was initially based on the basis of self-testing, that is, you write, you test yourself and see if everything works. Then we realized that we needed to expand, add testers, write a system of automated tests. We have two types of testers: manual, which test with your hands, and auto-testers, who write scripts for automatic testing. We have developed our own internal system that runs APIs, complex scripts for calling API combinations. When some kind of bug crawls on production, you understand that the quality of the code needs to be increased, the quality of the product needs to be improved, and you begin to make efforts in this direction. Again iteratively, all iteratively.
Pavel Pavlov:There was no desire to make open the system that you created inside yourself and use for testing, that is, share with other people so that they can use it on their projects?
Ruslan Sinitsky: I say to the guys who write this system that they create a startup inside a startup. Because it really did a unique thing that I didn’t meet on the market - API testing directly. Probably then we will make it open.
In general, we think about Open Source. The question is that now this will not change our business, but will only impose certain burdens. Just opening the source code means nothing, you need to maintain a community, communicate with people, make it convenient to work with this source code. The only question is when will Jelastic become an open source product. Java was originally closed, then it became open. The time has not come yet. Because we focus on the most important things for our team. Now this is creating a successful business. If there is a successful business, then other issues can be resolved. At the moment, Jelastic is not profitable, we spend more than we earn. At the same time, of course, we are growing. The growth is good, income is growing about 30% per month. But there are still the most critical things that need to be addressed.
Pavel Pavlov: With the advent of such a large team of testers, the practice of unit testing remained? Or is it no longer necessary and responsible for the quality of the product carries QA / QE?
Ruslan Sinitsky: Unit testing is, but minimal, because we have a very comprehensive product that consists of different modules. This is a hybrid, a mixture of client, server code, admin scripts. Therefore, we use comprehensive testing systems that allow you to call up a whole chain of scripts and identify the problem in a particular module. We do not avoid unit testing, we simply do not pay enough attention to it due to lack of resources. In the future, we will cover modules with unit tests more.
Pavel Pavlov:Does the company have a code review practice and who, ultimately, is responsible for the quality of the code?
Ruslan Sinitsky: Yes, we have a code review in the team. We know which modules require a review, and which, in principle, are not, which are critical and which are less critical. I myself do code reviews of certain modules. There are people who insure each other. We try to periodically do code reviews in critical parts. Especially if we see the appearance of regression, that is, the test determines that something breaks after adding new functionality. Accordingly, more specialists begin to delve into the code, into this module and do a review.
Pavel Pavlov: What tools did you use? Did they create or apply existing solutions?
Ruslan Sinitsky:I would not say that we automated everything here. It’s just that a person commits, there are people who are subscribed to commits in one or another branch, a notification arrives that such and such a code has been committed. A man can bark. Or, for example, I ask the developer who is working on the module to sit down and see how it is implemented inside. I would not say that this is a super-formal process.
Pavel Pavlov: And, in fact, there is no need for such a super-formal process?
Ruslan Sinitsky: Now, no, it will be necessary in the future, when there will be even more people. At the moment, what we have is fine with us. But a code review is a very important thing, it is very important to have several people who understand one piece of code.
Pavel Pavlov:And how do deployment and updates generally take place from the point of view of end customers, users? How do you deliver new versions of software, new builds? How seamlessly does this whole process go?
Alexander Astapenko: I will add one more point. If you were something like cloud service solutions with your servers, infrastructure, then you would roll out and control the deployment process completely independently, automatically, but when you have a scattered network of partners, that is, such a middle menu through which you are already knocking to end customers, how do you roll out updates to them, how does this process happen?
Ruslan Sinitsky:Indeed, upgrading to the next version is one of the most difficult processes within the product. Because there are people who already pay for the product and it is necessary to prevent any down-time of their applications, to minimize the down-time of our dashboard. Imagine how many partners there are, each of them has their own custom kind of chip. Someone has one billing system, someone else, someone has the same settings, someone has slightly different, different types of servers. And it brings a lot of trouble. What are we doing? We created a tool called a “pipe” and into this pipe we say: “We have version 1.9.2. We want to update it to 1.9.3 ”. The pipe cleans the iron, installs 1.9.2, conducts tests, then on top makes an upgrade, again tests and sends a report. And we see what problems at what stage and try to prevent them even at the stage of testing the upgrade. We write patches for upgrades: patches for infrastructure elements and patches for custom containers (sometimes also required). All these patches, additional modules are tested during the upgrade. Further, when an upgrade occurs, with new releases we introduce such a rule (in order to more secure the end users that our partner has): the partner must provide a separate platform where we clone the production and do the pre-production upgrade. We do a pre-production upgrade, we look that some custom things that this partner has, for example, are incompatible with the current update. If everything is ok, then we produce a production upgrade. patches for infrastructure elements and patches for custom containers (sometimes also required). All these patches, additional modules are tested during the upgrade. Further, when an upgrade occurs, with new releases we introduce such a rule (in order to more secure the end users that our partner has): the partner must provide a separate platform where we clone the production and do the pre-production upgrade. We do a pre-production upgrade, we look that some custom things that this partner has, for example, are incompatible with the current update. If everything is ok, then we produce a production upgrade. patches for infrastructure elements and patches for custom containers (sometimes also required). All these patches, additional modules are tested during the upgrade. Further, when an upgrade occurs, with new releases we introduce such a rule (in order to more secure the end users that our partner has): the partner must provide a separate platform where we clone the production and do the pre-production upgrade. We do a pre-production upgrade, we look that some custom things that this partner has, for example, are incompatible with the current update. If everything is ok, then we produce a production upgrade. which our partner has): the partner must provide a separate platform where we clone the production and do the pre-production upgrade. We do a pre-production upgrade, we look that some custom things that this partner has, for example, are incompatible with the current update. If everything is ok, then we produce a production upgrade. which our partner has): the partner must provide a separate platform where we clone the production and do the pre-production upgrade. We do a pre-production upgrade, we look that some custom things that this partner has, for example, are incompatible with the current update. If everything is ok, then we produce a production upgrade.
The process, frankly, is very complicated. Often the first upgrades took two days each. Well done guys of course, the team is very motivated, but in the end - squeezed lemons. Today we divided the process into two stages. The first is preparation for an upgrade, when certain actions are performed, they can be carried out in a calm environment, without rushing, prepare the infrastructure, and do backups somewhere before. And the second is the actual update time. That is, we are trying to minimize the update interval, to take maximum actions to the preparatory stage. The latest updates took about 4-5 hours. There were more, there were less, depending on the complexity of a particular production. We strive to ensure that updates are made by our partners, that is, we will release a new version and say: here, in the repository, a new version, following such and such instructions,
Pavel Pavlov: And what is the distribution of roles between you and partners, hosting providers in the context of user support and infrastructure?
Ruslan Sinitsky:To date, the procedure is as follows. We install Jelastic and provide a series of trainings. Trainings on support, on monitoring the platform, and simultaneously connecting marketing, which begins to train partners, for example, hosters how to market this product, that you can advertise how to change the site, that is, a whole range of measures and procedures. There are three stages of launching our platform - POC (Proof of concept), when we simply put Jelastic on a piece of iron, we see that everything works well; then a beta launch, when we are already doing customization, a series of trainings and the hoster begins to independently manage the platform; and commercial launch, when billing integration ends and press releases are held, a full-fledged marketing company. After that, the hoster is responsible for maintaining the health of the cluster and for supporting end users. All messages, first of all, come to the hoster and all problems come to the hoster. We provide a second line of support and fix some complex things that, for example, the hoster for one reason or another cannot figure out: the complexity of the product, product flaws (this also exists, of course), or a hoster misunderstanding this or that functionality. But we are no longer responsible for the platform after the commercial launch. Therefore, at the moment there are various providers that provide different levels of quality. I now know that in one country there are hosters that provide different levels of Jelastic quality. And on one hoster, people are happy, but on the other - not very happy. come to the hoster and all problems come to the hoster. We provide a second line of support and fix some complex things that, for example, the hoster for one reason or another cannot figure out: the complexity of the product, product flaws (this also exists, of course), or a hoster misunderstanding this or that functionality. But we are no longer responsible for the platform after the commercial launch. Therefore, at the moment there are various providers that provide different levels of quality. I now know that in one country there are hosters that provide different levels of Jelastic quality. And on one hoster, people are happy, but on the other - not very happy. come to the hoster and all problems come to the hoster. We provide a second line of support and fix some complex things that, for example, the hoster for one reason or another cannot figure out: the complexity of the product, product flaws (this also exists, of course), or a hoster misunderstanding this or that functionality. But we are no longer responsible for the platform after the commercial launch. Therefore, at the moment there are various providers that provide different levels of quality. I now know that in one country there are hosters that provide different levels of Jelastic quality. And on one hoster, people are happy, but on the other - not very happy. product defects (this also exists, of course), or a hoster misunderstanding of a particular functionality. But we are no longer responsible for the platform after the commercial launch. Therefore, at the moment there are various providers that provide different levels of quality. I now know that in one country there are hosters that provide different levels of Jelastic quality. And on one hoster, people are happy, but on the other - not very happy. product defects (this also exists, of course), or a hoster misunderstanding of a particular functionality. But we are no longer responsible for the platform after the commercial launch. Therefore, at the moment there are various providers that provide different levels of quality. I now know that in one country there are hosters that provide different levels of Jelastic quality. And on one hoster, people are happy, but on the other - not very happy.
Alexander Astapenko: This is not a coincidence in Russia?
Ruslan Sinitsky: I will refrain from commenting)
Alexander Astapenko: Do the hosters do not require any legal guarantees from you? Especially with respect to down-time moments, which are possible when switching from pre-production to production.
Ruslan Sinitsky:I would not say what they demand. They expect that everything will be fine, that there will be no down-times, and that we will carry out our work efficiently. Frankly, sometimes serious difficulties arise, because it is really a very complex product, there are a lot of modules and some moments are sometimes difficult to foresee. Naturally, we try to avoid such situations, but if they happen, we do everything possible to minimize damage. Nevertheless, people, hosters understand that problems can arise, it is important how you feel about solving these problems. If you turn your back and slowly react, then the relationship is not very good. There are hosters with whom we generally have a golden relationship. I invite them to us inside the team, sit down with them, rummage around and discuss the roadmap, try to understand their feedback. There are partners with whom we simply maintain formal relations. There are partners with whom we communicate a little, because they do their job well and we do our job well. There are very different situations.
Pavel Pavlov: And which region was the most difficult, where was the most difficult to go out and work? And were there such regions, countries at all?
Ruslan Sinitsky:Currently, Asia is the most difficult region for us to commercially launch, as long as there is no Asian partner. Hope to appear in the near future. I mean Singapore, Malaysia. We already have Australia, Japan, I would also like Singapore and China. China, of course, is very difficult. It’s hard for business. Directly by cooperation, I do not know, everything is specific in reality. I would not say that it depends on the region, depends on the motivation of this or that hoster. Hosters are different: there are large, there are small. Somewhere, the director was delighted, they connected Jelastic and the whole team was delighted. They do a great promotion, their customers are thrilled, everything is going well, everything is growing well. And sometimes someone was let down from above: “launch the product” and the person who is responsible is not motivated, therefore, development is slow. Everything depends, first of all, on people,
Alexander Astapenko: A brief question in the same topic. There is integration, then support. The latter happens remotely or is there some kind of specialist onsite? You talked about an account manager, a technical specialist. Some of them go on-site or is it some kind of business trip? Or is someone constantly there?
Ruslan Sinitsky: This is not necessary at the moment. The product is automated. Sometimes business people travel to build relationships. I went to my partners several times in order to talk inside, to sit, to understand how to speed up the processes and eliminate certain problems, or simply to listen to their business ideas. There are partners with whom it is necessary to keep a very warm relationship, they are critically important. We periodically meet with them.
Alexander Astapenko:Well, like a minimum drink a beer.
Ruslan Sinitsky: How to drink beer at least. That's right. That is, you need to understand that you work, first of all, with people. These are ordinary people, they are the same: they drink beer and swear sometimes.
Alexander Astapenko: Or sake.
Ruslan Sinitsky: Well, or sake, yes)
Alexander Astapenko: We are slowly coming to an end. I think, Ruslan, you are already tired of talking. So far we are doing very well. I wanted to ask about people in Jelastic. Why do you think they want to work in your company and what values you bring to the world, what motivates people to work in Jelastic?
Ruslan Sinitsky:I think the team will respond best. But my opinion is that, first of all, we have good relations within the team. We have normal relations, friendly. We are like a family. Initially, when we were few and only one house was enough, we lived in a private house like on Facebook, ate at the same table, that is, this is a family team relationship, a family product. Now we have grown, there is not enough space - we have moved to another, more formal office now. Nevertheless, the relationship remained warm inside the team. The second, very important - people understand that they are creating a serious world-class product, that we are competing with big players, that they are creating history. It is very motivating. And many things do not come down to them from above, but they themselves can take part in the development of the product.
Alexander Astapenko:And you, Konstantin, stood at the head of this family for a long time, and then in September of this year a new CEO came. Can you tell a few words about the reasons? Maybe about unofficial reasons. I already read the official reasons in an interview. How did you finally get the idea to take the CEO outside and are you satisfied with the result of two months?
Ruslan Sinitsky:The thought has matured as follows. A man orchestra is good at a certain stage, but when a company begins to grow, it slows down growth. To some extent, I was such a person. And technology, and business, and marketing. It is impossible to pull for a long time. We decided that to scale our business, it is necessary to attract more professional people. And this is actually good practice. This is a very important point that needs to be realized. Many people may fear that a person who is smarter will come and take you and throw you out or cheat, outwit. But these are silly fears. You need to attract people who are smarter than you so that they can do better than you. John is just that person, he has much more experience in many things than I have. We are opening a new enterprise direction - an area where I have never been. For me, hosting was a new area and it was not easy. Enterprise is even harder. Relations, acquaintances, experience, trust play a role there. The right person, the right English. There are many factors that are important. Therefore, we decided to hire a professional director. This freed up most of my brain, I can now focus on the things that work best for me - technology, architecture, product development planning.
Alexander Astapenko: You say that the decision was made by “we”. Five years have passed since the idea came about and three years since the inception of the company, you have many partners, somehow you managed to negotiate with them, you went and talked with the hosters, but for some reason, right now you made such a decision. Tell me, whose initiative was it? Yours, teams, leading specialists of the teams you spoke about, or was it, for example, an initiative of investors? Just a change of director coincided with the arrival of Maxfield Capital. Can you clarify this point?
Ruslan Sinitsky:First of all, company management, cofounders and investors. Such decisions are not taken in a month. We started thinking about it, when the team began to grow, we encountered certain problems and realized the potential of another market. A round with Maxfield Capital was made in order to hire more professional, more expensive people.
Alexander Astapenko: Tell us a little about your personal plans. In one of your interviews, I read that you would like to do robotics. Are you tired of another five years of working on the product, when you already come to enterprise, when the process is built, the integration is built? What are your future plans after Jelastic?
Ruslan Sinitsky:I think that everything is not perfect yet, many questions need to be solved, there is still space for me here. I am interested in working at Jelastic at the moment, because it is a drive, I live it. I wake up - I live Jelastic, I fall asleep I live - I live Jelastic, my wife is jealous of me for Jelastic. I'm not tired of working at Jelastic yet.
Naturally, I follow the technologies and news happening in parallel, but I can’t say that I have enough time to concentrate on some additional direction. In principle, I am not yet burning with special desire. I want to make Jelastic really big successful company, which would be known throughout the world and steadily stood on its feet.
What will happen next - we'll see. What saddens me, I’m honestly telling you, a small number of people in Ukraine who would like to create their own product. Basically, I could help many people achieve their goal. Either contacts, or suggest some advice. Experience has accumulated, I know for sure that I can help people achieve certain results in certain areas. After talking with others, I saw a very small number of people who have energy inside, who want to create something on their own.
Alexander Astapenko: Ruslan, on this I propose to complete the recording of our zero “CTOcast”. Thank you for agreeing to participate. Maybe you want to say some last words?
Ruslan Sinitsky:Do not be afraid to create something new, do not be afraid to destroy standards, do not be afraid of the state where you live. Fight for your idea, for your dream, do not give up, try to create something interesting, new. Try to make the work a part of your life, then you will have fun. Because 30% of our time we spend on work. Rejoice at what you have and strive for more. On such a note, I would like to complete our podcast.