Möchten Sie die besten Ingenieure gewinnen? Code öffnen

„Intelligente Entwickler lieben es, mit intelligentem Code zu arbeiten. Indem Sie hochwertige Quellen entdecken, ziehen Sie Talente an. “


Kevin Ma Illustration

"Kennen Sie Open Source Facebook-Projekte?"

James Pierce, ehemaliger Direktor des Open-Source-Programms von Facebook, stellte den Ingenieuren eine solche Frage. Er untersuchte die Gründe, warum sie in die Firma kamen. Laut seiner Präsentation auf der Open Source Convention von O'Reilly wussten zwei Drittel der Facebook-Ingenieure über dieses Programm Bescheid, bevor sie in das Unternehmen eintraten, und die Hälfte sagte, es habe sich „positiv auf ihre Entscheidung ausgewirkt, auf Facebook zu arbeiten“.

Facebook ist nicht allein. Unabhängig von der Unternehmensgröße ist Open Source eine der besten Möglichkeiten, die besten Ingenieure anzuziehen. Wir haben 30 führende US-Technologie-Startups (nach der Anzahl der für einen Job eingereichten Bewerbungen) auf AngelList im Laufe der Geschichte analysiert und festgestellt, dass mehr als die Hälfte von ihnen Open Source-Projekte hostet:



Open Source richtig einzusetzen, um Ingenieure anzulocken, ist eine ganze Kunst. Es reicht nicht aus, ein Repository auf GitHub zu veröffentlichen - und auf das Beste zu hoffen. Um die Rekrutierung zu fördern, sollten Sie sich an jedes Open Source-Projekt als Vermarkter wenden.

1. Schreiben Sie einen lesbaren Code


Der Zweck des Öffnens des Codes besteht darin, dass Entwickler ihn studieren und möglicherweise einen Beitrag leisten. Dazu muss der Code so klar wie möglich geschrieben werden. Das heisst:

  • Möglichkeit des einfachsten Refactorings möglich
  • Befolgen Sie die Stilkonventionen für Namen, Einrückungen usw.
  • Private Informationen durch Umgebungsvariablen ersetzen
  • Einzelne Fragmente kommentieren

Das React -Beautiful-Dnd- Tool zum Erstellen von Drag-and-Drop-Schnittstellen (im Trello-Stil) in React ist ein gutes Beispiel für gut geschriebene Open-Source-Software.

Die Projektstruktur ist modular aufgebaut, der Code ist klar und sorgfältig auskommentiert:



Gehen Sie beim Öffnen der Quellen auf jede Datei zu, als hätte der Leser den Rest der Codebasis überhaupt nicht gesehen - da dies mit ziemlicher Sicherheit der Fall sein wird. Das obige Beispiel zeigt einen einfachen Export, aber die Kommentare erläutern jede Funktion, im Code einen konsistenten Stil und sprechende Eigenschaftsnamen, die ihre Werte genau widerspiegeln.

Infolgedessen hat das Repository mehr als 10.000 Sterne auf GitHub und Commits von Dutzenden von Teilnehmern. Die Schlussfolgerung ist einfach: Je einfacher es für Entwickler von Drittanbietern ist, Ihren Code zu verstehen, desto einfacher ist es für sie, Beiträge zu leisten.

2. Schreiben Sie eine effektive Dokumentation


Die Dokumentation ist Ihr Werbeheft. Es sollte auf den ersten Blick die Ingenieure davon überzeugen, dass Ihr Projekt eine Teilnahme wert ist. Dazu benötigen Sie:

  • Formulieren Sie den Wert des Projekts
  • Erläutern Sie alle Aspekte und Prozesse, damit die Mitwirkenden keine Fragen mehr haben
  • Listen Sie technische Spezifikationen, Abhängigkeiten und Lizenzen auf
  • Bieten Sie einfachen Zugriff auf Referenzmaterial für Sonderfälle

Das Annoy-Projekt (Approximate Nearest Neighbors Oh Yeah) von Spotify , eine Bibliothek, die „im Raum nach Punkten in der Nähe eines bestimmten Abfragepunkts sucht“, ist ein Beispiel für eine sehr gute Dokumentation. In der README-Datei erfahren Sie, wie Sie eine Bibliothek und Umgebung installieren, Codebeispiele enthalten, Abhängigkeiten auflisten und tief in die Softwarelogik eintauchen.

