Bootcamp in Yandex: Wie kann ein Entwickler ein Team auswählen?

Große IT-Unternehmen bieten häufig Kandidaten für eine Entwicklungsrolle an, um zwischen mehreren Teams zu wählen. Diese Wahl zu treffen ist nicht einfach - der Entwickler hat noch nicht mit einem der Teams zusammengearbeitet und kennt deren Besonderheiten nicht. Um seine Aufgabe zu vereinfachen, haben wir ein Bootcamp durchgeführt . Dies ist ein besonderer Weg, um eine Probezeit zu durchlaufen. Das Bootcamp dauert acht Wochen. Während dieser Zeit kann sich der Mitarbeiter in verschiedenen Abteilungen versuchen und auf der Grundlage dieser Erfahrung eine fundierte Entscheidung für den zukünftigen Job treffen. Ursprünglich war dieses Format nur für Front-End-Entwickler verfügbar, aber vor einigen Wochen waren auch Back-End-Teams damit verbunden.



Ich bin Zhanna Kruglova, Ex-Entwicklerin und Leiterin des Butkamp-Teams. Ich werde den Lesern von Habr sagen, dass das Projekt unter der Haube liegt, welche Möglichkeiten es bietet und wie die vorherigen Teilnehmer ihr Team schmerzhaft ausgewählt haben.

Zuerst haben wir Butkamp in einem experimentellen Modus gestartet und dann, um die Vorteile zu erkennen, das gesamte Frontend der Suche, der Werbetechnologien, der persönlichen und einiger anderer Dienste eingeführt. Jetzt stellen wir Backend-Entwickler auf demselben System ein - bisher nur in Moskau. Für Front-End-Profis ist das Unternehmen in sieben Büros tätig: in Moskau, St. Petersburg, Jekaterinburg, Minsk, Simferopol, Kasan und Innopolis. Weiter werden wir das Programm auf andere Spezialitäten ausweiten.

Mehr als 80 Menschen gingen durch das Bootcamp. Wir sehen, dass dieses Bewährungsformat für Kandidaten viele Vorteile bietet.

Wie das Bootcamp innen angeordnet ist


Dies ist kein Praktikum, sondern ein Vollzeitjob, der bezahlt wird . Mit jedem Teilnehmer wird ein Arbeitsvertrag geschlossen, und tatsächlich wird er Vollzeitbeschäftigter.
Das Programm steht Entwicklern aller Niveaus zur Verfügung: von Junior bis Senior.

Termine und Anzahl der Mannschaften
Das Bootcamp dauert im Gegensatz zur traditionellen Testphase bei Yandex nicht drei Monate, sondern zwei. Wie ist diese Zeit verteilt? Ein Bootcamp-Teilnehmer arbeitet drei Wochen im ersten Team (von denen eine Woche für die Akklimatisierung im Unternehmen aufgewendet wird), dann jeweils zwei Wochen in zwei Teams. Eine weitere Woche verbringen die Teilnehmer auf unterschiedliche Weise: Manchmal schafft es der Entwickler, im vierten Team zu arbeiten (dies gilt nur für das Front-End), manchmal verzögert es sich im vorherigen Team um einige Tage, um die Aufgabe abzuschließen. Und manchmal kann er das Bootcamp eine Woche früher beenden.

Teamauswahl
Die ersten beiden Teams für den Teilnehmer wählen wir aus. Wir möchten, dass der neue Entwickler die Vielfalt von Yandex sieht. Bei der Auswahl von Teams für Backend-Entwickler berücksichtigen wir die Wünsche des Entwicklers in der Hauptentwicklungssprache.

Der Entwickler wählt das dritte Team basierend auf offenen Stellen in unserem internen Service. Es gibt weniger formale Beschreibungen als auf der offiziellen Website. Wir haben auch ein internes Blogging-System, in dem Sie viel über Projekte lernen können. Sie können sich die Codebasis und die Commits ansehen. Außerdem können Sie jederzeit persönlich sprechen, da sich der Entwickler bereits in Yandex befindet.

