Softwareentwickler werden zu einem wertvolleren Vermögenswert als Geld. Sie zu vermissen oder die Kontrolle über sie zu verlieren (und es ist immer noch nicht klar, was schlimmer ist) ist einfacher als je zuvor. Wir haben uns entschlossen, darüber zu sprechen, wie diese Risiken reduziert werden können.
/ Flickr / Damien Pollet / CC BY-SAWie eine
Studie von Stripe & Harris Poll zeigt, betrachteten 61% der Top-Manager (aus einer Stichprobe von mehr als 1.000 Managern) den Hauptfaktor, der den Erfolg ihres Unternehmens bestimmen könnte, als ein Team starker Entwickler. Laut Forrester sehen sich Unternehmen, für die Ingenieurtalente von entscheidender Bedeutung sind und denen es an ihnen mangelt, 2018 mit der Notwendigkeit konfrontiert, Fachleuten durchschnittlich 20% mehr als dem Markt zu zahlen.
Aber selbst mit anständigen Fachleuten können Unternehmen und Startups Gewinne verlieren - einfach aufgrund von Systemfehlern bei der Arbeit mit IT-Mitarbeitern. Insbesondere sind viele Programmierer gezwungen, veraltete Systeme oder Software von offen gesagt geringer Qualität zu unterstützen. Unternehmen auf der ganzen Welt verlieren aufgrund dieses Ansatzes jährlich etwa 300 Milliarden US-Dollar.
Im Allgemeinen ist es keine leichte Aufgabe, qualifizierte Programmierer in der aktuellen Umgebung zu gewinnen und zu halten. An der „Gig Economy“ mit flexiblen, nicht standardmäßigen Beschäftigungsmodellen sind immer mehr arbeitsfähige Erwachsene beteiligt:
Laut McKinsey lebten 2017 allein in Europa und den USA bis zu 162 Millionen Menschen. Heutzutage hat der Entwickler immer mehr Möglichkeiten, eine akzeptable finanzielle Belohnung für ihn zu erhalten, ohne sich auf den Umfang eines Arbeitsvertrags mit einem Arbeitgeber zu beschränken.
Um ein Team von Ingenieuren zu rekrutieren und eine Umgebung für sie zu schaffen, die sie nicht verlassen möchten, sollten Sie einige Regeln befolgen. Sie sind nicht das einzige Erfolgsrezept im technologischen Talentmanagement, aber sie funktionieren auf jeden Fall, wenn sie ohne Fanatismus angewendet werden.
Stellen Sie IT-Stars sorgfältig ein
Manchmal führt die Einstellung von "Prominenten aus dem Coding" - herausragende Experten für Informationssicherheit oder Genies von Hochlasten usw. - dazu, dass sie irgendwann unverletzlich werden und de facto solche Einflüsse auf das Team, das sich tatsächlich verlässt, wirksam einsetzen nur an das Management. Dies geschieht, wenn das Unternehmen zur Entwicklung einer neuen technologischen Ausrichtung oder eines neuen Projekts ein Traumteam zusammenstellen möchte und beginnt, den Markt zu „staubsaugen“, um die erfahrensten Fachleute aus dem Markt herauszuholen, unabhängig davon, wie sie zusammenarbeiten.
In großen Unternehmen mit einer langen Geschichte erfahren „IT-Stars“ häufig unangenehme Persönlichkeitsmetamorphosen, da sie nur wissen, wie man riesige Legacy-Code-Arrays verwaltet. Mit einer undurchsichtigen Struktur des technologischen Managements zögern solche Mitarbeiter bereits, relevantes Wissen mit Neuankömmlingen zu teilen und Initiativen zu sabotieren, die hypothetisch in der Lage sind, ihren Status im Unternehmen oder in der Abteilung zu untergraben.
/ Flickr / Code für Amerika / CC BY-NDBis zu einem gewissen Grad werden diese Risiken durch die ehrliche und konsequente Umsetzung der Scrum- und Agile-Prinzipien in der Arbeit des Unternehmens (siehe unten) beseitigt oder gemindert. Aber selbst in einem einzelnen IT-Unternehmen, in dem flexible Methoden gesiegt haben, können solche „Technotechniken“ die Arbeit der IT-Abteilung erschweren.
Der "Stern" ist jedoch kein Satz. Es ist nur so, dass Sie nicht versuchen müssen, "diese Hände abzureißen", so wie es nicht nötig ist, sie zu vermeiden. Wenn Sie die erfahrensten Entwickler interviewen, sollten Sie verstärkt auf ihre Soft Skills achten, einschließlich Teamfähigkeit (zum größten Teil wird Massensoftware nicht von einer einzelnen Person ausgeführt) und Feedback von früheren Arbeitgebern.
Dies bedeutet nicht, dass es aus Gründen der „Absicherung von Risiken“ erforderlich ist, viele Spezialisten mit doppelten Funktionen in das Team aufzunehmen oder mittelständische Fachkräfte der höheren Klasse vorzuziehen. Aber die Sternenbereitschaft des Entwicklers ist sicherlich kein absoluter Wert.
Geben Sie Fachleuten die Möglichkeit, neue Fähigkeiten zu erlernen.
Für die meisten Entwickler, Systemarchitekten und Teamleiter ist die professionelle Selbstverbesserung der Hauptmotivator - lassen wir das Geld so weit wie möglich. Sie schreiben einfach gerne Code und erstellen Systeme, die etwas Nützliches bewirken können. Sie mögen es auch, wenn sie die Möglichkeit haben, besser zu lernen und ihre Arbeit zu erledigen als andere.
Darüber hinaus nimmt dieses Verlangen in der Fachwelt tendenziell den Charakter einer Neurose an: Entwickler haben Angst, etwas nicht zu wissen und selbst in den Bereichen, in denen sie seit Jahren arbeiten, nicht ausreichend kompetent zu sein. Sie sind
im Besitz von FOMO (Angst vor dem Verpassen oder „Lost Profit-Syndrom“). Niemand hindert den Arbeitgeber, der diese Nuancen versteht, daran, Programmierern unter ihrer Aufsicht beschleunigte Entwicklungsmöglichkeiten zu bieten.
Glücklicherweise gibt es viele solche Möglichkeiten. Erstens ist dies (egal wie trivial) ein interessanter Job, dank dessen der Senior-Entwickler seine Professionalität stärken und der Junior-Entwickler seine Fähigkeiten wohl oder übel auf die "mittleren" übertragen wird. Vorausgesetzt, das Klima im Team ist günstig für fleißige Anfänger.
Es ist eine Sache, einzelne Online-Vorlagenspeicher zu vernieten und eine andere, ein komplexes, atypisches Produkt herzustellen. Bei wirklich aussagekräftigen Projekten nehmen rein technologische Fragen, die in die Zuständigkeit der IT-Abteilung fallen, eine echte Dimension an. Die routinemäßigen Streitigkeiten um die Wahl einer bestimmten Technologie können in einen konstruktiven Kanal übersetzt werden - in den Kanal der Vorteile, die eine bestimmte Wahl dem Publikum des Dienstes bietet.
Für ein Unternehmen, das sich um die Qualifikationen seiner Entwickler kümmert, erstellen Sie in der Reihenfolge der Dinge eigene technologische Wissensdatenbanken, bezahlen Sie ganz oder teilweise Schulungs- und Zertifizierungskurse, kaufen Sie auf Wunsch der Entwickler Fachliteratur und führen Sie interne Hackathons durch.
/ Flickr / Betsy Weber / CC BYEin kluger Arbeitgeber mit einer ruhigen Seele lässt einen Ingenieur auf einer Fachkonferenz sprechen, weil er versteht, dass er indirekt nicht nur sich selbst als Spezialist, sondern auch als Unternehmen fördert. Sie sollten keine Angst haben, dass ein Spezialist an einen anderen Ort der Konferenz gelockt wird: Wenn der Mitarbeiter zögert, kann er ihn auch direkt aus dem Büro online locken.
Fair Pay Entwickler
Wenn sie sagen, dass Geld
nicht der Hauptmotivationsfaktor für einen Entwickler ist, werden sie aus irgendeinem Grund oft ein Auge zudrücken. Gerade aufgrund der Tatsache, dass sich IT-Spezialisten den Prinzipien des rationalen Denkens verpflichtet fühlen, ist es für sie besonders wichtig zu verstehen, welche Belohnungen sie in absehbarer Zukunft und unter welchen Bedingungen erwarten können. Wenn Programmierer Geld gleichgültig gegenüberstehen würden, würden sie nicht
so viel bezahlt.
Es ist auch wichtig, dass das Modell der Vergütungsbildung verständlich ist und eine Verbindung zu den Vorteilen des Spezialisten für das Unternehmen aufrechterhält. Es kommt vor, dass diese Regel in Bezug auf "Star" -Entwickler (siehe oben) verletzt wird und sie "für den Status" überbezahlt.
Natürlich ermutigen Arbeitgeber nicht zur Offenlegung von Informationen über die Gehälter ihrer Mitarbeiter, aber am Ende weiß immer noch jeder , wer wie viel erhält, und die offensichtliche "Ungerechtigkeit", einem der Nachbarn im Büro zu begegnen, demotiviert einfach Programmierer.
Für ein Startup ist es sinnvoll, auch ein Optionsprogramm für führende Entwickler in Betracht zu ziehen und diese Versprechen einzuhalten, unabhängig davon, was mit dem Unternehmen passiert. Man kann es jedoch nicht übertreiben - versprechen Sie mehr, als Sie geben können. Oft vernachlässigen die Gründer innovativer Projekte diese Regel und versprechen fast Praktikanten einen Anteil am Unternehmen. Sie sollten die Maßnahme kennen - beispielsweise hat das Team (abzüglich der Mitbegründer) in Buffer laut Optionsprogramm insgesamt 17% der Aktien und etwa 3% den führenden Beratern
zugewiesen .
Bieten Sie pünktlich die richtigen Karrieremöglichkeiten
Der Leiter des Unternehmens oder CTO muss - abhängig von der Größe und Struktur des Unternehmens - verstehen, was die Grundmotivation von Ingenieuren, Testern und Projekten unter seiner Aufsicht ist. In vielen Fällen sind Entwickler und andere technische Spezialisten von dem Unternehmen enttäuscht und verlassen es, weil sie nicht sehen, wohin sie als nächstes gehen sollen.
Natürlich gibt es keinen einzigen Weg für alle und alle, die Entwickler sind sehr unterschiedlich. Sie müssen auf die Bedürfnisse jedes Mitarbeiters individuell aufbauen. Für viele Entwickler ist es eine hervorragende Möglichkeit, sich zu entwickeln, ein Teamleiter zu werden: Ohne sich von der Programmierung zu lösen, mehr Verantwortung für das Produkt zu übernehmen und beim Ändern des technologischen Stacks eine Stimme zu haben.
/ Flickr / Damien Pollet / CC BY-SAAber nicht alle Ingenieure wollen etwas anderes als Entwicklungsaufgaben übernehmen. Der Versuch, selbst einen technischen Einsteiger von einem solchen Spezialisten zu „schulen“, wird höchstwahrscheinlich dazu führen, dass er einfach aufgibt. Glücklicherweise ist die Softwareentwicklung ein Bereich, in dem unbegrenztes horizontales Wachstum möglich ist, wenn das Unternehmen Projekte hat, die für ältere Entwickler eine große Herausforderung darstellen.
Sprechen Sie also mit den Entwicklern: sowohl zu Beginn als auch während der Interviews und wenn sie sich bereits in Ihrem Zustand befinden. Wenn Sie ein Manager auf höchstem Niveau sind, helfen Ihnen direkte Manager (Abteilungsleiter, Teamleiter usw.) dabei, die beruflichen und beruflichen Anforderungen gewöhnlicher Programmierer zu verstehen.
Erstellen Sie eine Kultur, in der der Entwickler an erster Stelle steht
Diese Empfehlung gilt vor allem für IT-Unternehmen, bei denen der Wert von Ingenieuren sogar über dem Marktdurchschnitt liegt. Jeff Szczepanski, COO für Stapelüberlauf,
empfiehlt, innerhalb des Unternehmens die Kultur zu fördern, die er zuerst als Entwickler bezeichnet hat, dh, bei der der Programmierer mit seinen Anforderungen im Vordergrund steht.
Einige Umstände und Situationen, die Programmierer demotivieren, sind einem Manager, der zuvor nicht eng mit ihnen zusammengearbeitet hat, möglicherweise nicht klar. Wenn beispielsweise ein Fünftel seiner Arbeitszeit ein qualifizierter Softwareentwickler gezwungen ist, Berichte für eine Person zu schreiben, die selbst keine einzige Codezeile geschrieben hat, besteht das Risiko, dass sie früher oder später (und eher früher) mit der Hand wedelt und kündigt, obwohl das Gehalt über dem Durchschnitt liegt auf den Markt.
Daher ist es in Unternehmen, deren Erfolg in erster Linie auf der Arbeit von Entwicklern beruht, wichtig, die richtige Organisationsstruktur aufzubauen, in der zwischen Programmierern und klassischen Managern Zwischenverbindungen bestehen - Basis- und mittleres Management, das sich mit der Arbeit von Ingenieuren auskennt.
Es ist wichtig und ohne die Kontrolle über die Entwickler zu verlieren, Mikromanagement zu vermeiden, das ihre Produktivität beeinträchtigen kann. Entweder begehen Manager ohne IT-Vergangenheit, die häufig versuchen, mit ihrem eigenen Gefühl der Hilflosigkeit umzugehen, häufig diese Art der Hyperkontrolle, oder im Gegenteil, Führungskräfte der Einstiegsklasse, die selbst kürzlich codiert haben und jetzt befürchten, dass sie mit neuen Verantwortlichkeiten nicht fertig werden können.
Schließlich ist einer der typischen Gründe, warum Entwickler große Unternehmen am häufigsten verlassen,
mangelnde Autonomie bei wichtigen Entscheidungen sowie eine übermäßig eingeschränkte Auswahl an Tools, die manchmal nicht auf andere als unternehmerische Erwägungen zurückzuführen sind.
Fürsorge - oder besser gesagt „Fürsorge für einen gesunden Menschen“ - wird bei Entwicklern auf verschiedenen Ebenen zum Ausdruck gebracht: vom Verständnis der aktuellen Realität des Projekts (vielleicht ermöglicht das Projekt „Technikern“, 1-2 Tage die Woche von zu Hause aus zu arbeiten?) Bis zur Ergonomie des Raums, in dem Mitarbeiter (zum Beispiel nicht alle IT-Profis wie Freiräume).
Verknüpfen Sie die IT-Entwicklung mit den Unternehmenszielen
Oft beschuldigen Unternehmer und Manager Entwickler, das große Ganze nicht gesehen und die Geschäftsziele des Unternehmens übersehen zu haben. Vergebens. Systemarchitekten, Ingenieure und Programmierer müssen nicht in Finanz- und Marktkategorien argumentieren. Ja, „Produktdenken“ ist großartig, aber es wird in der richtigen Umgebung erzogen.
Damit Entwickler das tun können, was für das Unternehmen nützlich ist, müssen Sie sie in geeignete Bedingungen versetzen. Das Ziel ist es, zwei Fliegen mit einer Klappe zu schlagen. Auf der anderen Seite, um sicherzustellen, dass die Entwickler keine Fragen wie „Warum machen wir das?“ Haben. Auf der anderen Seite, um sicherzustellen, dass das Management keine technischen Manager für die Ergebnisse benötigt, die IT-Spezialisten an der Wurzel nicht verstehen. Und dieses Ziel ist erreichbar.
/ Flickr / Paul Downey / CC BYIn den letzten 20 bis 25 Jahren wurden viele Rahmenbedingungen und Kodizes für die besten Praktiken der Informationstechnologien entwickelt, die sich weiter verbessern. Darunter zum Beispiel ITIL und COBIT. Die erste
wurde erstellt , um die Bürokratie zu minimieren und verständliche reproduzierbare Regeln für die Durchführung von Routineprozessen in der IT zu erstellen. Und die
zweite wiederum wurde ursprünglich entwickelt, um die Anforderungen des Unternehmens mit den Prinzipien der Softwareentwicklung zu verbinden und zu synchronisieren.
Darüber hinaus trägt die Implementierung agiler Entwicklungsmethoden, vor allem Scrum, dazu bei, eine gesunde Umgebung für die Erstellung und Sicherstellung der Funktionsfähigkeit von IT-Produkten zu schaffen. Um zu verstehen, wie Ihr Unternehmen die Scrum-Prinzipien einhält, gibt es einen hervorragenden
Scrum Open- Test. Die in flexiblen Methoden angewandten Mechanismen tragen dazu bei, viele der oben beschriebenen Risiken auszugleichen.
Zum Beispiel konzentriert sich eine Person mit einer besonderen Rolle - „Scrum-Master“ - insbesondere darauf, wie das Team zu einer echten Teamarbeit werden kann. Einerseits werden die Ängste der Oldtimer des Teams beseitigt, die Angst haben, unnötig zu werden, andererseits werden Neulinge dazu gebracht, die lokalen "IT-Stars" zu respektieren.
Wir verstehen den Wert von Entwicklern und versuchen, ihnen das Arbeiten in 1cloud zu erleichtern . Im Moment erweitern wir unser Team und laden Sie gerne in die Rolle eines führenden Backend-Entwicklers ein . Neben der Koordination der Arbeit der Kollegen beschäftigen Sie sich mit Architektur und Mechanismen für die Interaktion unserer Lösungen mit anderen Systemen.
Als Grundvoraussetzungen: Erfahrung in der industriellen Entwicklung auf C # und der .NET-Plattform; gute Kenntnisse in SQL, T-SQL und Erfahrung mit MS SQL Server; Erfahrung mit Git, Erfahrung im Aufbau von CI / CD-Prozessen. Wir erwägen Vollzeitkandidaten. Unser Büro befindet sich im Zentrum von St. Petersburg (U-Bahn Chernyshevskaya).
Worüber wir in einem Unternehmensblog schreiben: