Eine der Sitzungen
der YaTalks-Konferenz widmen wir dem Wachstum der Entwickler. Dies wird ein Gespräch zwischen Vertretern verschiedener Unternehmen sein - wir haben CTO des ivi Online-Kinos Evgeny
eross Rossinsky, technischer Direktor von mos.ru Roman
romas1982 Ivliev und German Narkaitis - Director of Engineering bei Apstra eingeladen. Die Leiter verschiedener Teams werden von uns am Suchportal teilnehmen: Olga Megorskaya und (als Moderator) Andrey
yafinder Plakhov.
Wir dachten, dass wir vor der Diskussion in Bezug auf "synchronisieren" sollten. Alle zumindest grob repräsentieren, was vertikales Wachstum ist. Bei horizontal ist alles komplizierter: Gute Beispiele horizontal gewachsener Menschen sind von außerhalb des Unternehmens nicht so sichtbar. Was ist ihre Aufgabe? Schreiben sie Code oder führen sie nur Codeüberprüfungen, Kompilierungsmethoden usw. durch? Und zurück zum vertikalen Wachstum - vor welchen Hauptproblemen steht die (zukünftige) Teamführung? Diese Fragen haben wir den Diskussionsteilnehmern gestellt und heute veröffentlichen wir ihre Antworten auf Habré. Diejenigen Entwickler, die sich für einen horizontalen Entwicklungszweig entschieden haben, werden Experten genannt. Dabei wird berücksichtigt, dass sie nicht Menschen, sondern Technologien verwalten.
Eugene Rossinsky, CTO ivi