Angenommen, der Entwickler hat auf 10 Teams aufmerksam gemacht. Anschließend findet ein halbstündiges Treffen mit Vertretern jedes Teams statt. Während des Meetings können Kollegen über Prozesse, Produkte und Technologien, Aufgaben und Ziele sprechen. Der Teilnehmer kann alles fragen, was ihn interessiert. Darüber hinaus können solche Sitzungen von anderen Teilnehmern besucht werden.

Geschäftsreisen
Wenn sich das Team in mehreren Büros befindet, kann der Teilnehmer eine Geschäftsreise in ein anderes Büro unternehmen - in einer Stadt arbeiten und dann in eine andere. Derzeit ist dies jedoch nur für Front-End-Entwickler.

Unterstützung für Kuratoren und Techlide
Jeder Entwickler in Butkamp hat einen Kurator, der bei Fragen kontaktiert werden kann. Während der Passage von Butkamp organisiert der Kurator mindestens drei Sitzungen. Der erste bespricht den gesamten Prozess - was und wie in diesen acht Wochen passieren wird, der zweite tauscht Feedback aus und bewertet Zwischenergebnisse, fasst im Finale zusammen und bespricht die Wahl und den Aktionsplan des Teams nach dem Ende des Bootcamps.

In jedem Entwicklungsteam trifft er auf Techlide. Er bringt die Dinge auf den neuesten Stand, legt Aufgaben fest, führt eine Codeüberprüfung durch, stellt das Team vor - im Allgemeinen tut er alles, damit sich der Teilnehmer als Teil des Teams fühlt und in ein paar Wochen so weit wie möglich in seine Prozesse eintaucht.

Feedback-System
Nach Abschluss der Arbeit hält jedes Team ein Meeting ab, bei dem das Team und der Teilnehmer Feedback austauschen - sie sagen, ob es sich lohnt, gemeinsam weiterzugehen. Das Team ist möglicherweise bereit, den Entwickler zu behalten, diese Entscheidung zu verschieben oder abzulehnen. Wenn die Antwort Nein lautet, erklärt das technische Team des Teams ausführlich, warum die Person noch nicht geeignet ist. So findet der Teilnehmer sofort heraus, woran er arbeiten soll, und kann in den folgenden Teams Schwächen korrigieren.

Der Entwickler seinerseits sagt, dass er die Arbeit mochte und nicht mochte. Konzentriertes Feedback ist für beide Seiten sehr nützlich. Dies wird sowohl von Entwicklern als auch von Teams festgestellt.

Eine mögliche Weigerung, die Arbeit fortzusetzen - sei es eine Weigerung des Teilnehmers oder des Teams - bedeutet nicht, dass es sich um eine schlechte Einheit oder einen unzureichend qualifizierten Entwickler handelt. Es bedeutet nur, dass die Person und das Team nicht zusammenpassen. Und es ist sehr gut, dass dies so früh aufgedeckt werden kann.

Lebensbeispiel
Die ersten beiden Teams haben nicht einen Teilnehmer eingeladen, bei ihnen zu bleiben. Tatsache ist, dass in seiner vorherigen Unternehmensinitiative nicht begrüßt (und sogar bestraft) wurde. Er verstand nicht sofort, dass bei Yandex das Gegenteil der Fall war. Nach einem sehr konstruktiven und detaillierten Feedback der Teams gelang es ihm jedoch, die Prinzipien seiner Arbeit zu ändern. Infolgedessen traten beide der folgenden Teams für ihn an - jedes versuchte, ihn zu Hause zu halten.

Vorteile für Kandidaten


Informierte Wahl des Teams
Zuvor hatte der Entwickler vier abschließende Interviews mit verschiedenen Teams. Jeder von ihnen präsentierte sich in einer Stunde, und aufgrund dieser kurzen Treffen musste der Kandidat sofort jemanden auswählen. Jetzt ist es möglich, zuerst mit Teams zu arbeiten und erst dann eine Wahl zu treffen.

Die Möglichkeit, verschiedene Dinge auszuprobieren
Yandex hat viele verschiedene Produkte und Teams. Entwickler kommen auch ganz anders zu uns. Ein Teilnehmer kann zu jedem Team kommen - sowohl in einem industriellen Projekt als auch in einem kleinen experimentellen Startup -, um dort bestimmte Personen zu treffen, alle Prozesse von innen heraus zu lernen und sich in verschiedenen Technologien, Ansätzen und Aufgaben zu versuchen. Sie können sich den Code verschiedener Dienste ansehen, sehen, wie die Bereitstellung funktioniert, wie die Tests durchgeführt werden, ob sie kontinuierlich integriert sind und was sie sind. Darüber hinaus können Sie die informelle Seite bewerten: Wie Kollegen kommunizieren, wie oft sie sich treffen, welche Werte das Team hat.

Kraftvolle Entwicklung in kurzer Zeit.
Acht Wochen vergehen in einem ziemlich intensiven Modus, Sie müssen in kurzer Zeit viele neue Dinge tun. In einen Teilnehmer sind mehrere Teams investiert, was er in einem gelernt hat, kann dann auf einen anderen angewendet werden. Alle Fähigkeiten und Kenntnisse werden für immer bei ihm bleiben.

Das Bootcamp beinhaltet einen Schulungskurs - Sie können die grundlegenden Technologien erlernen, die in Zukunft nützlich sein werden. Es geht um grundlegende Tools (Versionskontrollsysteme, Build-Systeme) und um Dinge, die momentan möglicherweise nicht benötigt werden, aber was jeder Yandex-Entwickler wissen sollte. Dies umfasst Entwicklungsregeln, gemeinsam genutzte Bibliotheken, Tools, Systeme usw.

Vernetzung
Zu Beginn lernt der Teilnehmer verschiedene Dienste und Personen in Yandex kennen. In Zukunft weiß er bereits, was und wie es funktioniert, wer was tut, wer mit welcher Frage angesprochen werden kann. Der Entwickler interagiert mit einer großen Anzahl von Kollegen aus verschiedenen Abteilungen, und es ist großartig, wenn er bereits von Anfang an mit vielen vertraut ist.

Pluspunkte für das Unternehmen


Wir sparen die Fähigkeiten der Interviewer
Vor dem Bootcamp gab es nicht oft offene Stellen auf Teamebene (1-2 Mal pro Jahr). Dies war eine zusätzliche Belastung für das Team - ich musste alle Angelegenheiten beiseite legen und Kandidaten interviewen. Auf dem Gipfel gab es eine große Last. Nachdem die Stelle geschlossen war, entspannten sich alle sofort. Während der Ausfallzeit kann der Befragte seine Fähigkeiten verlieren, und dann müssen Sie ihn neu trainieren.

Jetzt hängt der Einstellungsprozess nicht mehr von der Verfügbarkeit von Stellenangeboten in einem bestimmten Team ab. Butkamp hat einen Pool von Teilnehmern, die abwechselnd technische Interviewabschnitte durchführen. Spezialisten werden speziell geschult. Dies erleichtert es, die Belastung vorherzusagen und gleichmäßig auf die Befragten zu verteilen. Dank der Pflicht war es möglich, den spontanen und chaotischen Rekrutierungsprozess in ein transparentes und organisiertes System umzuwandeln.

Der Entwickler kann das gesamte Problem lösen
Entwickler vom Junior-Level - aber nicht die Praktikanten - nehmen am Bootcamp teil. Sie wissen bereits viel, so dass ihnen eine Aufgabe als Ganzes anvertraut werden kann. Manchmal geben sie Aufgaben, die das Team erledigen möchte, können sie aber dennoch nicht in den Entwicklungszyklus einbeziehen. Und wenn der Bootcamp-Teilnehmer ankommt, ist das Team glücklich - er kann mit einer außerplanmäßigen Aufgabe betraut werden.

Steigern Sie die Effizienz Ihrer Mitarbeiter
Wir sehen, dass Bootcamp Entwicklern positive Impulse gibt und sie eher mit ihrer Arbeit im Unternehmen zufrieden sind. Eine zufriedenere Person ist produktiver, schneller usw.

