📜 ⬆️ ⬇️

From point A to point Chief

Not all positions presented on the Crossover showcase are clearly understood by potential partners. And if the vacancies of C ++ Software Engineer or Java Software Engineer do not cause issues, then with Chief Software Architect everything is not so simple. In general, who such software architects are there is no clear definition and their functions and descriptions differ from company to company. Spherical Software Architect (SA) in vacuum determines the architectural pattern / paradigm, is responsible for splitting into technical subsystems / layers / components / modules, selects the means of execution and is engaged in the development of technical scenarios. From place to place, functions can add or disappear, but in general, the work of Software Architect is precisely this.



Although common principles exist, projects usually differ so much from each other that, from time to time, Software Architect has to re-examine the specifications, technologies and solutions used, identify subtasks and look for ways to accomplish them.
')
If you suddenly thought that only a pinch of management is missing to this menu, then Chief Software Architect (or, if abbreviated, just CA) is for you. This includes such ingredients as creating scalable solutions, controlling the development process, monitoring the team’s work and personal responsibility for the result as a whole. Many would like to know where such people come from. In the case of Crossover: from subway cars and fur shops. At least, judging by the labor biographies of the two existing Chief Software Architect companies Optiva Ruslan Peshchuk and Yevgeny Konurbaev.

From a chance meeting in the subway to BSS systems


Ruslan peshrus Peshchuk:

“They didn’t even take me to the IT from the street - right from the metro in 2005. As a student, I then needed to learn Java. And so, once a student reading Kei Horstmann in the metro was noticed by Vadim Antonov, technical director of Gemini Systems , and just called for an interview. However, I was not ready for work. But instead of “we will call you back,” Vadim advised me about literature so that I could fully prepare myself. It was from his presentation that I learned about the design patterns, j2ee, and so on - then still in theory, of course. I failed to pass the interview at the second attempt. Although Vadim, of course, made a significant contribution to my professional development and even recommended to Jensen technologies , where I began my professional career as Junior Java Developer.

After that, I was working in Actimind (I first met there taking into account working hours, which caused a lot of stress), then in Documentum (I worked there for 2 years, I made good friends and decided to find an interesting job, because it was boring there). So it turned out to be in The Now Factory (interesting technical problems, freedom of decision making and, of course, responsibility). I went out in search of greater income when I became involved in mortgage, and eventually ended up at Sberbank Technologies .

I didn’t grow together with Sberbank: I realized that it wasn’t my company at all. I settled in NetCracker , which then only opened an office in St. Petersburg. There are a lot of great people there and I gladly spent 4 years with the company. It was exactly at NetCracker that my level of responsibility began to grow noticeably: just a year later I became a group leader, began to conduct interviews, and after that I was engaged in teaching me to the selected people. In addition to office work, there were business trips to Colombia and Australia, during which I was engaged in the preparation of analysis and design documents.

It was cool, but at times very stressful, so I decided to leave and have a little rest. I spent several months in the status of unemployed, at the same time studying vacancies offering remote work. Generally, when you plow for ten years, it becomes uncomfortable without work, even if the mortgage has already been paid by that moment. As a result, I lasted only a couple of months in my “indefinite leave” and found a remote job through Crossover . There was no fear that I would not be able to switch to remote mode. Before that, I worked a total of 7 years in distributed teams. In the end, everything worked out for me. I started in July 2017.

I took the position of Java Chief Software Architect and Product CA (responsible for the quality of the product) in one of the companies ESW Capital - Optiva . Before the purchase, it was called Redknee, if it tells you something.

Now we are working with the team to finalize the BSS system for telecom operators. It is old (developed at the end of the 90s / beginning of the 2000s), and already 2018 is already in the yard - of course, updating the project is necessary. What do I do while working? Basically, I review other developers' code and ensure the transition of the system modules to Gradle / Jenkins from the proprietary assembly system. ”

From “tyzhprogrammist” to clustering billing solutions


Evgeny evgeny_1987 Konurbaev:

“I got into IT almost as if in Narnia, having made my way through fur coats and coats, when in 2007 I got a job as a sysadmin in“ World of Leather and Fur ”. It was such a typical adminstvo from zero in a company not related to IT - in principle, what was needed for the then third year student. There was support for servers, customization of user stations , and repair of irons with the replacement of light bulbs .

