Comment est-ce d'être CTO (Chief Technology Officer) ou CTO? Peut-être l'une des étapes les plus élevées du développement des ingénieurs. Combien la vie devient meilleure dans une telle position? C’est ce dont je parle aujourd’hui.
Au début, je tiens à noter que tout est très subjectif et dépend de l'entreprise. Je parlerai de mon expérience dans des entreprises et des startups relativement petites. Bien sûr, pour beaucoup, l'expérience peut varier.
Au tout début, je n'avais pas une foule d'ingénieurs à gérer, j'ai dû monter une équipe moi-même. J'ai immédiatement plongé dans l'embauche d'employés, l'allocation budgétaire et l'organisation de l'espace de travail, et plus encore.
Pourquoi y aller du tout?
Qu'est-ce qui motive une personne lorsqu'elle aspire à ce poste? L'un des facteurs peut être l'argent, mais tout n'est pas clair ici. Si vous regardez Moscou et Saint-Pétersbourg, les salaires d'ingénieurs très cool peuvent être plus élevés que ceux des directeurs. Autrement dit, l'argent est loin d'être un argument décisif. Par exemple, pour moi personnellement, c'était une opportunité d'influencer le développement d'une manière différente. Si auparavant, la qualité du code et du produit lui-même dépendait de moi, alors avec l'avènement d'un nouveau poste, le degré d'influence augmente considérablement: il devient possible de gérer le budget et de choisir des solutions techniques globales, de motiver l'équipe et d'organiser l'ensemble du processus de travail. Tout cela permet d'atteindre rapidement des objectifs, de choisir des stratégies de développement et des méthodologies pour l'entreprise.
J'ai remarqué un fait tel que si auparavant, quand j'étais développeur, l'effet de mon travail était perceptible presque immédiatement, au maximum après le sprint, maintenant cela devrait prendre au moins trois mois, et plus souvent il fallait au moins six mois pour voir les résultats. Mais la fakapy est beaucoup plus lumineuse - généralement, elle est immédiatement perceptible par tout le monde. Oui, et les entreprises coûtent plusieurs fois, voire des ordres de grandeur plus chers que les erreurs des ingénieurs, des analystes ou même des chefs de projet ordinaires.
Nouvelles responsabilités - nouvelles découvertes
Le moment où je suis devenu dans un nouveau poste a été rempli de force et d'enthousiasme. Il y avait un esprit combatif, je voulais tout refaire. Mais c'était une erreur néophyte typique. Il semblait que tout fonctionnait mal, nous avons dû le réécrire et le réparer. Plus l'entreprise est grande ou plus le projet est complexe, plus il semble fort qu'il y a plus de problèmes. Mais en pratique, en plongeant dans tout cela, vous commencez à vous calmer - tout n'est pas aussi simple et sans ambiguïté qu'il n'y paraît à première vue.
Il semble que vous vouliez tout réparer et faire mieux, mais vous rencontrez un mur d'incompréhension de la part des équipes. Ils voient les choses de cette façon: un réformateur est entré, a passé toute la journée à faire des ordures, à y introduire quelque chose, l'empêchant d'écrire du code, mais tout a bien fonctionné.
De plus, je me suis progressivement plongé dans le travail du CTO, j'ai pensé que c'était du bonheur: un contrôle complet sur le développement, la prise de décision, enfin, vous pouvez faire exactement ce que vous pensez être le mieux. Et pas comme ce patron d'un emploi précédent. Mais en même temps, d'autres responsabilités moins intéressantes viennent à l'annexe: allocation budgétaire, fonds de paie (fonds salarial), problèmes domestiques, embauche de personnes et bien plus encore.
Lorsque je suis devenu CTO, je n'avais aucune idée de nombreuses responsabilités. Par exemple, un ingénieur de plus est requis par équipe. Vous devez indiquer aux RH quel type de spécialiste est nécessaire, ce qu'il devrait être en mesure de faire. Vous avez également une masse salariale bien établie et vous devez en quelque sorte trouver un salaire pour un nouvel employé et ne pas dépasser le budget. Et puis vous devez surveiller le marché afin qu'il ne soit pas poursuivi par les concurrents. Dans le même temps, les erreurs peuvent avoir de tristes conséquences, si vous l'évaluez mal, il peut partir et dire à tout le monde ce que vous êtes une chèvre. Et s'il n'y a nulle part ailleurs où le planter, louer un nouveau bureau? Et il faudra encore acheter des meubles et installer la climatisation, etc.
Si auparavant toutes les ressources vous sont apparues miraculeusement, comme dans un jeu, les budgets ont été pris dans une boîte pour un serveur, certains produits, etc., le CTO les extrait vous-même. Nous devons aller «sur le tapis», défendre nos décisions et essayer d'expliquer ce qui est désormais nécessaire au développement. Dans ce cas, vous devez simplement prouver les avantages directs pour l'entreprise.
Lorsqu'il est nécessaire de prendre des décisions stratégiques, il s'avère, surtout au début, que les connaissances ne suffisent pas toujours. En ce moment, vous comprenez que vous devez télécharger des compétences dans tous les domaines de la connaissance, et de toute urgence.
Il faut aussi dire sur la durée de la journée de travail. J'ai eu l'impression qu'elle grandit avec le post. Si les ingénieurs restent assis pendant 8 heures et s'attardent parfois, alors en position de CTO, être en contact avec 8 à 23 est devenu la norme. Parfois, ils appellent même le week-end, et sous forme de primes, ils appellent lorsque vous êtes en vacances. Et comme si vous alliez à la plage, mais vous êtes assis devant un ordinateur portable dans votre chambre et vous faites quelque chose. Dans le même temps, 70 à 80% du temps de travail est occupé par des réunions, des réunions, de la correspondance et la résolution de problèmes. Seul le reste du temps, essayez-vous de faire quelque chose d'utile.
Je pensais que je m'occuperais de choses liées uniquement à la gestion du développement, mais en réalité je dois communiquer avec tout le monde: des agents de sécurité aux cadres supérieurs. Avec tous les problèmes techniques m'est venu.
Les négociations
Parfois, je devais négocier avec de grandes entreprises comme Auto.ru ou Avito. Là, il était extrêmement important de ne pas faire face à la saleté et de montrer que vous représentez une entreprise sérieuse.
Mais cela se produit dans l'autre sens: d'une manière ou d'une autre, les autorités ont envoyé des négociations avec les partenaires, il semble (mot-clé) convenu que je rencontrerai le chef du département du développement. En conséquence, il est arrivé dans une autre ville, il s'est avéré que personne ne m'attendait, le chef du département est parti pour une autre réunion. Pour que le voyage ne soit pas complètement inutile, j'ai dû en quelque sorte établir un contact avec leurs développeurs. Pour nous dire ce que nous voulons, et pour y parvenir, ils viennent de vous écouter, c'est devenu cette autre tâche. En conséquence, il leur a parlé d'une manière ou d'une autre, à peine sorti, ayant reçu les informations nécessaires et réglé les problèmes techniques fondamentaux.
Plus loin - plus de déchets. Je suis allé dans une autre ville pour discuter des aspects techniques de l'intégration d'une autre entreprise à notre système. J'arrive, et là, il s'avère que c'est un contrat familial. La micro-entreprise m'a rencontré, même sans bureau. Une analyste enceinte, développeur principal d'un T-shirt alcoolique, des enfants courent dans l'appartement et pendant la discussion un perroquet parlant vole autour de moi.
Équilibre entre affaires et développement
Lorsque vous êtes développeur, vous pensez que ce serait cool de réécrire quelque chose en utilisant une nouvelle technologie ou d'utiliser un SGBD sympa. Maintenant, cela fonctionne d'une manière différente: vous pensez à chaque nouvelle idée dans un plan différent, à savoir comment «vendre» cela à vos patrons. Par exemple, vous vouliez réécrire une partie du service de PHP à Go. Pour les supérieurs, c'est une phrase vide, qui ne peut pas être dépensée un centime. Après tout, le genre pense dans d'autres catégories - termes et budget. Par conséquent, aller le voir sans temps ni ressources et demander à mettre en œuvre une idée est un mauvais travail. Vous apprenez à imaginer immédiatement comment cela peut aider l'entreprise. Si une solution technologique ne permet pas à l'entreprise de vendre ou d'économiser davantage, le plan est évidemment un échec. De plus, il faut garder à l'esprit les risques possibles de mise en œuvre. Car si quelque chose ne se passe pas comme prévu, c'est vous qui obtenez la tête.
Maintenant, la question de l'équilibre entre les entreprises et le développement est encore plus aiguë. Une autre variable importante est ajoutée à toute tâche - le coût de la solution. Dans le même temps, les aspects techniques ne disparaissent pas, le parti pris en faveur des entreprises est également néfaste. Le directeur technique doit être conscient du succès de cette décision à l'avenir, si une technologie particulière sera développée et prise en charge à l'avenir, quel est le seuil pour y entrer, si elle est trop difficile pour les ingénieurs de l'équipe actuelle, ou s'il est nécessaire d'aller surveiller le marché et d'en embaucher de nouvelles. C'est là que le contexte technique est utile. Et si CTO est né d'un manager et ne connaît pas la différence entre Java et JavaScript? Hélas, cela arrive aussi, et c'est triste.
Le CTO vit entre Scylla et Charybdis. D'une part, les programmeurs ont «faim» pour refroidir les solutions techniques, d'autre part, une entreprise qui veut économiser autant que possible sur le développement et ne peut pas attendre que les fonctionnalités se salissent. Les premiers veulent constamment introduire quelque chose de nouveau ou réécrire les anciens, tandis que les seconds nécessitent un développement accéléré et des risques réduits. Nous ne devons pas offenser les ingénieurs et ne pas bousiller devant les autorités.
Aucun compromis nulle part. Parfois, des béquilles franches aident à faire de bonnes ventes. Ensuite, ils sont justifiés et les développeurs doivent les accepter. Et parfois, vous devez «pousser» certaines décisions devant vos supérieurs et leur associer un budget afin d'économiser à l'avenir.
Je suis également tombé sur le fait que j'ai en quelque sorte mis en place une sorte de processus et que j'ai cessé de le surveiller. Tout semble bien se passer, mais il n'y a pas d'effet approprié. En fait, les employés peuvent simplement marquer quelque chose. J'ai réalisé que nous devons suivre tous les processus et ne pas lâcher les rênes. Et si vous lâchez prise, vous devez être sûr à 300% que quelqu'un le fera, et tout se passera comme prévu.
Je voudrais également souligner un autre point. Dans le poste d'expert technique, vous n'écrivez plus le code, tout le travail se réduit au choix des solutions et à la diffusion des connaissances auprès des chefs d'équipe, qui à leur tour sont engagés dans la formation d'ingénieurs ordinaires. Naturellement, la compétence de programmation est perdue. Même si vous n'avez pas besoin d'écrire du code à la main dans votre position de CTO, vous devez toujours comprendre la technologie. Par conséquent, nous devons en quelque sorte avoir le temps de suivre et cela, lire des livres, écouter des rapports. Si vous êtes mal familiarisé avec quelque chose, les ingénieurs peuvent comprendre cela et jeter des ordures, comme "le patron est un idiot, puis un tour". Cela se produit également lorsqu'il est plus facile pour vous de faire quelque chose de vos propres mains, sans essayer d'expliquer le problème à l'équipe et d'obtenir une solution de sa part. Ça se termine mal, les gens peuvent arrêter d'essayer et s'asseoir sur le cou.
Manœuvres de gestion
Il semble que plus récemment, vous avez travaillé en tant que programmeur ou chef d'équipe et êtes allé boire de la bière avec les gars le vendredi, mais vous avez déjà grandi au CTO, et ils sont devenus vos subordonnés. Et l'un d'eux vient à vous: "Bro, et augmenter mon salaire." Ici, les relations personnelles commencent à interférer, il y a une certaine maladresse. Dans de telles situations, vous devez vous comporter correctement. Si une personne a fait un travail difficile, cela peut valoir la peine de la priver d'un bonus.
Nous devons défendre notre autorité, mais pas être un tyran, c'est-à-dire que nous avons besoin d'un équilibre adéquat. Oui, maintenant il y a des épaulettes générales, mais vous ne pouvez pas prendre et faire quelque chose, car cela vous est entré dans la tête. Dans ce cas, la démocratie ne sent pas. Et après cela, personne ne vous aimera.
Il me semble que beaucoup devraient être basés sur la confiance. Par conséquent, je le répète, vous devez faire attention aux promesses. Sinon, le crédit de confiance tombe, ce qui conduit finalement à des conséquences négatives. De plus, ce principe devrait également fonctionner aussi bien pour les développeurs que pour les entreprises. Par exemple, il a promis d'augmenter son salaire, mais le budget a été coupé. J'ai dû accrocher d'autres bonus et brioches par crochet ou par escroc. Il vaut mieux ne pas faire de promesses vides, sinon ils le considéreront comme une cloche vide, il sera difficile de nettoyer la réputation.
Avant, nous avions un gars courageux qui vous protégeait de tout, mais maintenant il n'y a plus de protection, parce que je suis devenu ce type courageux. Et en aucun cas vous ne devez montrer que vous êtes aplani par les problèmes. Si cela se manifeste à l'extérieur, les employés ordinaires ressentiront instantanément le négatif. Et c'est le découragement et l'empoisonnement de l'atmosphère de travail. Maintenant, vous êtes responsable de chaque éternuement.
Lorsque vous plissez souvent les yeux, vous devez être en mesure de le reconnaître. D'après ma propre expérience, je dirai que vous devez être en mesure de rassembler tout le monde, de vous tenir debout sur un tabouret et de dire: "Chers collègues, j'ai foiré." Et si vous ajoutez à cela: "Mais je sais comment le réparer", alors cela est déjà perçu normalement, et le respect des gars augmente. Et les gens traiteront cela avec compréhension.
Recherche d'emploi pour le poste de CTO
Curieusement, le nombre de postes vacants pour le poste de station-service est assez important. Mais ils ne sont généralement pas placés sur hh et des ressources similaires, le plus souvent, ils recherchent des pairs technologiques, ou du moins regardent de près, les conférences ou les recommandations de connaissances. Pourquoi? Je n'ai pas de réponse claire, mais il me semble que l'essentiel est d'évaluer les capacités. Vous ne pouvez pas donner de problème et voir le résultat, même s'il est lié à l'architecture. Le CTO n'écrit pas de code. Demandez à montrer comment une personne va construire des processus et mettre en œuvre Agile? Vous pouvez, seul l'effet devra attendre six mois. De plus, les gens ne peuvent souvent pas évaluer correctement l'état des choses, ils pensent que tout va bien avec eux, et en creusant un peu, il y a le chaos.
Si vous pensez à ce que l'entreprise souhaite obtenir d'un spécialiste? S'il s'agit d'un développeur, chef d'équipe ou PM - tout est clair. Et si CTO? Il n'y a pas de liste spécifique de responsabilités. En fait, il y a, il doit assurer le travail de tout ce qui précède et en porter la responsabilité. Mais le fait est que tout cela dépend beaucoup de l'entreprise.
Quand je cherchais du travail, je suis allé pour des entrevues à un poste de CTO et j'ai observé une telle image. Une entreprise veut que vous remplissiez essentiellement les fonctions de chef d'équipe, elle n'a pas besoin de créer de processus, elle veut que vous écriviez simplement du code. Dans l'autre, au contraire, ils veulent que vous vous occupiez exclusivement des processus; ils n'ont besoin d'aucune architecture. Le troisième a besoin d'un manager, il ne se soucie pas du côté technique. Le quatrième requiert une personne qui testera des idées commerciales. Cinquièmement, ils veulent que le CTO soit impliqué dans le marketing et le marketing en plus de tout le reste. C’est bien si les entreprises comprennent même ce qu’elles veulent obtenir. Il y a ceux qui en ont besoin pour tout simplement faire du bien.
D'une manière ou d'une autre, il a ri, ils m'ont abandonné une tâche de test: j'ai dû calculer le coût et la durée de création d'une boutique en ligne avec un panier et une vitrine, guidés par les prix moyens du marché pour le développement. En général, ce sont tous des savoirs traditionnels. Je leur ai souhaité mentalement bonne chance dans leur recherche de candidat.
Et il existe un type spécial d'entreprises avec un niveau de bureaucratie sauvage, où elles ne donneront pas d'éternuement sans l'approbation de cinq départements.
Donc, avant d'aller chercher un emploi CTO, vous devriez penser plus d'une fois à ce que vous voulez. Le plus important est que l'entreprise comprenne clairement ce qu'elle attend de vous. Lors d'une des interviews, je n'ai pas pu le supporter et j'ai demandé: «Je vois que vous ne comprenez pas ce que vous me demandez. Comment allez-vous m'évaluer? " Ils ont répondu que nous avions lu quelques livres intelligents et ont demandé à des amis d'une autre entreprise de leur techdir, celui que nous recherchions.
Choisissez donc avec soin et sagesse, sinon cela n'en vaut peut-être pas la peine.
PS
En conclusion, je veux dire que tout est subjectif et qu'il n'y a pas de bonnes et de mauvaises décisions, cela dépend de nombreux facteurs. Si pour résumer tout ce dont j'ai parlé, je réduirais au fait que la station-service est la personne qui résout tous les problèmes, du plus petit au plus stratégique, travaille sans arrêt pour que tout le monde puisse travailler et donner des résultats . Et le plus souvent, ils veulent de lui quelque chose qu'il n'a pas encore rencontré, par conséquent, la flexibilité, la capacité de s'adapter et d'apprendre rapidement sont nécessaires. Au moins pour moi, ces qualités étaient essentielles. Bien sûr, ce travail ne consiste pas uniquement en inconvénients. Le poste de CTO vous permet de réaliser vous-même, vos ambitions,