Einheiten heben ihre Stärken hervor
Die Teams organisieren spezielle Treffen für Butkamp-Teilnehmer, konkurrieren um sie und bemühen sich, dass der Entwickler sie mit gegenseitigem Interesse auswählt. Auf diese Weise lernen sie, über sich selbst und das Produkt, das sie herstellen, zu sprechen.

Wie der Teilnehmer die endgültige Wahl trifft


Wahl ist die wichtigste und umstrittenste. Es kommt vor, dass eine Person zwei oder alle Teams mochte - und sie weiß nicht, wie sie zwischen ihnen wählen soll. Der Entwickler versucht zu verstehen, was für ihn wirklich wichtig ist, reflektiert viel.

Jemand erstellt Kriterienlisten für die Bewertung eines Teams, die alles umfassen können: Standort, Leiter, Prozesse, Komplexität der Aufgaben, Entwicklungsbedingungen für ihn persönlich, Anwesenheit eines geeigneten technischen Teams oder geeigneter Aufgaben. Der Entwickler kann erkennen, dass das Produkt für ihn wichtiger ist als die Technologie - oder umgekehrt, dass er sich auf das Niveau eines Architekten entwickeln möchte. Das Bootcamp ist eine Gelegenheit, Ihre Ziele und Wünsche zu analysieren.

Wir hatten einen Entwickler, der sich schmerzhaft zwischen den beiden Teams entschied und in den letzten Arbeitstagen im letzten Team in die Retrospektive fiel. Dies ist ein Treffen, das nach Abschluss einer wichtigen Phase des Projekts stattfindet - mit einer Nachbesprechung, in der gestürmt wird, wie sie in Zukunft vermieden werden können usw. Und er sagte: „Ich war erstaunt, wie gründlich sie ihre Prozesse, Handlungen und Aktivitäten analysieren. Entscheidungen und welche Schlussfolgerungen. Ich war von einem solchen Wachstumsprozess so überrascht, dass mir klar wurde, dass ich mit diesem Team zusammen sein möchte. “

Oder ein anderes Beispiel: Während der Interviews sagte der Teilnehmer, er wolle ein Projekt für ein Millionenpublikum machen, und nach Butkamp blieb er in einem kleinen internen Startup. Seitdem ist ein Jahr vergangen, der Entwickler ist noch im Team und mit seiner Wahl zufrieden.

Was ist der Unterschied zwischen Teams in Yandex


  • Prozesse. In einigen Teams treffen sich die Mitarbeiter jeden Tag, in anderen - einmal pro Woche. Jemand hat einen Retro, jemand nicht. Einige Teams arbeiten nicht im selben Büro, sondern sind auf mehrere Städte verteilt.
  • Technologie. Irgendwo ist ein separates Team mit der Bereitstellung beschäftigt, irgendwo können Sie den Code in der Produktion selbst einführen. Es gibt Teams, in denen lange Tests durchgeführt werden, während andere eine viel einfachere Testumgebung haben. Jemand schreibt die Infrastruktur von Grund auf neu. Jemand baut ein Frontend auf dem React-Framework auf, jemand auf BEM, jemand auf Vue.js.
  • Die Aufgaben. Ein Team kann Aufgaben auf der Ebene der tiefen Infrastruktur haben, das zweite muss einen Teil der Funktionalität von Grund auf neu implementieren, das dritte erstellt kontinuierlich schnelle Prototypen und testet Hypothesen, und im vierten schreiben die Mitarbeiter den gesamten Service neu.
  • Die Skala. Was bevorzugen Sie - einen Multi-Millionen-Dollar-Service oder ein kleines Startup? Im ersten Fall arbeiten mehrere Personen gleichzeitig an einem kleinen Teil des Projekts, im zweiten Fall kann eine Person an fünf verschiedenen Projekten arbeiten.
  • Die Atmosphäre. Einige Leute eilen abends zu den Kindern nach Hause. Im Gegenteil, jemand zieht es vor, aktiv Zeit mit Kollegen außerhalb der Arbeit zu verbringen. Einige Teams kommunizieren mehr, andere weniger.

Wenn Sie mehr über Bootcamp erfahren oder Bootcamp beitreten möchten, finden Sie hier den Link .

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


All Articles