PHP with Parisian flavor

    Alexander Tarantei: “You don’t have to rush with the French, they hate it when you demand something from them in strict time. Look at the architecture of Paris, everything was built there slowly, slowly, well thought out, and all this has been going on for centuries. ”


    He spoke about the future of the PHP platform, the development of media marketing systems worth 21 million euros, the color and cultural features of French customers, without knowledge and accounting of which it is impossible to build good communication in a distributed team, as well as teamwork and distributed leadership in IT Alexander Tarantei, lead PHP developer (IASO Backup Technology, Minsk, Belarus), and in the recent past, a Ciklum employee. Fortunately, even after parting with the company, our former employees remain friends of Ciklum, willingly participate in our events, and sometimes even act as speakers .

    About the beginning

    - In a nutshell: why did you get involved in programming?

    In fact, I connected my life with programming quite by accident: after school, I planned to enter the A.D. Sakharov on nuclear physics. In the year of my admission (2003), exams at Sakharov University were held in the second stream, but it turned out that I immediately entered the BSUIR specialty “artificial intelligence”, the exams for which were held in the first stream. I decided not to tempt fate, not to take documents from BSUIR. So I ended up in the IT field, which I do not regret now.

    - How did you meet the expectations from studying at BSUIR? How did you study at all, what was the most memorable?

    - In the first year, we studied according to the old program of 98, and for a year we were tormented by laboratory tests using WinAPI (technology of 96, which actually “died” in 98). From the second year, really useful subjects have already gone: we learned to write in Java, very good courses were in databases, I remembered courses in logic (a special course for our specialty), where we were taught speech recognition technologies. Research in this area was conducted at that time on the basis of two languages ​​(English and Japanese), mainly due to the structure of these languages, which, of course, greatly facilitated the recognition of oral speech. Even in BSUIR laid the fundamental foundations of algorithmization. In my opinion, this is much more important than the learned syntax of a particular language. A good algorithmic base makes it easier for a programmer to switch from one language to another,

    Studying at BSUIR is structured in such a way that the educational process allows you to go free from the fourth course and work in a real IT business, see in practice how software products are developed, how in real life the languages ​​and technologies that you study at the university are applied. If you work in any IT company by profession, then you will always be welcomed, they will help coordinate the dates of the session, etc. This, of course, greatly increased the motivation to study, because you begin to understand more deeply and in more detail the context of the application of technologies in real commercial development.

    About daily bread

    - And why did you choose PHP for work in commercial projects?

    - It so happened. For myself, I began to write in a language such as Perl. And I came to my first place in Itransition as a Perl developer. I really liked this programming language, it was really cooler than many other languages ​​popular at that time. But as it turned out, there was a need for PHP developers at Itransition at that time. I tried, and the ease of development in PHP bribed me. It was developing faster and faster, deployed to the server faster (uploaded and earned). So everything went and went.

    When I came to real projects, it seemed to me that I already know everything and can do it. And when they started telling me what kind of template engines we use on the project and about OOP (I’ll remind you that it wasn’t in the 4th version of PHP), I was very indignant: they say that before that I made websites without all these bells and whistles, and everything worked perfectly. But, fortunately, I had a very good curator (team leader) Igor Fursevich. I do not know how he had the patience with me, but I am incredibly grateful to him for all the knowledge invested in me. He calmly and methodically proved to me step by step that everything should be done according to the rules of the methodology: clearly define classes, inheritance, delve into architecture, etc. Honestly, on my first project I somehow didn’t even really get into the architecture, since we had our own PHP 4 framework. How to make this or that controller, could be spied in ready-made solutions. And at a certain point, I was faced with the problem when I needed to describe to the new client the whole architecture of our project from the entry point to the output of each part of the page to the browser. This was probably the first serious moment in my professional development, when I had to use ctrl + click, moving from method to method, to delve into what works and how it works for us. It was then that I truly realized the practical side of the methodology in software development. passing from method to method, to delve into what works and how it works for us. It was then that I truly realized the practical side of the methodology in software development. passing from method to method, to delve into what works and how it works for us. It was then that I truly realized the practical side of the methodology in software development.

    - Ever wanted to change PHP to another platform?

    - There is an opinion among colleagues (.Net and Java developers) that PHP is not very serious, everything is very cumbersome, slow and clumsy. But I believe that in the hands of the master and PHP - the balalaika. They probably forget when they write on Facebook that it is written in PHP. PHP has a really low entry bar for programmers, and there is a lot of documentation available on how to use the language. This, probably, creates the opinion that PHP is a platform for amateurs. But in fact, the level of technical capabilities of this platform is in no way inferior to .Net or Java. It all depends on the skill of the developer and his general professional horizons (understanding of the principles, development methodology without reference to a specific platform).

    In general, for the time being, PHP is quite fine with me, especially since PHP is now such a popular platform that you will certainly not be left without work in the near future.

    - How do you see the future of the PHP platform?

    - Sometimes it seems to me that PHP, as a programming language, was not “dead” just because Facebook appeared. It really opened up new horizons for the development of the platform. Today big serious systems are written in PHP, and all this thanks to the development of frameworks (Zend, Symfony).

    But not all fashionable technological pieces personally impress me. For example, I still do not accept the use of ORM in projects. In my opinion, this thing was invented for those who do not know SQL, for those who cannot write the query itself.


    About the french side

    - Tell me, please, about the features of working with French clients?

    Before working at Ciklum, I had quite a long experience in joint development with the British (such real ones, with Oxford education) and the Americans. The French are distinguished by such qualities as friendliness and openness: during my first trip to our office in Paris, when I did not know the city at all and did not speak French, one of my colleagues kept me company every night, showed the city, told me better than any guide. On the other hand, the French are very optional: for example, it’s even difficult for us to imagine a situation where no one is at the demo scheduled at 14.00, and only at 15.15 will write on Skype: “what’s the demo?” Yes, the French are such comrades, for them it is normal.

    - How did the cultural characteristics of the French affect teamwork?

    - First of all, our Frenchmen laid great emphasis on teamwork, belonging and commonality of our goals. When we were at the stage of some serious release, they preferred to invite the whole Minsk team to Paris, so that we could all be together and work as a team. This really greatly simplified and accelerated the work. Skype, various messengers - all this does not replace direct contact, work and communication physically in one space. If the project had not been sold to another owner, the French had an idea to put cameras and large monitors in rooms in Minsk and Paris to create the effect of working in one space.

    On the other hand, this emphasis on command also had sides that were not entirely pleasant for us: for example, our Parisian boss demanded a direct presence in the office during working hours and forbade work from home even when we had twenty-degree frost in Minsk. Although they themselves, when they visited us in the winter, simply wondered how we survive here with such frosts.

    Another moment that I also remember very much about teamwork with the French: the team really has equal rights, there is no once and for all appointed lead, rather, at different times for different goals and objectives, everyone can show themselves, take the initiative and lead the team . This is probably what is called distributed leadership. Moreover, the degree of freedom is equal to the degree of responsibility. I liked it. For example, I really did not like the client panel. What those who bring us the main income saw us looked awful: an uncomfortable system of statistics, obscure graphs, etc. Without telling anyone, I sat on the weekend and made up a prototype of a new design using the same twitter bootstrap. Presented on Monday, the team really liked (compared to what it was before, it was simply impossible to make worse),

    Our team had an interesting character on the French side - Christopher. Very tech savvy developer, smart, competent. But he had a habit of going on vacation once every six months, for 6-7 months. The fact is that in France there is such an interesting thing as job insurance (or rather, insurance in case of dismissal). If you lose your job, then the first 6 months, being unemployed, you get 75% of your monthly income. Christopher was one of the few developers on our team in Paris who had a university degree, and not just a certificate of attendance. This distinguished him very favorably from most applicants for any technical vacancies. The fact is that in France higher education is free and affordable, there is no problem to enroll. But few manage to complete the full course of study at the university. The French study for many years, combining study with work and other areas of life. As a result, a very small percentage of employees in an average company in France have a university degree. So Christopher had nothing to fear in terms of finding a job.

    However, this was not enough for him: he dreamed of settling on the border with Switzerland and finding work there to receive Swiss salaries (2-3 times higher than in France), and pay taxes and spend money in France, where everything is cheaper. That was such an interesting developer. In my memory, I left twice and returned to the team with interruptions of six months. And he was always taken back, since finding such an intelligent developer in Paris is still that task. In our country, this would hardly be tolerated.

    - What are the most critical developer qualities when working with French customers? What determines success in collaboration with colleagues, customers from France?

    “As I said, the French are very open guys.” Extroverts, like to communicate, and not only in the office environment. They often hang out with colleagues in bars. We had one colleague on the French side, he once hugged our technical director Edward and said that our boss is such a cool guy, though after work. They are really very open, emotional in communication, it is very important for them not only how you work, but also how you build relationships in a team, how you communicate. It could also be that the technical director could “run over” the team all day, be dissatisfied with some decisions and approaches that the team offers, and then in the evening you go with him to drink beer, well, just like best friends.

    You don’t have to rush with the French, they hate it when you demand something from them in strict time. One of my Parisian colleagues once said: “Look at the architecture of Paris, everything was built here slowly, slowly, well thought out, and all this has been going on for centuries.” This is really what distinguishes the French from others: they do everything thoroughly and very high quality. In France, there are a lot of centuries-old family dynasties in business, especially in small ones: owners of cafes, restaurants, etc. Sometimes people may not know what their president’s name is, but they still have a third-generation cafe in the center of Paris. Whatever happens (war, revolution), their job is to feed tasty people. For me it was amazing.

    - What is the essence of the business model by which the client company worked? What was original in it?

    - We developed an e-mail retargeting system. For example, there is some kind of online store, a user enters this store, looks at goods, but doesn’t buy anything and leaves. The system records which products the visitor watched, what interests him, and then sends him a letter in the mail with an offer to buy the goods he is interested in, but at a discount or with some other more attractive buns. If the user goes to the website of the online store with such a letter, then we get a commission for each transition.

    Of course, in order for such a system to work, you must first somehow collect the e-mail addresses of potential buyers. And this is the second part of the system. Usually, users were registered (e-mail and id) on various partner portals, where potential buyers filled out registration forms for various purposes. In that case, when an authenticated user entered the online store of our customers, looked at the goods, didn’t buy anything, left, and then, having received a letter from our system, returned to the store’s website, everyone won: the store received an interested buyer, we commission , which was shared with partner portals, where users registered and from where we got the opportunity to identify users. Moreover, the size of the commission could vary significantly depending on

    The percentage of “open” letters was quite high (about 60%). And about 70% of users, having received and opened our letters, returned to the websites of online stores. The system really worked and brought a good income. In the segment of such systems (media marketing, e-mail retargeting systems), our client was a pioneer in the French market. As a result, the largest marketing agency in France was very interested in our development, negotiations were held for a year, and in the middle of this year the system was bought for 21 million euros.

    - Was there some kind of know-how in how you technically implemented your application?

    - Firstly, the data synchronization system: we had 5 databases deployed on different servers, and we had to synchronize their structure. For synchronization purposes, we used Liquibase. He helped us a lot. This was one of the technical discoveries for me on the project. Secondly, we had a well-built development process, real continuous integration, with unit tests and all other attributes. The system processed large statistical data, and, for example, without unit tests, I can’t even imagine how we could handle it. Perhaps these were the most important components of the success of the technical implementation of our system. Well, of course, to all this there is still good communication and real teamwork.

    Also popular now: