Wie stelle ich ein gutes DevOps ein, das zu meiner Firma passt?

20

Gute Entwickler sollten Regel 11 des Joel-Tests erfüllen :

Schreiben neue Kandidaten während ihres Interviews Code?

Ich weiß jedoch wenig bis gar nichts über Docker-Container, die Konfiguration von Jenkins oder AWS usw. Was wäre eine gute Möglichkeit, um zu testen, ob die Person, die sich bewirbt, solche Aufgaben verwalten kann?

Unterfragen: Ich glaube, dass ein guter Entwickler die Build-Kette einmal konfigurieren kann und von da an funktionieren sollte. Kann ich dann auch erwarten, dass er oder sie Entwickler in der Firma (DEVops) ist? Da DevOps ein relativ "neuer" Job ist, ist es für kleine Unternehmen vielleicht besser, einen Devop-Mitarbeiter zu teilen oder ihn als Freiberufler einzustellen, wann immer Sie ihn brauchen?

Bildbeschreibung hier eingeben Meine Verwirrung über den Begriff rührt von Stellenangeboten wie diesem her, auch hier auf stackexchange (= Link, von dem der obige Siebdruck stammt).

Ich fand diesen hilfreichen, aber möglicherweise mit einer Meinung versehenen Artikel, den Sie möglicherweise lesen möchten, wenn Sie über diese Frage stolpern: https://hackernoon.com/devoops-some-common-anti-patterns-1850ac2f5074

Thomas
quelle
3
Da DevOps keine Rolle spielt (es ist ein Modewort an sich), stellen Sie gemäß Ihrer Beschreibung einen modernen Systemadministrator ein.
Tensibai
5
Ich stimme ab, um diese Frage als Off-Topic zu schließen, da DevOps keine Rolle / Job-Position ist
Tensibai
2
@Tensibal Ich stimme Ihnen zu, aber ich bin auch versucht, diese Frage offen zu lassen, da dies zur Klärung dieses Missverständnisses beitragen kann - und wir können erwarten, dass diese Frage immer wieder und immer wieder auftaucht.
Michael Le Barbier Grünewald
2
@ MichaelGrünewald Füge eine Antwort hinzu, die dies verdeutlicht. Bei einer Aufwertung wird verhindert, dass die Frage verschwindet, auch wenn sie geschlossen ist. Das Beste aus beiden Welten: Klärt das Problem und bleibt als Off-Topic für die Site sichtbar, um zukünftige solche Fragen (die darauf dupliziert werden könnten) zu verhindern
Dan Cornilescu
3
@Tensibai FWIW, ich denke nicht, dass wir jemals eine Frage auf der Grundlage schließen sollten, dass "DevOps keine Rolle spielt". Jede Frage, bei der diese Verwirrung offensichtlich ist, ist eine Gelegenheit zur Klärung. Die Antwort auf die Frage sollte eine diesbezügliche Klarstellung und einen Link zu dieser Frage enthalten. Wenn wir Fragen schließen, nur weil sie den DevOps-Begriff verwirren, entfremden wir neue Benutzer und verpassen die Gelegenheit zur Klärung.
Dave Swersky

Antworten:

13

Es ist ein verbreiteter Irrtum, dass „DevOps“ eine Rolle in einem Unternehmen spielt. Das Wort bedeutet lediglich eine organisatorische Verschiebung in Softwareunternehmen. Diese Verschiebung kann kurz beschrieben werden durch „ Sie bauen es, Sie leiten es! Von Werner Vogels geprägt:

Es muss nicht zwischen Bauen und Laufen unterschieden werden, und laut Werner Vogels ist es viel besser:

Die Übernahme der operativen Verantwortung der Entwickler hat die Qualität der Services sowohl aus Kunden- als auch aus technologischer Sicht erheblich verbessert. Das traditionelle Modell besteht darin, dass Sie Ihre Software an die Wand bringen, die Entwicklung und Betrieb voneinander trennt, sie wegwerfen und dann vergessen. Nicht bei Amazon. Sie bauen es, Sie leiten es. Dies bringt Entwickler in Kontakt mit dem täglichen Betrieb ihrer Software. Es bringt sie auch in den täglichen Kontakt mit dem Kunden. Diese Kundenfeedbackschleife ist für die Verbesserung der Servicequalität von entscheidender Bedeutung.

Diese Lektion ist interessant, aber diese spezielle Änderung in einer Organisation ist nicht immer einfach umzusetzen.