Gleichgültige Entwickler
Neben dem vertikalen Wachstum entlang der administrativen Linie können Entwickler auch horizontal wachsen - in Technologieexperten. Dann wichtiger als harte Fähigkeiten. Dies sind sehr starke, nicht gleichgültige Entwickler, die das Konzept der Produktarchitektur entwickeln. Sie brauchen kein Management - sie finden eigenständig „Löcher“ in den Produkten und schließen sie. Bei Bedarf schreiben sie den Code selbst, stellen die Befehle zusammen und analysieren sie. Auf solchen Leuten halten wir die meisten architektonischen Lösungen. Unsere Firma hat 26 Teams, in jedem von ihnen ungefähr 10 Leute, von denen 2-3 Experten. Außerdem bilden wir manchmal Teams nur aus solchen Superstars. Das Wachstum eines Experten hängt von der Höhe und Anzahl der von ihm betreuten Projekte ab.
Wenn ein Entwickler versteht, dass er „in die falsche Richtung“ wächst, besteht die Hauptsache darin, vor dem Team den Änderungsbedarf zu ermitteln und einen Migrationsplan auszuarbeiten. Einmal im Quartal halten wir Besprechungen ab, in denen jedes Mitglied des Teams allein mit einem Teamleiter oder Scrum-Master bespricht, wo es weiter wachsen soll. Wir haben auch eine Gilde von Scrum-Mastern und speziellen Chatrooms mit Diskussionen zu ähnlichen Themen. Dann suchen wir, wo Sie eine Person anfügen können, und erstellen eine Roadmap mit Meilensteinen, die er durchlaufen sollte. Wenn jemand etwas ändern will, muss er es tun, damit es für das Unternehmen von Vorteil ist.
Einer unserer JavaScript-Entwickler wollte beim automatisierten Testen die Führung übernehmen. Nach einiger Zeit hörte er auf, Code für Anwendungen zu schreiben, und begann, Fragen der strategischen Entwicklung von Autotests in allen unseren strukturellen Abteilungen zu überwachen. Ein weiterer Fall: Ein Mitarbeiter wollte eine Führungsposition einnehmen, war aber noch nicht bereit. Während des 1 + 1-Meetings erhielt er ein detailliertes Feedback darüber, auf welchem Level er sich gerade befindet und woran er arbeiten sollte, bevor er das Team anführt. Danach hatte der Mitarbeiter zwei Möglichkeiten: entweder an Feedback glauben und den Entwicklungsplan befolgen oder zu einem anderen Unternehmen gehen, wo seine Fähigkeiten ausreichen. Er ist gegangen. Es war auch so, dass der Experte ein Führer werden wollte, er wurde er, aber im Verlauf der Arbeit stellte er fest, dass das Management nicht für ihn geeignet war. Er ging zurück zu den Experten - und glücklich.
Hör auf, alles mit deinen Händen zu machen
Angenommen, Sie nehmen auf natürliche Weise und konfliktfrei eine führende Position ein - das heißt, Sie gewinnen zunächst Glaubwürdigkeit im Team, Ihre Kollegen hören Ihnen zu. Dann ist alles in Ordnung, es wird keine Beleidigung geben. Wenn in einem Team mehrere Personen die Rolle des Teamleiters beanspruchen, gibt es bereits Abweichungen. Entweder vereinbaren sie, gemeinsam zu führen und Aufgaben unter sich zu verteilen, oder einer von ihnen wählt ein anderes Team für sich aus. Die Timlids wissen, wer in was stärker ist - und versuchen sich zu ergänzen. Es gibt genug Aufgaben für alle.
Ein guter Programmierer zu sein und Programmierer zu managen, ist nicht dasselbe. Sie müssen aufhören, alles mit Ihren Händen zu tun, Sie müssen lernen, Menschen zu vertrauen. Und das ist schwierig. Anstatt sich auf Mikromanagement einzulassen und zu versuchen, alles durch sich selbst zu ziehen, sollten Sie Prozesse in Ihrer Nähe im Team festlegen und das Team sollte sie akzeptieren. Zum Beispiel ist es wichtig, eine Überprüfung mit Ihrer Mindesteinbeziehung einzurichten, Linters einzurichten, die Prozesse zum Festlegen und Akzeptieren von Aufgaben und Autotests zu organisieren. Sie müssen verschiedene Tools und Methoden für die Teamentwicklung besitzen.
Jetzt hat der Markt viele Richtungen, sowohl vertikales als auch horizontales Wachstum. Die Gehälter sind ungefähr gleich. Sie können sich in jede Richtung entwickeln. Sowohl technische als auch humanitäre Fähigkeiten sind wichtig. Wie eine Pistole ohne Patronen keinen Sinn ergibt, so Munition ohne Pistole. Aber besonders wertvoll sind die Menschen, die beides und ein anderes suchen. Welches sind an der Kreuzung.
Andrey Plakhov, Leiter Search Functionality

Was ist wichtig für das Wachstum vom Entwickler zum Leader?
Drei Dinge sind wichtig:
- die grundlegende Ebene der geistigen Gesundheit und des Bewusstseins (die fast jeder in der Branche hat),
- Betrachten Sie sich nicht als außergewöhnlich (aber damit sind viele viel schlimmer),
- und keinen der Kollegen radikal schlechter zu finden als sich selbst - das spüren die Menschen intuitiv.
Die Hauptregel lautet: zu glauben, dass jeder über Stärken verfügt, aus denen er lernen kann. Ihr Gesprächspartner ist eine lebende Person und nicht nur ein Accessoire, von dem Sie etwas ausschalten oder durch Täuschung herausholen müssen.
Angenommen, ein Entwickler verdient eine Verbesserung seiner harten Fähigkeiten, wird jedoch nicht befördert. Der Grund ist normalerweise, dass er sich für so viel cooler hält, dass er es nicht einmal versteckt. Und bevor er flexible Fähigkeiten entwickeln kann, muss er diese Einstellung ändern.
Ich bin mit den Buddhisten nicht einverstanden, dass Veränderung nur von innen kommen kann. Es ist für eine Person am einfachsten, sich zu ändern, wenn sie ein anschauliches Beispiel dafür sieht, dass sie sich geirrt hat und Schmerzen davon hat. Es ist leicht, die Mängel anderer zu erkennen, es ist viel schwieriger, die eigenen zu erkennen. Es ist wie der Unterschied zwischen glamourösen Selfies und Fotografien, die Sie in der Realität aussehen lassen.
Welches Wachstum ist einfacher
Programmieren ist eine meditative Aktivität, die sich gut für Introvertierte eignet, und die meisten Programmierer träumen davon, tiefer und nicht breiter zu werden. Was ist besser - ein Guru zu werden, um den sie auf Zehenspitzen gehen und der manchmal etwas Großes tut, oder ein Anführer, der im Gegenteil um jeden herum getragen wird? Die zweite Möglichkeit ist einfach durch das Gesetz von Angebot und Nachfrage einfacher. Es ist nicht so riskant, in der Breite zu wachsen und sich auf Kommunikation einzulassen. Es wird nichts Einzigartiges von Ihnen verlangt. Aber der Guru konkurriert mit der ganzen Welt.
Sie können keine Person ohne Untergebene sein und keinen Code schreiben. Nur weil Sie ein Experte wurden, heißt das nicht, dass Sie irgendwohin kommen, die Welt mit ein paar Änderungen in ein paar Zeilen verändern und jeder fängt an zu flüstern: "Oh, großartig!" Die Experten, die ich kenne, schreiben eine Menge guten Codes. Er ist nicht immer übernatürlich, obwohl er auch auf Dinge stößt, die ich einfach nicht ganz verstehe und die ich normalerweise wahrnehme. Es ist, als würde man Magnus Carlsens Schachpartien lesen. Jeder einzelne Zug ist wahrscheinlich verständlich, aber gleichzeitig ist klar, dass der Champion im Allgemeinen etwas viel besser versteht als die anderen.
Die wichtigste Tätigkeit eines Experten, die sich nicht auf das Schreiben bestimmter Artefakte bezieht, ist eine Codeüberprüfung. Anhand vieler konkreter Beispiele können Sie einer ganzen Schule von Menschen beibringen, die wissen, wie Schreiben in pg heißt . Wenn jemand versucht, allgemeine Regeln zu formulieren, wird er seine Weisheit nicht so gut vermitteln wie mit konkreten Beispielen.
Wer muss nicht zu den Leitern gehen? Es gibt einen solchen Satz - wenn Sie keine Gedichte schreiben können, schreiben Sie nicht. Es ist nicht alles so schwer mit der Führung, aber wenn Sie nicht den Wunsch verspüren, anderen etwas zu erzählen, bringen Sie ihnen etwas bei, wenn Sie keine eigene Vision haben, wie in der Tat alles in Ihrem Team angeordnet werden sollte, wahrscheinlich Sie Sie werden die Führung nicht genießen. Das Management ist schwierig, trostlos und oft unangenehm. Und die einzige Entschädigung dafür, zusätzlich zu Geld (und der Unterschied im Geld auf der Ebene der Top-Programmierer ist nicht so wichtig) - die Fähigkeit, alles nicht wie gewohnt zu machen, sondern wie es Ihnen richtig erscheint. Wenn es kein solches brennendes Verlangen gibt, ist es besser, nicht zu führen.
Olga Megorskaya, Leiterin Crowdsourcing und Platforming bei Yandex

