📜 ⬆️ ⬇️

PHP with Parisian flavor

Alexander Tarantey: “You don’t need to hurry with the French, they hate when you demand something from them in tight terms. Look at the architecture of Paris, everything was built there slowly, slowly, thinking everything out well, and it all costs for centuries. ”

image

The future of the PHP platform, the development of a media marketing system worth 21 million euros, the color and cultural characteristics of French customers, without knowing and considering which it is impossible to build good communication in a distributed team, as well as teamwork and distributed leadership in IT told Alexander Tarantey, a leading PHP developer (IASO Backup Technology, Minsk, Belarus), and in the recent past - an employee of Ciklum. Fortunately, even after parting with the company, our former employees remain friends of Ciklum, willingly take part in our events, and sometimes even act as speakers .
')
About the beginning began

- In a nutshell: why did you start programming?

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

- How fulfilled were the expectations from studying at BSUIR? How did the study go, what was the most memorable?

- In the first year, we studied under the old program in '98, and the year we were tortured by the laboratory in WinAPI (the technology of '96, which actually “died” in 98). From the second course, really useful subjects have already gone: they learned to write in Java, very good courses were on databases, we remembered courses on 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 because of the structuredness of these languages, which, of course, greatly facilitated the recognition of oral speech. Back in BSUIR they laid the fundamentals of algorithmization. In my opinion, this is much more important than the spelled syntax of a particular language. A good algorithmic base makes it easier for a programmer to switch from one language to another, you quickly grasp the principles by which the syntax of a particular programming language is built.

Studying at BSUIR is built in such a way that the learning process allows you to freely go and work in the real IT business from the fourth course, look at the practice of how software development takes place, how languages ​​and technologies that you study at university are used in real life. If you work in any IT company in the specialty, then you will always meet, help to agree on the timing of the session, etc. This, of course, greatly increased the motivation to learn, because you begin to more deeply and thoroughly understand the context of the application of technologies in real commercial development.

About daily bread

- Why did you choose PHP to work in commercial projects?

- It happened so. For myself, I started writing in a language like Perl. And I came to my first job at 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, at that time, Itransition had a need for PHP developers. I tried, and I was bribed by the ease of PHP development. More and more quickly unfolded, quickly deposited on the server (filled and earned). So everything went and went.

When I came to real projects, it seemed to me that I already knew everything and knew how. And when they started telling me which template engines we use on the project and about OOP (let me remind you, we couldn’t say it was in the 4th version of PHP), I was very indignant, saying that before that I had made websites without all these bells and whistles, and everything worked fine. But, fortunately, I had a very good curator (team lead) 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, step by step, argued that it was necessary to do everything exactly 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 architecture, since we had our own PHP 4 framework. How to make this or that controller could be seen in ready-made solutions. And at a certain point I was faced with a task 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. It was, probably, the first serious moment in my professional development, when I had to use ctrl + click, going from method to method, to delve into what and how we work. It was then that I truly realized the practical side of software development methodology.

- Never wanted to change PHP to another platform?

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

In general, PHP is fine with me so far, especially since PHP is now such a popular platform that you will definitely not be 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 is not “dead” just because Facebook appeared. It really opened up new horizons for the development of the platform. Today, major serious systems are written in PHP, and all this thanks to the development of frameworks (Zend, Symfony).

But not all fashionable technological things personally impressed 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.

image

About the French side

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

Before working at Ciklum, I had a rather long experience of joint development with the British (so real, 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, every evening one of my colleagues made a company, showed the city, told better than any tour guide. On the other hand, the French are very optional: for example, it is even difficult for us to imagine such a situation, when no one is on the demo scheduled at 14:00, and only at 15.15 will write on Skype: “Well, what is a demo?”. Yes, the French are such comrades, for them it is normal.

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

- Firstly, our French made a 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 entire Minsk team to Paris so that we could all be together and work as a team. It really simplified and accelerated the work. Skype, different messengers - all this does not replace direct contact, work and communication physically in the same 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 the same space.

On the other hand, this emphasis on command and had not quite pleasant for us side: for example, our Parisian boss demanded direct presence in the office during working hours and prohibited work from home, even when we had a twenty-degree frost in Minsk. Although they themselves, when they visited us in the winter, simply wondered how we survive here at all 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 himself, take the initiative and lead the team . Perhaps this is what is called distributed leadership. 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 brought us the main income saw was terrible: an inconvenient system of statistics, incomprehensible graphs, etc. Without saying a word, I sat on the weekend and made a prototype of the new design using the same twitter bootstrap. On Monday, I presented the team very much (compared to what it was before, it was simply impossible to make things worse), and we got 2 weeks to implement and test the new UI.

We had in the team an interesting character on the French side - Christopher. Very savvy technically developer, intelligent, competent. But he had a habit of going on leave 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 earnings. Christopher was one of the few developers in our team in Paris who had a university degree, and not just a certificate of auditioning. This distinguished him very favorably from the majority of applicants for any technical vacancies. The fact is that in France, higher education is free and affordable, there is no problem to enter. But few people manage to complete a 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 firm 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 earn Swiss wages (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, he left twice and returned to the team at intervals of six months. And they always took him back, because finding such an intelligent developer in Paris is another problem. In our country, this would hardly be tolerated.

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

—As I have already said, the French are very open guys. Extroverts, they like to communicate, and not only in the office setting. They often hang out in bars with colleagues. 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, really, after work. They are really very open, emotional in communication, for them it is very important not only how you work, but how you build relationships in a team, how you communicate. It could be more so that the entire working day, the technical director can “run into” the team, be dissatisfied with some solutions and approaches that the team proposes, and then in the evening you go with him to drink beer, well, just like best friends.

Even with the French do not need to hurry, they hate when you demand something from them in tight terms. One of my Paris colleague once said: “Look at the architecture of Paris, everything was built slowly, slowly, thinking everything out well, and it all costs centuries.” This is really what distinguishes the French from others: they do everything thoroughly and in a very high quality. In France, there are a lot of century-old family dynasties in business, especially in small business: owners of cafes, restaurants, etc. Sometimes people may not know the name of their president, but at the same time they have a cafe in the center of Paris in the third generation. Whatever happens (war, revolution), their job is to feed tasty people. For me it was amazing.

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

- We developed an e-mail retargeting system. For example, there is some online store, the user enters this store, looks at the goods, but does not buy anything and leaves. The system records what products the visitor looked, what interested him, and then sends him a letter to the post office asking him to buy the goods he is interested in, but already 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, the fixing of users (e-mail and id) took place on various partner portals, where potential buyers filled in registration forms for various purposes. In the case when the identified user went to the online store of our customers, looked at the product, did not buy anything, left, and then, receiving a letter from our system, returned to the store website, everyone was a winner: the store received an interested buyer, we receive a commission shared with partner portals, where users are registered and where we got the opportunity to identify users. And the size of the commission could differ significantly depending on what product the online store sells: if it is a beer, for example, the commission could amount to tens of cents, and in the case of expensive cars - even a dozen euros.

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 any know-how in how you technically implemented your application?

- First, the data synchronization system: we had 5 databases deployed on different servers, and it was necessary 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-designed development process, true 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 would manage. Probably, 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.

Source: https://habr.com/ru/post/241865/


All Articles