Diese Verlagerung geht mit einer zunehmenden Bedeutung der kontinuierlichen Integration und der Bereitstellungsmethoden einher. Bitte beachten Sie, dass diese Ideen viel älter sind als die Formalisierung „agiler“ Methoden. Einige davon sind bereits in dem Bericht des wissenschaftlichen NATO-Ausschusses über Software-Engineering von 1968 enthalten!

Während der Wortlaut übersehen werden kann, werden in der Kurzbeschreibung des DevOps-Vorschlags (dieser Site) „Software-Ingenieure“ genannt:

Beta-Q & A-Site für Softwareingenieure, die an automatisierten Tests, kontinuierlicher Bereitstellung, Service-Integration und -Überwachung sowie dem Aufbau einer SDLC-Infrastruktur arbeiten.


Wenn Sie nun einen Softwareentwickler suchen, der Ihrem Team beim Einstieg in diese Methoden helfen kann, sollten Sie sich mit diesem Thema befassen. Auch wenn Sie mit diesem Thema nicht vertraut sind, lesen Sie den Abschnitt „Sie erstellen es! You run it! “Können Sie von einem Programmierproblem ausgehen und das Interview auf die Frage nach der Bereitstellung und Wartung der Anwendung leiten.

Michael Le Barbier Grünewald
quelle
3
Die Verwirrung basiert auch auf Stellenangeboten wie diesem: stackoverflow.com/jobs/135988/…
Thomas
2
Ja, es gibt viele Leute oder Organisationen, die "DevOps" als Rolle verwenden. Niemand kann beschuldigt werden, ein Opfer davon zu sein, und Ihre Frage ist nützlich, um dies zu klären. Vielen Dank, dass Sie sie gestellt haben, auch wenn sie wahrscheinlich endgültig geschlossen wird. Ich hoffe, Sie finden diese Antwort hilfreich und nutzen die Gelegenheit, auf andere Weise zu dieser Website beizutragen oder sie als Informationsquelle zu nutzen!
Michael Le Barbier Grünewald
@ThomasMoors: Ihr vorheriger (interessanter!) Kommentar sollte in Ihre eigentliche Frage integriert werden ... auch wenn es nur darum ging, Ihre Verwirrung zu dokumentieren ...
Pierre.Vriens
@ Pierre.Vriens getan
Thomas
1
Synonym / verwandte "essen Sie Ihr eigenes Hundefutter", tun Sie nichts, was Sie nicht verwenden
Tensibai
7

Auf das Risiko einer Abstimmung, eines Off-Topic oder gar einer Häresie hin sage ich Ihnen: "Hören Sie nicht auf die Puristen, die Ihnen sagen, dass DevOps keine Rolle spielt."

Du bist auf dem richtigen Weg. Es sollte zu Ihrem Unternehmen passen. Darauf kommt es bei der Einstellung an.

Wenn Sie ein DevOps benötigen, um wie ein DevOps zu arbeiten und Ergebnisse wie ein DevOps zu erzielen, ist es ein DevOps.

  • Lass dich von niemandem davon abbringen.
  • Trotzdem werben.
  • Interview trotzdem.
  • Trotzdem einstellen.

Erfahren Sie dabei mehr über DevOps, wie sich das Konzept in Ihr Unternehmen einfügen lässt, wie sich die Person einfügt.

Erfahren Sie mehr über die Rolle, die Sie ausfüllen müssen. Suchen Sie nach Fragen, die Sie stellen können. Es gibt viele Beispiele , auch wenn Sie kein Fachexperte sind. Etwas gute alte Geduld und harte Arbeit.

Benötigen Sie einen Mitarbeiter? Oder Freiberufler? Ein Alleskönner? Nur Sie kennen Ihre Firma gut.

Erstellen Sie Ihre einzigartige Kultur, die Ihre Interpretation von DevOps ist.

Kenchew
quelle
+1 dazu. Puristen wurden auf die Devops gehängt, ist keine allzu lange Antwort auf diese Frage , aber die Industrie, Jobbörsen und Personalvermittler haben es bereits in die Realität umgesetzt, und es ist an der Zeit, dass wir es so akzeptieren, wie es ist.
Grumpyops
6

"DevOps einstellen" wird schwierig, weil DevOps keine Rolle spielt. Wenn Sie einen Ingenieur mit Kenntnissen in Softwareentwicklung und -entwicklung finden , sind Sie auf dem richtigen Weg.

Allerdings ,

Ihr Einstellungsprozess wird durch einige Faktoren erschwert:

  1. Site Reliability Engineers (Googles Bezeichnung für Administratoren / Entwickler mit Programmierkenntnissen) sind selten
  2. Seltene Fähigkeiten sind teuer
  3. Seltene Fähigkeiten sind ... selten.

Die gute Nachricht ist, dass Sie möglicherweise kein voll qualifiziertes SRE benötigen.

Ihr Anwendungsfall besteht sozusagen darin, Ingenieure einzustellen, um Ihre Infrastruktur (AWS) einzurichten und Bereitstellungen (Jenkins) zu automatisieren. Diese Fähigkeiten sind nicht allzu selten, aber es kann schwierig sein, sie bei einer einzelnen Person zu finden.

Sie erwähnen auch, dass Sie selbst nicht über diese Fähigkeiten verfügen. Dies ist ein weiterer erschwerender Faktor. Sie verfügen nicht über die erforderlichen Fähigkeiten, um die Fähigkeiten Ihrer Kandidaten zu bewerten. Sie müssen letztendlich einen Weg finden, um die Fähigkeiten zu entwickeln (oder einzustellen, wie in einem Engineering Manager), die erforderlich sind, um diese Art von Ressource zu verwalten.

Dave Swersky
quelle
1
Es ist üblich, dass Mitarbeiter der Personalabteilung nicht über die Fähigkeiten der Mitarbeiter verfügen, die sie einstellen. Normalerweise ist es die beste Idee, ein Interview mit Fachleuten zu führen, um eine Bewertung der Kandidaten zu erhalten
Tensibai
Ich wollte sagen, dass ich ein guter Entwickler bin, aber ich möchte auch von Leuten umgeben sein, die sich irgendwann in anderen Disziplinen des Unternehmens auszeichnen, besser als meine.
Thomas
1
@ThomasMoors das ist eine sehr gute Idee. Machen Sie sich nicht zu viele Gedanken, ich spreche darüber, was ich über diese Website halte, aber ich bin nur einer in einer Menschenmenge. Sorry, wenn ich btw unhöflich klang
Tensibai
2

Es gibt zwei Möglichkeiten:

  1. Sie brauchen Hilfe, um herauszufinden, welche Änderungen Ihr Unternehmen auf Ihrem Weg zu DevOps vornehmen muss.

  2. Sie wissen, was Sie brauchen, und suchen nur nach Mitarbeitern, um diese Vision für Sie umzusetzen.

Wenn Sie jemanden brauchen, der Ihnen hilft, herauszufinden, auf welche Themen Sie sich konzentrieren müssen, gibt es eine wirklich gute Firma namens DORA (DevOps Research and Assessment), die von Dr. Nicole Forsgren, Jez Humble und Gene Kim mitbegründet wird. Nicole hat jahrelang die State of DevOps- Umfrage durchgeführt und führt seit Jahren detaillierte Statistiken über die Branche. Jez Humble ist ein Guru von Continuous Delivery und hat buchstäblich das Buch darüber geschrieben. Gene Kim ist der Autor des Phoenix-Projekts und die letzten beiden sind Mitautoren des DevOps-Handbuchs . DORA bietet eine Bewertung Ihres Unternehmens und hilft Ihnen bei der Beantwortung dieser Fragen.

Wenn Sie eine ziemlich gute Idee haben, wo Sie hingehen und jemanden brauchen, der Ihnen dabei hilft, ist es wahrscheinlich noch keine gute Idee, eine Personalagentur zu finden. Ich würde vorschlagen, zur DevOps Enterprise DOES-Konferenz oder zur lokalen DevOpsDays-Konferenz zu gehen und mit Leuten auf den Fluren zu sprechen. Suchen Sie nach Empfehlungen und öffnen Sie vielleicht sogar einen Stand, und machen Sie ein Plakat über die Einstellung.

Die zweite Möglichkeit wäre, hierher zu kommen und diese Fragen in diesem Forum zu stellen und nach den Experten zu suchen, die sie beantworten und sich abstimmen lassen. Viele von ihnen suchen möglicherweise tatsächlich einen Job oder eine Herausforderung. Manchmal kann es sogar hilfreich sein, Fragen zu Ihrer aktuellen Situation und Ihrem Anwendungsfall zu stellen, um die richtige Vorgehensweise zu finden.

Jiri Klouda
quelle
2

Ich suche nach einer Reihe von Dingen in den Leuten, die ich in diesen Raum eingestellt habe.

  • ein Minimum an 'ha' Agilität (google shu, ha, ri für eine agile Adoption, wenn Sie mehr benötigen)
  • technische praktische Erfahrung - Codierung, Automatisierung usw., aber ich bin Tool- und Sprachunabhängig
  • lernende Persönlichkeit - sie ergreifen die Initiative, um ständig zu lernen
  • neugierig und nicht schuldbewusst - sie können Scheitern als Lernstunde akzeptieren
  • Sie sind ein Teamplayer, dem man vertrauen kann und dem man vertrauen kann, da die psychologische Sicherheit der wichtigste Erfolgsfaktor für leistungsstarke Teams ist
  • Sie können coachen und betreuen - sie teilen ihr Wissen, ohne elitär zu sein - Primadonnen haben keinen Platz in leistungsstarken Teams
  • Sie haben "genug" soziale Fähigkeiten, da sie Teammitglieder sein und gut kommunizieren müssen

Ich habe noch keinen perfekten Kandidaten gefunden, es ist also immer ein Kompromiss. In der heutigen Welt habe ich über 65 Lebensläufe durchgesehen, die von Agenturen und der Personalabteilung als Kandidaten "vorqualifiziert" wurden, 50 oder mehr als nicht meinen Mindestanforderungen auf Papier entsprochen, 15 oder mehr befragt und 3 eingestellt besserer Teil von 9 Monaten.

icewav
quelle
Als Ergänzung dazu ist das, was ich in Ihrem Beitrag vermisse, eine Beschreibung dessen, was Sie für vermisst halten, und die Aussage, dass es einige Mängel ohne Anleitung gab, wie man diese
Mängel abdeckt,
Wenn Personen keinen Lebenslauf einreichen, der auf die Mindestanforderungen für die Stellenausschreibung abgestimmt ist, erfüllen sie nicht meine Mindestanforderungen, um im Prozess weiter voranzukommen. Wenn eine Person wirklich für eine Position in Betracht gezogen werden möchte, muss sie dies mit einiger Anstrengung zeigen. Als Einstellungsmanager ist es mein Standpunkt, der zählt, weil ich weiß, wonach ich suche.
icewav
Hört sich nach einem guten Rat an, um 'einen auf den Job abgestimmten Lebenslauf veröffentlichen' hinzuzufügen. Das ist einfacher zu überprüfen, als Ihre Anforderungen auf dem Papier zu erraten. Wenn Ihre Anforderungen die Aufzählungspunkte oben sind, könnte "Meine Anforderungen oben auf dem Papier" eine bessere Formulierung sein
Tensibai
Leider ist die Aufzählung oben das, was ich aus dem Interview unterscheiden muss. Meine Mindestanforderungen und meine bevorzugten Anforderungen sind in meinen Stellenausschreibungen deutlich angegeben und ändern sich je nach den Fähigkeiten, die ich zur Abrundung eines Teams benötige. Der Antragsteller erhält in der Regel ein Vorstellungsgespräch, wenn er die Mindestanforderungen erfüllt, und fast immer, wenn er die Mindestanforderungen sowie einige der bevorzugten Anforderungen erfüllt. Obwohl dies vage erscheinen mag, bin ich in jeder Stellenanzeige, die ich mache, sehr genau darüber informiert, wonach ich bei einem erfolgreichen Bewerber suche.
ICEWAV
Es gibt einen Prozentsatz von Kandidaten, die fälschlicherweise behaupten, was in ihrem Lebenslauf steht. Diese Bewerber bekommen nie ein Interview mit mir. Beispiel: Behaupten Sie, Sie haben eine Scrum Alliance-Zertifizierung. Da ich über einige ihrer Zertifizierungen verfüge, kann ich mich anmelden und Ihre überprüfen.
ICEWAV
1

Abgesehen von anderen Fragen, von denen ich glaube, dass die folgende Antwort noch fehlt, möchte ich das, was ich bisher gelernt habe, in einem überwiegend bescheidenen Ton zusammenfassen:

Die Einführung von DevOps-Fähigkeiten in Ihr Team reicht wahrscheinlich nicht aus (das heißt, Sie können keine DevOps einstellen)! (Wie auf einer niedrigeren Ebene zu fragen, was die besten Werkzeuge sind, um die Dinge zum Laufen zu bringen, hier möchten Sie anscheinend, dass Ihre Organisation funktioniert).

Die eigentliche Frage ist: Wie sieht Ihre Strategie zur digitalen Transformation bei oganizations aus und wie viel gutes DevOps hilft Ihnen dabei, mehr Kundennutzen zu schaffen und Ihre Kosten zu senken , obwohl Sie immer noch ein gutes Klima haben?

DevOps zeigt die Notwendigkeit von Veränderungen auf, und Veränderungen erfordern die Übernahme von Verantwortung.

Stellen Sie sich eine Situation vor, in der DevOps möglicherweise Druck auf andere Teams ausübt. DevOps ist manchmal ein Ergebnis der Entwicklung von Agile and Continuous Integration - was sind Ihre Stärken hier?

Peter
quelle