Außerdem wird die Annoy-Geschwindigkeit mit anderen Bibliotheken des nächsten Nachbarn verglichen:



Nur eine Seite Dokumentation bietet Entwicklern alle Informationen, die sie benötigen, um zu entscheiden, ob sie an diesem Projekt teilnehmen möchten.

3. Bewerben Sie das Repository als Produkt


Im Jahr 2018 wurden täglich über 82.000 Repositories auf GitHub veröffentlicht. Um Ihr Projekt unter Millionen anderen hervorzuheben, sind Aufwand und Strategie erforderlich. Dies unterscheidet sich nicht so sehr von der Einführung eines echten Produkts. Berücksichtigen Sie die folgenden Optionen, um ein neues Repository zu bewerben:

  • Beliebte Websites: Hacker News, Reddit, Tech Ladder
  • Relevante Communities: Product Hunt, Gitter, Dev.to.
  • Kanäle, in denen Sie bereits ein Publikum haben: Mailingliste, soziale Netzwerke und vieles mehr

Sie können kreativ sein und andere Marketingtaktiken anwenden. Beispielsweise führte das Hack4Impact- Team (eine gemeinnützige Organisation, die Software für andere gemeinnützige Organisationen erstellt) Schulungsworkshops an lokalen Universitäten durch, damit die Studenten ihre neue Bibliothek nutzen können. So erschien das Repository schnell Gabeln und Sterne.

Wenn sich ein Unternehmen für Entwickler mit einer engen Spezialisierung interessiert, ist die Werbung noch wichtiger. Das Startup Wallaroo Labs , mit dem Kunden umfangreiche Datenanwendungen bereitstellen können, verfügt über eine Codebasis in einer ziemlich seltsamen Sprache namens Pony. Als das Unternehmen in den letzten zwei Jahren den gesamten Code öffnete, bewarb es aktiv das Repository, schrieb Artikel in Blogs, verteilte Interviews und sprach auf Konferenzen darüber, wie die gesamte Codebasis auf Pony aufgebaut werden kann.

Der Entwicklungsleiter von Wallaroo, Sean Allen, sagte, die Kampagne sei effektiv: „Viele der Leute, die uns interviewten, waren Leute, die für Pony arbeiten wollten und [interessiert wurden], weil unsere Codebasis die größte Codebasis von Pony im Freien ist Zugang. "

Stellen Sie sich Ihr Repository als Produkt und Ingenieure als Zielgruppe vor.

Warum die besten Ingenieure Open Source befürworten


„Das Öffnen der Quelle ist unerlässlich, wenn Sie die besten Mitarbeiter der Branche einstellen möchten“, sagt Daniel Dubrovkin, technischer Direktor von Artsy . Er erklärt: „Persönliche technische Marken sind für einzelne Entwickler sehr, sehr wichtig geworden. Ingenieure wollen heute ihre Fähigkeiten zunehmend offen demonstrieren, anstatt sie zu verbergen. "Sie wollen mit offener Software arbeiten, weil sie dadurch einen gewissen Ruf haben."

Zu diesem Zweck entschied Dubrovkin, dass seine Entwicklungsteams standardmäßig mit Open Source arbeiten würden. Um einen solchen Standardansatz aufzugeben, sollte der Ingenieur den geschäftlichen Grund klar erläutern, warum dieser Code nicht öffentlich veröffentlicht werden sollte. Infolgedessen sind die meisten Artsy-Materialien jetzt gemeinfrei (sogar Materialien für die Einstellung ). "Die besten Unternehmen ändern ihre Geschäftsanforderungen entsprechend den Wünschen einzelner Entwickler, die ihre eigene Marke aufbauen möchten", sagte er.

Die Personalabteilung von Dubrovkin nutzt nun die Tatsache, dass Artsy-Ingenieure den Code als Marketingvorteil öffentlich mit ihrem Namen teilen müssen, und dieser Vorteil gilt nicht nur für sein Unternehmen.

"Kluge Leute lieben es, mit anderen klugen Leuten zu reden", schrieb Tom Preston-Werner, Mitbegründer von GitHub. - Intelligente Entwickler lieben es, mit intelligentem Code zu arbeiten. Indem Sie hochwertige Quellen entdecken, ziehen Sie Talente an. “

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


All Articles