📜 ⬆️ ⬇️

4 mistakes that I made as CTO

In fact, there were certainly more mistakes, but now, two years after starting work as the technical director of one large mobile outsourcer, these 4 seem to me to be the main ones.

I came to the position of CTO not through the standard way “ Developer -> Senior -> Team lead -> CTO ”, but through the humanitarian option - “ PM -> Senior PM -> CTO ”. There were both pluses and minuses in this, and it’s hard to say which is more, but there were always enough personal calls and the technical past often saved, however, this is not about that now.

4. Forced evaluation


In addition to the fact that I made the subtitle, I will immediately say that the first mistake was still the desire to participate in general in all assessments, which took me 60-70% of the time at first. Gradually, I refused it and began to deal only with large leads, leaving smaller assessments completely at the mercy of the timlids I had learned to trust.
')
Evaluation of potential projects in outsourcing is something that greatly changes the perception of the development process and can go to the attic. In the first months I was sure that I would certainly never make mistakes of the previous technical director, and I certainly would not underestimate the estimates in order to take all the projects. At first, this was possible, and after 2 quarters, it was clearly visible where the boundary of the old assessment approach was, which we called “ yes it is 5 seconds ” and the new one.

image

Obviously, with a closer look at the estimates, both the waiting time and the estimates themselves increased. Complaints from the sales department began to appear that we are delaying the return of estimates and constantly overestimate them. But oh well, it was still possible to fight this, explaining the importance of this stage for the whole future life of a potential project and for the company itself, which reduces its own risks. Arguments from the category “ we want to do well , because we need X hours for this feature ” never worked for obvious reasons at all - the salespeople do not need quality, they need cheap. But if the sales department could still fight for the right to evaluate the project well, then a practice that completely killed any will and desire to do something was a top management letter in the spirit of “ Guys, XYZ is a very large potential partner, we have to hook on! ". As a rule, this meant that you could put your assessment in your ear and turn it clockwise three times, and the potential partner would still see what the top management wanted to show. Never, for all my practice, it didn’t lead to anything good, and it wasn’t possible to “sell additional losses”. The most egregious case was that when the estimate of more than 3000 hours had to be squeezed to 1000 . We won the project, but the losses on it eventually amounted to a large sum for the company, which for a long time echoed all over.

The second feature of such cases was that, as a rule, such assessments had to be prepared in a day or two, which, with constant overload and overtime of the Timlid, resulted in additional problems.

Closer to the current day, I learned to defend and justify the figures in the estimates before any public: from sales to top management, but what I so often agreed to adventures like " let's sign for N hours, and then add N + 700 more, " I think a big mistake.

3. Technical backlog


Inertia in IT is always there, in outsourcing in particular, because individual technologies and components sometimes very quickly become obsolete, but they manage to accumulate a decent layer of people, companies and other components depending on them during their lives. And to switch from one technology, or tool, to another is obtained mainly at the junction of projects or their major phases.

During my time at the company, not only as a service station, I had the opportunity many times to compare our development ecosystem and third-party ones, including competing companies. Sometimes our backlog was very significant and here I am talking about everything at once: not using new tools, which accelerated and simplified development, not using new (or just other) practices, the lack of constant developer training, the lack of constant market analysis, and so on. In many ways, this all came up against the budget, and even to buy some kind of enterprise software, which is needed for everyday use, it was a problem and a goal that had to be achieved very, very persistently. Sometimes it was possible to prove to the cancer that he should whistle at the top of the mountain, but this happened as often as carpenters resurrect and ascend. Of course, such an environment perfectly coaches ingenuity and exits from various situations have always been found, but this is still unhealthy.

When we succeeded, we tried to include a quick study of new tools, libraries, technologies in the valuations being sold, but this was rare and irregular. As a result, over time, this began to lead to the fact that we began to lose fashion trends and corresponding requests for estimates, because had no idea how to get close to a particular topic. As an example, we can name projects on augmented reality, which for us was a black box for a very long time.

My mistake in this case is the assumption of a similar situation as a whole, when the technological level of the company grows in uncontrolled jerks, and not smoothly. Although, it is necessary to recognize that in the conditions of limited free time and budget I still see only a couple of opportunities to correct this situation, one of which I will write below.

2. Job Description


The most personal item that touched me directly, but in order not to shed tears, I will try to describe it briefly. Any list of works should be specified in advance - this is the standard, but often we neglect this in the context of our own position. I made this mistake initially when I moved to a new position. As a result, I became responsible for everything at once, starting from purchases of equipment, which is normal, to completely wild things, like fulfilling a plan for profitability and attempts to reorganize the work of the sales department. And, of course, some of the tasks failed, because I was busy with something else.

image

I had as many attempts to rewrite and harmonize my Job Description. Already by their number one can understand that this process was not easy, because once bogged down in work that you should not do, it is rather difficult to crawl out of it, because 30 tentacles have already stuck to your spacesuit, which do not want to let you go from the bottom. All this has left its mark on the timing of the realization of their own ideas and their direct implementation.

This is a big mistake, because There was a lot of time that was killed in the task that the technical director should not be involved in, and should not even think about them.

1. Candidates


Heart pain, perhaps, of any person who has to interview a large number of people is often an impossibility to take those candidates that you really liked and the constant struggle with top management for not turning the company into a junior plantation. As a rule, the matter here is in money and conditions. In no way I do not want to say that I had to hire bad developers, no. On the contrary, our selection was always more than tough and I always understood what a senior or just a good, dear candidate can bring with him. This is not only experience, but also acquaintances, new expertise, new ideas, a critical look and much more. However, always the question of the cost of acquiring such a player was dominant.

Many times I had to put aside the resumes of candidates with whom I had just spoken, just because each position was assigned a financial ceiling. This is a standard practice, but I consider it a mistake that I agreed with this approach and later learned to substantiate the significance of a particular candidate in terms of finance and expertise. And here we are talking about reasonably expensive developers.

It happened when I left to organize a new development office. When I was the only one who made decisions about hiring people, I could, say, in 8 cases out of 10 take exactly those who liked the most. I had to go through a lot of arguments and talk about the overvalued RFP candidates with the board of directors, but it was worth it and the people I was lucky to hire gave just an excellent result that no one had expected. It was then, having on hand the results of the work of these people and a whole pack of their ideas and proposals, I understood how to justify the desire to take one candidate or another - with numbers.

An important point here will be the fact that hiring expensive players is just one of the options for technological growth of the company, because experienced developers can acquaint younger colleagues with something new “on the spot” and dilute the resulting stagnation. That is how we solved the issue with expertise on augmented reality - hiring a person with extensive experience in this area among other things.

Epilogue


For each of these points, it is quite realistic to write a large article, but not now. Many mistakes, and not only these, were certainly made due to the lack of previous similar experience, but this does not make them less bitter. It's great that now everything is clear and conscious - this is exactly the development - and it’s good that we managed to convert all this into experience and new skills. You can write for a long time about the fact that all this is not a view from the business, but a desire to remain human, but this is a completely different story.

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


All Articles