What I remember most of all is the work in the women's team. For some reason, there for a long time and persistently believed that the admin should sit next to the servers and drool roots into them. It took a lot of time to convince management of the need for a separate server room. But even more time and effort was needed to convey that the admin does not need to walk with his legs to each user, that everything should be done remotely. I don’t know what it was connected with, but everyone wanted to have the admin (that is, me or my shift manager) physically be at the problem machine and understand on the spot. In general, I had a little more than a year, and already in the fourth year my career really began: first, a software engineer in another organization (Orange System), where I grew to the deputy head of the implementation department, then the lead engineer in Gazinformservice ”, where I grew up first to the head of the group, and then managed to develop the new product of the company. In this capacity, I have already earned the necessary managerial experience. And even having hit the software architecture and going to TaskData to the position of architect (solution architect), I still continued to perform the function of the team leader and in some places the project manager.

Even then I heard about similar offers from Crossover, but I decided that the level of my English for working in an international team would not be enough. And yet I kept in mind the possibility of remote work as a software architect.

In TaskData I managed small teams. Having gained experience that seemed sufficient to me, I passed online testing for compliance with the requirements for Software Architect, with a payment of $ 30 per hour - and passed successfully. However, literally on the last Saturday before the start of the anticipated cooperation, Crossover organized its offline event in Moscow — the tournament, which I decided to take a look at. Tasks at the tournament were algorithmic, to correct the code, tests of the architectural plan, as well as knowledge of the English language. According to the results, I went to the finals, and my resume - on the Crossover marketplace. And according to the results of the first interview, I was already offered a contract by Chief Software Architect at a rate of $ 50 per hour. So one unintentional Saturday event almost doubled my future earnings.

In the first three days in the new position, I only spoke with other specialists, members of my team and those I could find in general in the general chat. I read a lot, delved into the workflow. Only after the initial adaptation I was given the first task, which was a kind of additional verification. As far as I know, similar tasks give each new CA. I do not know what happened to those who did not comply with it, since it is rather complicated, but I managed.

What is the general difference between SA and CA? With normal SA, less is required, he has less responsibility and other metrics, not 4, but 2 tasks per week, let's say.

Now I am part of a feature-development team that saws specific features. What does it mean: requirements come from the customer, our analytics managers decompose it into specific specifications, and then we are developing them for these features. From the last and serious - development for the field of telecom.

We are talking about BSS clusterization (clustering a billing solution). The task is the following: the telecom operator WOM Chile wants to expand its subscriber base to 10 million people, while the existing system supported only 5 million subscribers. That is, we had to create a system of parallelization of traffic to servers, which will provide a two-fold increase in performance. We had only 2 months for everything, but we managed, and we implemented the task in such a way that the system turned out to be scalable. Now WOM Chile can expand its subscriber base beyond the previously agreed 10 million and this is cool.

However, they do not pay for the efforts or beautiful eyes. I have a lot of responsibility on me and I must demonstrate high efficiency, quickly make important decisions and find ways out of seemingly hopeless situations. Just think for yourself: we had only two months to develop for WOM Chile, and we managed even better than the client expected. As I think, Chief Software Architect is, first of all, speed and precise, high-quality implementation. ”

Side effects


If you expect that you will only be engaged in the design of systems and review of the code in the technical position - forget: in the role of CA you have to delve into business processes, constantly communicate with other people and be quite friendly with your colleagues.

“For me, the most important advantages are that the work is remote and diverse. Although it is technical in nature, but diverse: I have to check the code and discuss it, so I communicate with my colleagues a lot. There is no such interaction system as in the office, but the communication is friendly, people help and support each other. There is a project manager who defines the metrics, and if something in his opinion went wrong, we discuss it. The manager, by the way, is from Brazil, and he has excellent English, ”says Ruslan. And here you can read his blog, including the subtleties of work at the current position.

Can I try it too?


It took 12 years for Ruslan to pass his way from a student who received the first invitation for an interview in the metro to a contract specialist for $ 2,000 a week. Eugene has a career from a “tyzhprogrammist” in a fur shop with a salary of 20 thousand rubles (~ $ 555 a month at the rate) to managing development in an international company with an income almost 15 times higher, it took ten years. Perhaps among the readers of these lines is someone who succeeds even faster? And perhaps, someone already, on the contrary, has stayed behind in his world of leather and fur - in any case, everyone will be on an equal footing at the next qualifying tournament for Chief Software Architect , which will take place next Saturday, April 7, in Moscow .

Do you want to be able to read the story about yourself somewhere someday? To do this, just try. It is not important where the person began, and not even how long he went until this day - and what exactly he can do, here and now, and where he is going!

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


All Articles