Keine Aufgabe, sondern ein Startup
Es scheint mir, dass die Grundlage für berufliches Wachstum darin besteht, wie Sie die für Sie gestellten Aufgaben wahrnehmen und ausführen. Jede empfangene Aufgabe kann einfach angenommen und erledigt werden, oder Sie können sie als Ihr kleines Produkt betrachten, als Microstart. Und es so zu entwickeln, wie es für ein Startup sein sollte: den Einflussbereich auf die Welt zu vergrößern.
Mit diesem Ansatz erhalten die Menschen viele Möglichkeiten - Sie selbst bilden ein Feld, in dem Sie weiter wachsen werden. Wenn Sie eine umfangreiche Geschichte haben, wird es dem Unternehmen nicht leid tun, mehr Ressourcen in diese zu investieren.
Aus dieser Sicht gibt es keinen großen Unterschied zwischen Ihrer Entwicklung als Führungskraft und als Experte: In einem Fall entwickeln Sie den Einflussbereich Ihrer Dienstleistung, in dem anderen Ihre Fachkenntnisse. Der Entwicklungsweg eines reinen Experten ist jedoch komplizierter. Die Auswirkung Ihres Fachwissens auf die Welt wird nicht dramatisch zunehmen, nur weil Sie die nächste Einheit des Fachwissens in Ihren Kopf setzen: Sie müssen dafür sorgen, dass Ihr Fachwissen zu allgemein anerkannten Praktiken wird. In dieser Hinsicht ist es für einen Experten schwieriger, denn wenn Sie führend sind, haben Sie einige zusätzliche Ressourcen. Wenn Sie ein Experte sind, haben Sie nur Ihre eigene Autorität. Um nur in dieser Eigenschaft zu wachsen, muss man ein starkes persönliches Charisma haben. Vielleicht gibt es deshalb weniger solche Leute als Führer. Aber diejenigen, die ihren Weg erfolgreich beschreiten, sind herausragende Menschen.
In meiner Einheit hat niemand die Führung kategorisch abgelehnt - viele haben früher oder später einen Teil davon erhalten. Einige widerstehen etwas länger. Tatsächlich ist dies überraschend: In Yandex gibt es viel mehr Angebote für Führungspositionen als die Nachfrage nach ihnen. Wir müssen die Leute überzeugen, sie brechen zusammen und antworten, dass sie sich nicht sicher sind. Aber im Allgemeinen scheint mir ein solcher Weg direkter zu sein.
Weisen, stufenweise zu wachsen
Für das schrittweise Wachstum einer Person haben wir eine effektive Institution von virtuellen Teams, V-Teams. Es kann vereinbart werden, dass der Beförderungskandidat zuerst ein virtuelles Team leitet und dann formeller Leiter wird oder nicht. Darüber hinaus haben wir viele Praktikanten, die Sie jederzeit aufnehmen und betreuen können. Dies ist wahrscheinlich ein weiterer Zwischenschritt bei der Leitung des Teams.
Wenn Ihnen als Führungskraft etwas an Ihrer Arbeit nicht gefällt, haben Sie keine Angst, es zu delegieren. Zusammen mit dem Team haben Sie zusätzliche Kraft, im Gegensatz zu der Situation, in der Sie alleine sind. Finden Sie einfach, was Ihnen nicht gefällt, jemanden, dem es gefällt, und geben Sie ihm die Möglichkeit, zu wachsen, indem Sie diese Aufgaben an ihn delegieren. Globale Regel: Der Anführer sollte sich nur mit dem befassen, was sein Untergebener nicht kann. Sie senken die Aufgaben schrittweise auf ein niedrigeres Niveau, Ihre Kollegen lernen, und senken sie sogar, wenn Sie mehrere Hierarchieebenen haben. In meiner Praxis ist dies der einzige Ansatz, mit dem Sie ein skalierbares System unterstützen können.
Die Aufgabe des Leiters, der Sie für die Beförderung nominiert, ist es, diese kompetent durchzuführen. Es sollte auf keinen Fall Situationen geben, in denen eine Beförderung für eine Person und / oder ein Team unerwartet ist. In der Regel werden sie zu einem Zeitpunkt befördert, an dem jeder, einschließlich des Teams, versteht, wer und warum befördert werden muss. Wenn das Risiko eines Konflikts besteht, können Sie einen genaueren Weg einschlagen als mit v-team. Auf der anderen Seite ist es nach dem Anstieg besser, nicht zu fahren: "Gestern waren wir Kollegen, und jetzt bin ich der Anführer." Sie müssen sich in einer neuen Rolle akzeptieren. Es wird sowohl für das Team als auch für Sie einfacher.