Wie kann man Menschen dazu bringen, an sehr alten und veralteten Technologien zu arbeiten?

Ich arbeite in einem IT-Unternehmen, das sich stark auf Projekte spezialisiert hat, die mit alten und veralteten Technologien erstellt wurden.

Die größten Projekte sind normalerweise eine Mischung aus Cobol (die ältesten Versionen, nicht die modernsten) und Java 4 (mindestens 60 Projekte auf diesem Stack), aber wir haben auch Projekte in Java 2 (weniger als 5), Java 3 (a Dutzend), Java 4 allein (mindestens 30) und Java 5 und 6 (normalerweise Übersetzung ohne Umgestaltung der Architektur oder Logik von Projekten in älteren Java-Versionen). Wir verwenden normalerweise keine Java-Frameworks (wie Spring, Hibernate usw.), hauptsächlich weil diese Frameworks zu Beginn des Projekts noch nicht existierten. Wir haben auch Assembly, Assembly - Cobol, Assembly - Cobol - Java (normalerweise Java 4), C, C++, Fortran, Visual Basic-Projekte (und wahrscheinlich ein paar andere Sprachen). Unsere Softwareprojekte haben oft keine grafische Oberfläche; wenn eines existiert, ist es in Cobol oder in JSP, das Tabellen anzeigt (CSS wird kaum verwendet und es gibt nur eine Reihe von Projekten, die Vanille-Javascript verwenden). Unsere Projekte dauern normalerweise 3 bis 5 Jahre, aber wir haben auch Projekte, die über 20 Jahre gedauert haben (soweit ich weiß, ist dies in der IT-Welt sehr, sehr ungewöhnlich).

Wir KÖNNEN den Stapel der Projekte und die verwendete Sprache NICHT ändern, da dies eine Wahl des Kunden ist. Wir arbeiten mit multinationalen/weltweiten Banken und Versicherungsgruppen zusammen, die diese Sprachen weit verbreitet verwenden. Ein Beispiel: Eine weltweite Bank- und Finanzgruppe hat alle ihre internen Systeme (nicht nur Batch, sondern auch die, die von Operatoren in Filialen verwendet werden) in Cobol auf Mainframes. Der einzige Teil des Systems, der nicht in Cobol enthalten ist, ist die Homebanking-Site, die eigentlich nicht unsere ist.

Menschen, die in meinem Unternehmen arbeiten, bleiben laut HR-Statistiken im Durchschnitt etwa 6,5 ​​Jahre (eine andere Sache, die in der IT sehr ungewöhnlich ist), aber wir haben Kollegen, die hier seit 20 oder 25+ Jahren arbeiten (vielleicht am selben Projekt oder bei ähnlichen Projekten). Unser Gehalt ist weit über dem Durchschnitt (HR-Statistiken, Gespräche mit Freunden in anderen Unternehmen und einfach unsere Stellenangebote mit denen anderer vergleichen), denn ein Senior könnte das Doppelte der Konkurrenz erreichen.

In den letzten 5 Jahren (und noch mehr in den letzten 2 Jahren) haben wir mit enormen Schwierigkeiten bei der Einstellung neuer Entwickler zu kämpfen, insbesondere von Junior- bis Mid-Level-Entwicklern. Viele unserer Stellenausschreibungen für diese Positionen erhalten eine lächerlich geringe Anzahl von Bewerbungen, und noch weniger sind die Leute, die sich nach dem ersten Vorstellungsgespräch für unsere veralteten Projekte interessieren. Wie können wir diesen Trend umkehren?

Wie groß ist Ihr Unternehmen: einige Dutzend Mitarbeiter oder mindestens mehrere Hundert Entwickler? Das ist sehr wichtig!
Etwas, das mir aus Ihrer Frage unklar ist: Ist Ihr Geschäftsmodell Placement oder Outsourcing? Mir fallen mehrere Antworten ein, die für die eine relevant sind und für die andere nicht.
Dies scheint zu weit gefasst zu sein – fast jede Rekrutierungsmethode, Mitarbeitervergünstigungen (auch wenn Mitarbeiterbindung nicht Ihr Problem ist – die Leute sprechen und suchen nach verschiedenen Dingen in einem Job und das macht Ihre Stellenbeschreibung attraktiver) und Dinge, die das Firmenimage verbessern würden hier bewerben.
Schließen Sie Vorteile wie Remote ein?
@kdgregory Entschuldigung, ich habe es nicht verstanden. Bis auf wenige Ausnahmen sagen uns Kunden „das sind die Technologien, das sind Spezifikationen, wir brauchen das, entwickeln die Lösungen“, manchmal werden auch Zeit und Budget von Kunden vorgegeben. Ihrer Definition nach sind wir also zumindest für die große Mehrheit der Projekte „ein Karosseriebau“.
@LeopoldT Möglicherweise lohnt es sich auch, ein Länder-Tag hinzuzufügen, da die möglichen Vorschläge je nach Gebietsschema unterschiedlich sein können.
Ich denke, dass es einige gute Antworten gibt, aber es könnte Ihnen weiterhelfen, ein Beispiel für eine Ihrer Stellenanzeigen zu veröffentlichen. Es könnte offensichtliche Dinge geben, die wir nicht einmal in Betracht ziehen.
Ich denke, es ist für die Community nicht hilfreich, dass Fragen wie diese als zu allgemein gehalten werden. Die Frage selbst ist sehr spezifisch. Sie haben ein Problem, das sie für Retro-Technologie einstellen müssen. Dieses Problem erfordert jedoch kreative Lösungsvorschläge aus unterschiedlichsten Blickwinkeln. Es kann tatsächlich eine sehr spezifische und überlegene Antwort geben, und Sie können nicht wissen, dass es keine gibt.
Ich denke, die Kunden fragen nach Java, aber nicht Java 2 statt Java4... Wie auch immer, ich denke, Sie sollten nach einem anderen Grund für die Schwierigkeiten bei der Einstellung suchen, weil es seltsam erscheint zu sagen, dass Entwickler nicht in Java arbeiten wollen oder C++ nicht mehr.
Upvoted, weil C# in eine solche Liste aufgenommen wird ... bald (wenn nicht schon).
Wählen Sie eine prominente moderne Sprache, die zu Ihrem Anwendungsfall passt, konvertieren Sie Code, der in dieser Sprache geschrieben wurde, in Code, der in diesen anachronistischen Sprachen geschrieben wurde, indem Sie Transpiler verwenden, die Sie entwickeln. Clojure und andere Scheme-Dialekte eignen sich gut zum Erstellen neuer Sprachen, sie sollten auch gut zum Erstellen alter Sprachen sein. Um die Wirkung zu maximieren (und die Entwicklungszeit zu minimieren, wenn die Transpiler geschrieben werden), würde ich jedoch eine Syntax im Stil von Javascript oder Python für die Eingabesprache wählen. Als Plus können Sie die Transpiler an andere Unternehmen verkaufen.

Antworten (25)

20 % Zeit + Open Source

Sie haben wahrscheinlich schon von der 20 %-Zeitrichtlinie von Google gehört. Im Wesentlichen kann jeder Mitarbeiter darum bitten, bis zu 20 % seiner Zeit für Lieblingsprojekte zu verwenden.

Ich schlage vor, dass Sie etwas Ähnliches implementieren.


Das Problem der Arbeit mit veralteten Technologien bei Instandhaltungsprojekten ist zweierlei:

  1. Technology Skill Obsoleszenz: Die im Projekt erlernten Technologien öffnen keine Türen; Dies bedeutet, dass Sie nicht mehr auf den Ruhestand vor Ihrer Erfahrung setzen müssen.
  2. Tod der Kreativität: Wartungsarbeiten, insbesondere bei High-Stakes-Projekten, erfordern oft die größtmöglichen chirurgischen Änderungen. Hier gibt es viele wichtige Fähigkeiten, aber ich würde NIEMALS in einem Job arbeiten, in dem groß angelegte Verbesserungen unmöglich sind.

Hier kommt 20 % Zeit ins Spiel!

Ermutigen Sie Ihre Mitarbeiter in ihrer 20%-Zeit, Spaß zu haben. Ich persönlich würde die Teilnahme an Open Source-Projekten empfehlen, da dies sowohl für Ihr Unternehmen als auch für sie mehrere Vorteile hat:

  1. Es fördert Ihr Unternehmen: Sehen Sie, diese Leute werden dafür bezahlt , sich auf X, Y, ... zu entwickeln.
  2. Es hilft Mitarbeitern, Fähigkeiten in dem Bereich zu entwickeln, an dem sie interessiert sind: von Kerneln bis zu JavaScript/CSS-Frameworks, mit allem von Grafik, maschinellem Lernen, Big Data usw.
  3. Es gibt den Mitarbeitern einen Kreativitätstrichter: Gehen Sie nicht wild auf die COBOL-Codebasis zu, es gibt wahrscheinlich ein Open-Source-Projekt, das möchte, dass die Leute fortschrittliche Designideen entwickeln!

Und das Beste ist, wenn sich einer Ihrer Kunden entscheidet, auf Big Data Framework X umzusteigen (ich höre, es ist der letzte Schrei), können Sie sich mit etwas Glück rühmen: „Weißt du, wir haben zufällig 3 Mitwirkende an das Projekt in unserem Team mit all dem Fachwissen, das Sie benötigen, um Sie bei der Gestaltung Ihrer Anwendung zu unterstützen!".


Fürstlich bezahlt, um an coolen Open-Source-Projekten meiner Wahl zu arbeiten?

Nun, das ist ein cooles Angebot!

Kommentare sind nicht für längere Diskussionen gedacht; diese Konversation wurde in den Chat verschoben .

Wenn Sie jemanden mit COBOL-Erfahrung suchen, haben Sie Pech. Wer könnte also diesen Job machen? Jemand weniger als zehn Jahre vor der Pensionierung, der es sich leisten kann, auf eine Sackgassentechnologie umzusteigen, und der bereit ist, eine neue / alte Sprache zu lernen. Ich habe erst kürzlich Swift gelernt. Im Vergleich dazu ist COBOL primitiv (ich weiß es, habe 1979 einen zweiwöchigen Kurs gemacht). Es ist überhaupt kein Problem, es zu lernen. Werben Sie für jemanden mit Erfahrung, der alles gesehen hat, bieten Sie ein hervorragendes Gehalt mit mehrjährigen Jobaussichten und sagen Sie ihm, dass er COBOL lernen soll, nicht wissen.

PS: Es gibt Entwicklungsumgebungen, mit denen ich mich nicht abfinden würde, das könnte also ein Problem sein.

Ich habe gesehen, wie andere Unternehmen dies angehen, um dies unterversorgten Gruppen von Menschen anzubieten, z. B. Menschen, die aus dem Gefängnis entlassen wurden, oder genesende Süchtige. Sie haben wahrscheinlich weniger Optionen und springen eher auf so etwas.
COBOL ist primitiv, aber nicht tot.
@Thorbjørn Ravn Andersen "Sackgasse", nicht "tot". Und das ist es. Es gibt keine neuen kommerziellen Projekte mit COBOL. Und die Wartung wird nur so lange benötigt und bezahlt, bis die Unternehmen schließlich auf modernere Technologien umsteigen.
@Kakturus Stimmt. Ich habe falsch gelesen, was du geschrieben hast.
@Kakturus Sie haben den anderen Grund vergessen: Das Unternehmen selbst stirbt.
and tell them they are expected to learn COBOL, not know it.ist hier wohl ein Schlüssel. Selbst wenn ich heute eine Karriere bei COBOL starten wollte, würde ich es für unmöglich halten, da ich denke, dass jedes Unternehmen 10 Jahre Erfahrung in der Sprache benötigt. Vielleicht betiteln Sie die Stellenausschreibung nicht einmal "COBOL-Entwickler", sondern eher "Softwareentwickler", damit mehr Leute sie sich ansehen und tatsächlich in Betracht ziehen.
Sie müssen kein COBOL-Entwickler sein, um in COBOL zu arbeiten. Und in COBOL gearbeitet zu haben, macht Sie nicht zu einem COBOL-Entwickler, es bedeutet nur, dass Sie einige (meistens nutzlose) Erfahrungen mit COBOL haben. Der Job wird jedoch wahrscheinlich ziemlich langweilig und ohne wirkliche Aufstiegschancen sein (wie Sie es bei der Arbeit an moderner Technologie haben), und Sie sollten damit rechnen, Entwickler dafür entschädigen zu müssen.
Einer der wichtigsten Bestandteile dieser Antwort ist Geld. Zahlen Sie genug Geld und sie werden kommen.
Ein Senior, kurz vor dem Ruhestand? Ein Junior-Entwickler, der bereit ist, COBOL zu lernen? Mitarbeiter mit technischem Hintergrund, die möglicherweise entlassen wurden? Möchten Sie Ihre Altersvorsorge aufstocken? Hey das bin ich! Wo ist dieser Job gelistet...?
@Magisch: Wenn Kunden Banken sind, könnten Menschen aus dem Gefängnis ein Problem sein. Andere alternative Zielgruppen, OTOH, könnten interessant sein.
@ gazzz0x2z Jail könnte ein Problem sein, sollte es aber nicht sein. Bei einer ordnungsgemäßen Codeüberprüfung sollte es unmöglich sein, Hintertürcode einzuschleusen. Wenn OP willkürliche Eintrittsbarrieren errichtet, bekommt er/sie kein Mitgefühl von mir. Der ehemalige Direktor des FBI sagte, er könne nicht genug Softwareentwickler für das FBI arbeiten lassen, aber das FBI werde niemanden über 35 einstellen. Als Person über 40 sage ich eff sie.
@immibis the job will probably be quite boringYKMMV, einige Leute mögen zu Recht die Herausforderung, gegen byzantinischen, jahrzehntealten Code zu kämpfen. Die Möglichkeit, alte Apps zu warten, ist wertvoll, Nicht-IT-Unternehmen werden routinemäßig alte Apps verwenden, weil sie funktionieren und neue zu erstellen nicht ihr Kerngeschäft ist. Ich denke, das ist etwas, das Sie vielleicht verkaufen können, aber wenn wir ehrlich sind, führt Sie das in ein ziemlich enges Feld.
Um dem noch eine weitere Dimension hinzuzufügen: Nicht alle Unternehmen, die Cobol verwenden, sind wie die Kunden von OP, die sich nie ändern wollen – viele möchten ihre alten Programme aktiv in eine modernere und populärere Sprache umwandeln. Ich denke, dieser Markt wird in den nächsten zehn Jahren noch größer werden. Die Einstellung polyglotter Programmierer, die bereit sind, Cobol zu lernen, wird es einem Outsourcing-Unternehmen ermöglichen, diesen Markt zu knacken.
Bekannte Parodie If Carpenter Were Hired Like Software Developers , wo der Kunde mit dem Autoverkäufer zur Tischlerei geht, anstatt mit dem Tischler, weil der Autoverkäufer mehr Erfahrung mit braunen Autos hat als der Tischler mit braunen Wäldern. TL;DR: Programmieren ist Programmieren, der Denkprozess ist schwerer zu kultivieren als die sprachlichen Eigenheiten.
Ich würde diese Behauptung, COBOL sei tot oder eine Sackgassentechnologie, stark in Frage stellen. Es ist definitiv keine Wachstumstechnologie, und die Fähigkeiten werden nicht ins Silicon Valley übertragen, aber es gibt immer noch eine lächerliche Anzahl großer Fortune-500-Unternehmen, die mit Mainframe verheiratet sind. Allein die Versicherungs- und Bankenbranche könnte einen Entwickler für die nächsten 25 Jahre beschäftigen. Solange es riesige Mengen an Big-Data-Berechnungen gibt, die über Nacht verarbeitet werden müssen, wird Mainframe weiter bestehen bleiben.
Die Idee, dass COBOL eine „Sackgasse“ ist, ist bizarr. Swift ist eine Sackgasse. Go ist eine Sackgasse. Erinnerst du dich, wie cool und neu Objective-C war? Lol. Darüber hinaus ist COBOL, wie Dank richtig anmerkt, ein >>> RIESIGES <<< Feld. Es ist völlig bizarr, dass jeder arbeitende Programmierer nicht erkennen würde, welche Fluten, Lawinen, an Geld man verdienen kann, wenn man an den LUKRATIVSTEN SYSTEMEN DER WELT (die natürlich in Cobol sind) arbeitet. Wo bist du gewesen?
Dies gilt nicht für COBOL. Wenn Sie mehr Gehalt anbieten, erhalten Sie natürlich mehr Möglichkeiten, aber COBOL hat tatsächlich eine Kult-Anhängerschaft unter jüngeren Programmierern, und einige von ihnen sind wirklich gute Programmierer. Ich weiß das, weil mir letztes Jahr ein Job als Autor von COBOL angeboten wurde und ich begann, mich damit zu beschäftigen, um es auszuprobieren und zu sehen, wie ich mich beim Schreiben und Versuchen in COBOL zu fühlen fühlte, also interagierte ich mit der Community. Sie haben richtig gelesen: Es gibt eine COBOL-Community! Nicht nur das, aber CS-Studenten sind sich bewusst, dass COBOL-Jobs existieren und viel mehr bezahlt werden können als andere Arten von Programmierung. Tu es nicht so leichtfertig ab!
genau wie @ L0j1k sagt. Einige der Sachen auf dieser Seite sind absolut bemerkenswert und stammen von echten Programmierern - jeder, der eine Einheit grundlegender Informatik an einem schlechten örtlichen College gemacht hat, weiß, dass es absolut keinen Unterschied zwischen allen Programmiersprachen gibt. Jeder mit den geringsten Kenntnissen in Comp Sci muss wissen, dass Sie jede Abstraktion aus einem trivialen Satz von Befehlen konstruieren können. Seltsame Qualitätssicherung.

Dies ist das Problem der zunehmenden technischen Verschuldung und des Festhaltens an veralteter Technologie – die Anzahl der mit der Technologie vertrauten Personen nimmt zunächst langsam und dann schnell ab, wenn sie älter werden und die Belegschaft verlassen.

Schließlich werden die Leute, die die Technologie verstehen, rar wie Hühnerzähne sein und hohe Gehälter verlangen, wenn die Technologie für das Geschäft ausreichend wichtig ist. Gleichzeitig ist die Zahl der Unternehmen, die Menschen mit diesem Hintergrund benötigen, verschwindend gering.

Der Name des Spiels im modernen IT-Umfeld lautet Karrieresicherheit. Wenn Sie weiterhin mit einem veralteten Technologie-Stack stecken bleiben, wird es Ihnen schließlich immer schwerer fallen, einen neuen Job zu finden. Aus diesem Grund wollen Junior- und Mid-Level-Entwickler nicht mitmachen – es könnte ein Todesurteil für ihre Karriere sein.

Das Beste, was Sie tun können, ist, Ihre aktuellen Anwendungen und Kerntechnologien regelmäßig auf moderne Standards zu aktualisieren. Dies bedeutet, dass fast alles neu geschrieben werden muss – möglicherweise komplett von Grund auf neu. Dies wird zeitaufwändig, schwierig und mehr als wahrscheinlich kostspielig sein. So gewinnen Sie neue Leute an Bord – indem Sie ihnen mitteilen, dass Sie mit den neuesten Technologie-Stacks auf moderne Standards aktualisieren.

Andernfalls werden Sie irgendwann feststellen, dass es niemanden gibt, der auch nur versuchen kann, das Problem zu beheben, wenn eine geschäftswichtige Anwendung oder ein Dienst irgendwann kaputt geht.

Kommentare sind nicht für längere Diskussionen gedacht; diese Konversation wurde in den Chat verschoben .

Seien Sie möglicherweise eher bereit, ältere Menschen einzustellen, z. B. diejenigen, die in den Arbeitsmarkt zurückkehren, nachdem sie als Eltern oder Betreuer zu Hause geblieben sind.

Meine allgemeine Erfahrung ist, dass die IT-Branche unglaublich altersschwach ist, oft zu ihrem eigenen Nachteil.

Dies scheint bei weitem die vernünftigste Antwort zu sein. Ich kenne mehrere sehr erfahrene Entwickler, die in modernen Softwareumgebungen auf der Stelle treten und frustriert sind, weil sie von bärtigen Kerlen umgeben sind, die glauben, alles zu wissen, aber nicht auf die Leute hören wollen, die die von ihnen verwendeten Systeme ERFUNDEN haben! Es ist auch erwähnenswert, dass die Mehrheit dieser veralteten Genies Frauen sind. (Rechnen war früher ein Job für Mädchen, falls die bärtigen Jungs das übersehen haben.) Also werben Sie für ältere Experten. Fragen Sie vielleicht sogar einige von ihnen, was sie dazu bewegen würde, sich zu bewerben – und erwägen Sie, gezielt Frauen anzusprechen.
+1 Eine Rente mit einer kurzen Wartezeit könnte auch dazu beitragen, ältere erfahrene Programmierer anzuziehen, und wie ein anderer vorgeschlagen hat, müssen sie nicht die Sprachen beherrschen, sondern bereit sein, sich zu schulen.
In der Praxis bedeutet dies Dinge wie: Teilzeit- oder Job-Sharing-Anstellungen, mobiles Arbeiten (teilweise oder vollständig) mit Unterstützung (z. B. Hardware, Möbel usw.), Kinderbetreuung, großzügiger Krankenstand / Kinderkrankenstand, gut Versicherungen, Umzugspakete & Ehegattenunterhalt, gute Rente. Die Verwendung eines alters- und geschlechtsblinden Rekrutierungsprozesses (und Werbung dafür) wird auch dazu beitragen, potenziellen Bewerbern Unterstützung zu signalisieren.
Ein Bekannter von mir, ein Maschinenbauingenieur, arbeitet jetzt bei einer Bank an COBOL. Er sagt, dass 64 % der Bankensysteme der Welt immer noch mit diesen Steinzeitsprachen arbeiten. Er ist einer der vielen weniger ehrgeizigen Ingenieure in Indien, die es schwer haben, einen Job in der richtigen Richtung zu bekommen, und bald eine Familie zu ernähren haben. Sie werden also jeden Job annehmen, der weniger Konkurrenz hat und ihnen ein monatliches Gehalt einbringt, lange genug, um eine Familie zu ernähren. Auch ohne Sonderleistungen verrichten sie ihre Arbeit klaglos, solange Sie sie brauchen.
Einer meiner College-Dozenten (ich weiß nicht, wie alt er war, aber er war grau und hatte eine Glatze) kannte COBOL, also gibt es immer noch Leute, die es kennen – sie sind noch nicht in einem Altersheim.

Sie finden schmerzlich heraus, warum so viele Entwickler, die sich auf alte Sprachen spezialisiert haben, gerade jetzt ernsthaft Geld verdienen.

Als junger Entwickler ist es ein Verlustgeschäft, diese Technologien jetzt zu übernehmen - Best Practices und Fähigkeiten sind so weit von damals entfernt, und die Softwareentwicklung ist ein so schnelllebiges Gebiet, dass Sie, wenn Sie nicht mit den neuesten & größten oder zumindest am weitesten verbreiteten Technologien, gimpen Sie Ihre eigene Karriere hart. Sie müssen damit rechnen, dass in 20 Jahren so wenige Leute Dinge wie Fortran oder COBOL machen werden, dass ihre neu erworbenen Fähigkeiten nutzlos sein werden – eine düstere Vorstellung.

Tun Sie also, was Sie tun müssen - bieten Sie Leuten, die sonst nirgendwo eingestellt würden, eine Ausbildung am Arbeitsplatz an, erwähnen Sie ausdrücklich, dass Sie Leute mit Vorstrafen wegen Straftaten einstellen werden (wenn Sie das mit einer Versicherung vereinbaren können), bieten Sie ein mehr als wettbewerbsfähiges Angebot an Gehalt, bessere Sozialleistungen.

Der springende Punkt hier ist, dass Sie neue Entwickler bitten, ihre zukünftigen Karriereaussichten zu opfern, also müssen Sie dafür angemessen kompensieren.

Kommentare sind nicht für längere Diskussionen gedacht; diese Konversation wurde in den Chat verschoben .
Ich habe hier ein Problem mit dem Wort "schmerzhaft". Es gibt keinen Hinweis darauf, dass der Umsatz oder Gewinn des Unternehmens von OP leidet. Da ihre Kunden multinationale Banken sind, die sich einer Spitzenrentabilität erfreuen, wird das Unternehmen des OP wahrscheinlich auch florieren. Es ist nicht so, dass sie nicht zahlen können, sie wollen einfach nicht zahlen. Und es ist schrecklich, dass Milliarden-Dollar-Unternehmen über steigende Arbeitskosten jammern, die die Margen um ein oder zwei Prozent reduzieren könnten, während echte Menschen da draußen Schwierigkeiten haben, sich Gesundheitsversorgung zu leisten oder eine erste Gehaltserhöhung seit 5 Jahren oder eine lebenslange Miete zu bekommen, weil sie nie erwischt wurden bis hin zu explodierenden Immobilienpreisen.
  1. Fernentwicklung . Lassen Sie sie ihre Kostenbasis und ihren Lebensstil wählen.
  2. Flexible Zeiten. Lass sie arbeiten, wann sie wollen.
  3. Hohes Gehalt . Lassen Sie sie wissen, dass ihr Handwerk geschätzt wird.
  4. Stabilität. Lassen Sie sie wissen, dass dies eine langfristige Perspektive ist.
  5. Spaß. Lassen Sie sie wissen, dass die technischen Herausforderungen genauso interessant sind wie eh und je.
  6. Kollektiv. Organisieren Sie ein Club-Feeling rund um diese Retro-Infrastrukturwartung.
Ich würde freiberuflich hinzufügen . Ich kann mir vorstellen, dass viele Ingenieure im Ruhestand gerne zum Spaß oder als zusätzliches Geld freiberuflich arbeiten würden, und viele Ingenieure auf mittlerer Ebene oder in jungen Jahren wären bereit, dies als Nebenbeschäftigung zu tun, wenn sie Erfahrungen in einer anderen Hauptsprache sammeln.
All dies sind gute Dinge, um Menschen in jedem Unternehmen und jeder Umgebung anzuziehen, aber es gilt nicht besonders für die Herausforderungen dieser Frage.
@ gnasher729 Es geht genau auf die Herausforderungen dieser Frage ein.
Diese Antwort ist für die Frage relevant, da es sich um eine solide Liste von Vorteilen handelt, die verwendet werden können, um Menschen dazu zu bringen, an sehr alten und veralteten Technologien zu arbeiten.
@GustavBertram absolut! Es ist erstaunlich, wie viel mehr Menschen erreichen können oder bereit sind, es zu versuchen , wenn sie etwas Flexibilität haben - besonders wir älteren Leute :o)

Sie müssen ein Gehalt anbieten, das hoch genug ist, um Bewerber für die negativen Auswirkungen auf ihre Karriere zu entschädigen, die eine Spezialisierung auf veraltete Technologien haben wird.

Wenn Sie zu wenige Bewerber haben, die den Job annehmen wollen, sobald sie davon erfahren, ist das Gehalt, das Sie anbieten, zu niedrig.

Alternativ: Können Sie die Stellenbeschreibung so ändern, dass die Mitarbeiter in der Rolle nicht mehr die Hälfte ihrer Zeit mit veralteter Technologie verbringen? Das könnte die Angst der Kandidaten lindern, dass sie am Ende mit wertlosen Fähigkeiten stecken bleiben.

"negative Auswirkung auf ihre Karriere" ist ein guter Punkt, den man ansprechen sollte. Einige Entwickler werden nicht nur wegen der Arbeit an Projekten arbeiten wollen, sondern wegen dem, was zukünftige Arbeitgeber in ihrem Lebenslauf sehen werden.
Das Arbeiten mit älteren Programmiersprachen kann ebenfalls von Vorteil sein. Ich habe täglich mit IBM JCL und Fortran 77 zu tun. Allerdings mache ich Dinge, die ich nicht für möglich gehalten hätte, sie sind eigentlich sehr vielseitig. Ich bin ein besserer Programmierer aufgrund der Einführung in diese Sprachen.
Und geben Sie den Kunden eine Prognose für die steigenden Kosten für die Wartung ihrer Legacy-Systeme zusammen mit einem Angebot für deren Refactoring.

Kein JavaScript, kein CSS, keine obskuren Anmerkungen, einfach nur Java ... Das allein erregt sicherlich meine Aufmerksamkeit ...

Erhöhen Sie die Reichweite Ihres Angebots

Versuchen Sie, an Veranstaltungen der Universität teilzunehmen. An meiner Universität gab es eine Woche, in der Unternehmen auf den Campus kamen und Vorträge darüber hielten, was sie taten und warum sie eine gute Arbeitsoption waren. Dann sammeln sie gerne Lebensläufe interessierter Studenten. Möglicherweise erhalten Sie sogar ein bezahltes Stipendium, um sich von innen kennenzulernen.

Erregen Sie ihre Aufmerksamkeit

Heutzutage gibt es mehr Frameworks als Programmierer und es ist cool, dass Sie das neueste Framework verwenden, das Ihnen das Eintippen eines Semikolons am Ende jeder Zeile erspart ...

Warum also sollte ein Programmierer von einem alten Technologie-Stack angezogen werden? Kein JavaScript, kein CSS, nur Java wäre für mich ein passendes Schlagwort (kein Bezug zu irgendeinem Film ).

Das Gehalt wurde bereits erwähnt. Was ist mit Stolz? Dieser Job ist nicht für jeden geeignet, man muss ein fähiger Entwickler sein, weil man nicht einfach SO nach der Lösung suchen kann... Vielleicht bietet dieser Job intellektuelle Herausforderungen, die Sie begeistern werden.

Wenn Sie ein Stellenangebot im Internet veröffentlichen, vermitteln Sie das Gefühl, dass das Unternehmen keine Dinosaurier mit Computern ist (es tut mir leid, aber das ist das erste, was mir einfällt, wenn ich COBOL lese). Gibt es Aktivitäten, die Ihre Mitarbeiter durchführen, an denen die Teilnehmer teilnehmen können, wenn sie eingestellt werden? Vielleicht Laserspiele?

Erlaubt Ihnen das Stellenangebot, nach der Onboard-Phase einige Tage in der Woche von zu Hause aus zu arbeiten?

Halten Sie sie an Ihrem Angebot interessiert

Für manche Menschen ist das Gehalt vielleicht nicht das, was ihre Aufmerksamkeit erregt, aber etwas, das sie interessiert. Ein weiterer typischer ist die Ausbildung: Ich schätze Jobs sehr, die offizielle (außerbetriebliche) Zertifikate fördern.

Wenn Technologien ungewöhnlich oder selten sind, möchten Ihre Kandidaten möglicherweise eine gewisse Arbeitsplatzstabilität. Bieten Sie einen langfristigen Vertrag an? Und wie stehen die Chancen auf einen internen Aufstieg?

+1. Es gibt Leute, die es wirklich genießen, hässliche Probleme mit schlechten Werkzeugen zu lösen. Ich bin einer von ihnen. Sie sind eine Minderheit, aber es gibt sie. Sie müssen sich eine "Marketingstrategie" einfallen lassen, die sie erreicht und anzieht. Die mathematisch-naturwissenschaftlichen Fakultäten der Universitäten sind ein guter Ort, um sie zu finden. Viele Leute dort arbeiten sehr gerne mit FORTRAN oder sogar Assembler und erhalten wahrscheinlich einen kleinen Bruchteil dessen, was Sie normalerweise anbieten.
"Kein JavaScript, kein CSS, keine obskuren Anmerkungen, einfach nur Java..." Sag was??? Dir ist schon klar, dass Javascript und Java rein gar nichts miteinander zu tun haben?
@ChrisStratton Natürlich beziehen sich nur Anmerkungen direkt auf Java. Sie sind jedoch normalerweise Teil desselben Technologie-Stacks.

Ich arbeitete für ein Unternehmen (als Berater), das technisch gesehen eine private Einrichtung war, aber ausschließlich für die Regierungsstellen der örtlichen Stadt arbeiten durfte.

Wie es bei der Entwicklung von Regierungssoftware üblich ist (meiner Erfahrung nach), waren die Projekte nicht großartig. Ich habe an einer 25 Jahre alten undokumentierten Sozialversicherungsplattform gearbeitet, die einst in COBOL geschrieben, von unbeaufsichtigten Praktikanten auf VB portiert, ohne Refactoring auf VB.Net portiert wurde, es sei denn, es hat den Build kaputt gemacht, und mehrere Generationen von unterqualifizierten Entwicklungsteams haben daran gearbeitet kein Gefühl der Eigenverantwortung und lässt das Projekt undokumentiert und fragmentierter zurück, als es ohnehin schon war.

Es gab noch viele andere Projekte dieser Art. Ungefähr 80 % der Arbeit konzentrierte sich darauf, veraltete und mit Spaghetti-Code verseuchte Codebasen funktionsfähig zu halten, da die Regierung das Budget nicht aufbringen konnte, um sie zu verbessern.

Lange Rede kurzer Sinn: Die Entwickler begannen massenhaft zu gehen. Die einzigen, die zurückgelassen wurden, waren diejenigen, die es nicht besser wussten (oder es nicht versuchten), was das Problem nur noch verschlimmerte.

Als das Unternehmen eine Budgeterhöhung für ein Jahr erhielt, beschloss es, das Unternehmen umzugestalten, um seine jüngeren und erfahreneren Mitarbeiter zu halten. Und es gelang ihnen.

Was sie getan haben, ist (privat) die beschissenen Projekte anzuerkennen und eine massiv verbesserte Work-Life-Balance anzubieten:

  • Aufgaben werden am 1. des Monats zugewiesen. Sie werden voraussichtlich Ende des Monats geliefert.
  • Alles, was zwischen diesen Daten passiert, ist Ihr Anruf. Arbeiten Sie von zu Hause aus, wann Sie möchten (Sie mussten es nur in Ihre Agenda aufnehmen).
  • Die Geschäftsführung setzt keine Fristen. Der Entwickler (zufällige Auswahl für die Pokersitzung, ähnlich wie bei der Jury) legte die Fristen selbst fest und die Kunden meldeten sich ab. Das Unternehmen hat (meines Wissens nach) die Entwickler nie gezwungen, ihre geschätzten Stunden zu senken.
  • Die Büros wurden in Flex Spaces umgewandelt. Einige Stockwerke hatten zusätzliche Tische (für diejenigen, die oft Ad-hoc-Meetings oder Gespräche führen), andere Stockwerke hatten nur kleine Ein-Personen-Tische (für diejenigen, die in Ruhe arbeiten möchten).
  • Abgesehen von der Anwesenheit bei Sitzungen (normalerweise alle zwei Wochen) war keine Anwesenheit erforderlich.
  • Die Arbeit wurde nach dem Endergebnis bewertet, nicht nach der aufgewendeten Zeit.
  • Das Firmen-Intranet wurde online gestellt, sodass man überall mit Internetanschluss arbeiten kann.
  • Außer dem Code-Repository (internes TFS) waren alle Tools (einschließlich E-Mail) auf jedem PC mit einem entsprechenden Login verfügbar.
  • Sollten Sie einmal nicht liefern können, holen Sie sich entweder die Zustimmung Ihres Projektleiters, Ihren Termin zu verschieben, oder Sie überzeugen den Kunden direkt (Anmerkung: Die meisten Entwickler wären sowieso schon direkt mit dem Kunden in Kontakt). Solange entweder das Unternehmen oder der Kunde abmeldet, ist alles gut.
  • Urlaubsanträge werden praktisch unabhängig von der Terminplanung genehmigt (Hinweis für Internationals: Wir haben hier bezahlten Urlaub, und die Anzahl der (bezahlten) Urlaubstage ist Ihnen und Ihrem Arbeitgeber bekannt).
    • Anekdotisch: Ich musste einmal um eine dreimonatige Abwesenheit bitten (aus beruflichen Gründen, nicht aus Urlaub). Wortlos drehte sich der Premierminister zu seinem Laptop um, öffnete eine Tabelle, fügte in drei Spalten eine 0 ein, und das war es. Keine Diskussion.

Hat dies die Qualität der Projekte verbessert? Nein. Es gab weder Budget noch Zeit, um diese Anwendungen neu zu entwickeln.

Aber das Unternehmen fing an, die guten Entwickler zu halten, und das lockere Arbeitsumfeld gab ihnen mehr als genug Spielraum, um die ansonsten unangenehme Projektarbeit auszugleichen.

Zuvor erstickte das Unternehmen an ungelernten (oder unwilligen) Mitarbeitern, die keinen effektiven Beitrag leisteten, aber mehr Arbeit schufen, um beschäftigt zu wirken. Es ist sehr schwer, diese Mitarbeiter loszuwerden, wenn sie den „qualifizierten“ Entwicklern zahlenmäßig überlegen sind.
Vielleicht ist es nicht überall anwendbar, aber diese Mentalität „Schaffe Arbeit, um Arbeitsplatzsicherheit zu schaffen“ wird hier den Regierungsangestellten stereotyp zugeschrieben. Es ist sehr verbreitet.

Weil das Unternehmen den Mitarbeitern ein fast kriminelles Maß an Freiheit einräumte, fühlten sich die Mitarbeiter frei genug, um sich nicht mehr die Mühe zu machen, beschäftigt auszusehen. Die Arbeit wurde nach dem Endergebnis bewertet, nicht nach der für die Arbeit aufgewendeten Zeit.

Ich habe andere Fälle gelesen, in denen Unternehmen mit einem „freien Urlaub“-System experimentierten, dh die Mitarbeiter konnten so viel Urlaub nehmen, wie sie wollten. Und wie sich herausstellte, änderte sich der durchschnittlich genommene Urlaub nicht wesentlich gegenüber dem starren Urlaubssystem, das sie vorher hatten.
Es kam zu einigen Übergriffen, aber viele Mitarbeiter fühlten sich frei genug, Urlaub zu nehmen, wann sie wollten, sodass sie weniger auf die ihnen zugeteilten spezifischen Urlaubstage bestanden.

Ich persönlich habe den Untergang des Unternehmens eingeläutet, muss aber korrigiert werden. Obwohl sich die Qualität der Arbeit nicht verbessert hat, haben sie es geschafft, die schrecklichen Projekte mit einer erstaunlichen Work-Life-Balance auszugleichen.

Faszinierend. Es hört sich so an, als hätten sie eine Umgebung geschaffen, in der eine hervorragende Anwendung von Softwareentwicklungsprinzipien allmählich (sehr allmählich) zu tatsächlichen Verbesserungen der Codebasis selbst führen könnte . (Wie in dem von mir verlinkten Buch erwähnt, besteht das erste Ziel darin, die Codebasis an einen Punkt zu bringen, an dem sie mit der Zeit besser und nicht schlechter wird. Aber, wie auch in diesem Buch erwähnt, ist das eigentliche erste Ziel Entwickler haben, die wollen , dass die Dinge besser werden.)
@Wildcard: In den 2 Jahren nach dem Wechsel habe ich noch dort gearbeitet, allerdings nicht viel verbessert im Code. Das Unternehmen stoppte lediglich blutende Entwickler. Es gab wenig Anreiz vom Kunden (einschließlich Budget), Dinge zu verbessern, daher verstehe ich, dass das Unternehmen nicht für die Neugestaltung von etwas ohne Dokumentation mit einem aktiven 24/7-Servicevertrag bezahlen würde. Aber das hat mehr mit der Regierung als Kunde zu tun als mit dem Unternehmen selbst. Ich stimme jedoch zu, dass es ein mutiger Schritt war, der sich entgegen den Erwartungen der meisten Menschen ausgezahlt hat.
Recht. Aber eine Neugestaltung wäre ein Fehler und Geldverschwendung, wenn das bestehende System funktioniert und die Anforderungen der realen Welt erfüllt. Das Kapitel dieses Buches, das hier am nützlichsten und anwendbarsten ist, ist Refactoring is About Features .
@Wildcard Denken Sie daran, dass sich die staatlichen Rahmenbedingungen aufgrund der sich ändernden Gesetzgebung ständig weiterentwickeln. Diese werden nicht einmal erstellt, um spätere Anwendungen zu optimieren. Ohne Refactoring wird ein Manntag effektiv auf weniger als 4 Stunden reduziert.
Ich kann die Absicht hinter diesem Kommentar nicht ganz interpretieren, aber haben Sie den Artikel gelesen? Ich denke, wir sind uns einig. :)

Ich arbeite in einem IT-Unternehmen, das sich stark auf Projekte spezialisiert hat, die mit alten und veralteten Technologien erstellt wurden.

Die größten Projekte sind normalerweise eine Mischung aus Cobol ...

Erwägen Sie, die Denkweise und den Ansatz Ihres Unternehmens zu ändern. Anstatt nur Cobol-Expertise zu verlangen (und Ihren Programmierer nur in Cobol zu programmieren), fragen Sie auch nach Fachwissen zur statischen Quellcodeanalyse und stellen Sie Leute ein, die in der Lage sind, statische Quellcodeanalysetechniken zu verwenden oder sogar zu entwickeln (vielleicht sogar einige interne halbautomatische Codetransformator/Analysator). Dieser Markt ist (technologisch) attraktiver. Natürlich müssen Sie wettbewerbsfähige Gehälter anbieten (und Sie würden vielleicht promovierte Entwickler einstellen).

Übrigens kenne ich ein paar Unternehmen (spezialisierte KMUs), die statische Quellcodeanalysen (und halbautomatische Codetransformation/Refactoring) an jahrzehntealtem Cobol-Code durchführen.

Eine Person, die ein paar Jahre an der Quellcodeanalyse von Cobol gearbeitet hat, wird später wahrscheinlich einen anderen interessanten Job finden (z. B. würde sie zu einer anderen Firma wechseln, die Quellcodeanalysen von Java durchführt). Ein Experte in Cobol muss (nur) in dieser Welt bleiben (und setzt darauf, dass es noch einen anderen Job in Cobol gibt). Natürlich werden Quellcode-Analysatoren häufig mit ausgefallenen Technologien (z. B. Ocaml, Haskell usw.) codiert (die Tools selbst, nicht der Code, den sie analysieren).

Natürlich würden Sie Ihren Kunden dann auch den Service verkaufen, alten Cobol-Code umzugestalten (vielleicht sogar teilweise umzuschreiben) (um sie also davon zu überzeugen, dass technische Schulden ein Problem sind). Und das ist nicht billig.

Übrigens, wenn Sie einen H2020- oder zukünftigen europäischen FP9 -Projektvorschlag kennen, bei dem eine solche Arbeit – statische Quellcodeanalyse von Cobol, nicht manuelles Refactoring von Cobol-Code – passen könnte (aber im Juli 2018 kenne ich keinen) – oder Wenn Sie einen direkten Industrievertrag mit meinem Arbeitgeber CEA, LIST , vorschlagen möchten, zögern Sie nicht, mich per E-Mail zu kontaktierenbasile.starynkevitch@cea.fr. Ich arbeite in einem Labor mit Fähigkeiten zur statischen Quellcodeanalyse (aber unsere aktuellen Tools zielen nicht auf COBOL ab; wir könnten sie für COBOL anpassen – nicht sicher, ob das technisch sinnvoll ist – oder statische COBOL-Analysetools entwickeln, wenn und nur wenn wir es sind dafür finanziert werden; meine naive Meinung ist, dass Ihr Markt dafür möglicherweise nicht groß genug ist: Die Entwicklung statischer Analysewerkzeuge ist teuer und zeitaufwändig. Aber wenn sich Ihr Unternehmen - oder Kunde - ein Millionen-€-Projekt für 4 Jahre leisten kann, kontaktieren Sie mich bitte ; eher werden Sie sich besser – und das ist schwierig – vernetzen und mehrere andere Unternehmen finden, die bereit sind, das Risiko und die Kosten zu teilen).

Meine naive Meinung ist, dass die Fähigkeiten, nach denen Sie suchen, teuer sind, aber nicht so viel. In ein paar Jahren könnten sie noch kostspieliger und seltener sein, und dann wären eine statische Analyse und ein halbautomatischer Refactoring-Ansatz viel sinnvoller. Darauf könnte Ihr Unternehmen setzen und mit dem Aufbau einer eigenen statischen Quellcodeanalyse des Cobol-Codes beginnen. Und ja, das dauert Jahre und kostet viel. Es gibt keine Wunderwaffe .

+1. Ich habe tatsächlich schon früher über dieses Problem nachgedacht und bin zu dem Schluss gekommen, dass das Transpilieren von einer moderneren Sprache in eine ältere Sprache ein Weg sein könnte, um daraus herauszukommen. Sie müssten die Technologie entwickeln, aber es wäre äußerst wertvoll, da so viele große Finanzinstitute genau das von @LeopoldT beschriebene Problem haben

TL;DR: Sie sollten keine Junioren für diese Rollen erwarten.

Es gibt einige sehr hervorragende Kommentare, und ich kann die Quellenautoren nicht effektiv auflisten, aber diese Punkte sind im Wesentlichen die folgenden:

Sie bitten jemanden, in eine Sackgasse zu gehen und riskieren, arbeitslos zu werden.

Es ist nur ein Best-Case-Szenario aufgeführt: Die Person, die an diesen alten Stacks arbeitet, geht in den Ruhestand, bevor der Stack es tut.

Bei einem Junior sprechen wir von 30-40 Jahren ... Sie erwarten wirklich nicht, so lange an einem Ort zu arbeiten, insbesondere wenn Sie nach der Arbeit dort keinen anderen Job finden können. Wenn ich 5 Jahre Erfahrung in all der Technologie sammle, mit der Sie gearbeitet haben, was genau wird das für meinen nächsten Job bedeuten? Würde es sogar zu meiner Beschäftigungsfähigkeit beitragen oder davon abziehen?

Ich glaube nicht, dass man realistisch erwarten kann, dass Junioren diese Positionen anstreben. Das ist ein Karriereweg, der extrem riskant ist, und wenn Sie nicht irgendeine Art massiver Vorruhestandsrente anbieten, ist das Risiko extrem hoch ... sie treten in Ihr Unternehmen ein, arbeiten für 5-10 Jahre, heiraten, bekommen Kinder, und dann plötzlich arbeitslos werden.

Sie müssen Ihr Geschäftsmodell akzeptieren und überlegen, ob die Einstellung von Junioren überhaupt realistisch ist.

Ich bin ein Junior-Entwickler, der in einem Unternehmen mit den gleichen Einschränkungen und Sprachen wie Ihres arbeitet, und ich bin nicht einverstanden mit den Leuten, die sagen, Sie sollten Ihre Technologien aktualisieren oder eine alternde Bevölkerung erwarten. Die Wahl der Technologien liegt nicht in unserer Hand, aber wir sind sicher, dass Cobol nicht bald sterben wird. Neue Projekte sind unwahrscheinlich, aber der Wartungsbereich ist sehr groß. Meine Antwort ist vielleicht, dass es an Einblicken in den „echten“ Markt mangelt, aber es ist, wie und warum ich in mein Unternehmen gekommen bin. Wofür sich mein Unternehmen entschieden hat, mag spezifisch für Frankreich sein, aber ich bin sicher, dass Sie in Ihrem Land vergleichbare Lösungen finden werden.

Erstens nehmen wir Praktikanten und bezahlen sie doppelt so viel wie der Standard. Wir achten darauf, nicht zu viele Praktikanten zu haben, nur eine feine Anzahl, die wir betreuen und handhaben können (einer pro Gruppe, dh einer von ungefähr 12 Personen). Dann versuchen wir, am Ende des Praktikums systematisch eine Stelle anzubieten oder ein Teilzeitstudium (Sandwich-Kurs nennen wir es glaube ich auf Englisch). Die Idee ist, für Junioren so attraktiv wie möglich zu wirken und ihnen das zu bieten, was sie brauchen (Erfahrung, Stabilität, gutes Geld oder einfach nur ein Praktikum). Sagen Sie ihnen unbedingt, dass Sie Wartungsverträge für das Jahrzehnt haben und dass sie im Unternehmen vorankommen können, wenn sie mehr Erfahrung sammeln. Ich garantiere nicht, dass Sie sie länger als 10 Jahre behalten werden, aber 3 oder 4 von 10 bleiben möglicherweise länger als 5 Jahre.

Wir haben auch eine starke Partnerschaft mit Schulen und Fakultäten in der Umgebung. Die Idee ist, dass unsere Junioren gute Erfahrungen machen und sie an ihre Freunde/Kollegen weitergeben können, die Universität einen Weg findet, um sicherzustellen, dass ihre Studenten einen Job finden, und wir einen Rekrutierungspool haben. Wir bieten auch Kooption an (Sie erhalten einen Bonus, wenn Sie einen Rekruten vorschlagen, der geworben wird).

Als ich mich bewarb, zeigten mir meine Kollegen, dass sie ein nettes Arbeitsumfeld haben, ohne in den ganzen Google-ähnlichen Arbeitsplatz zu gehen. Das können einfache Gesten sein, wie das Anbieten flexibler Arbeitszeiten, Aktivitäten mit Kollegen oder ein Massagesitz.

Wir haben keine Angst, Menschen aus verschiedenen Lebensbereichen einzustellen. Viele meiner Kollegen sind ehemalige Forscher in Biologie und Physik. Wir haben auch eine Partnerschaft mit der nationalen Arbeitsagentur. Kürzlich haben wir einen Vertrag mit ihnen im Austausch für die Einstellung von 14 von ihnen ausgewählten Arbeitslosen abgeschlossen. Wir haben sie 2 Monate lang ausgebildet, sie haben sie 3 Wochen lang arbeiten lassen, um zu sehen, wie es ihnen geht, und jetzt sind sie alle eingestellt.

Was Sie also im Grunde vorschlagen, ist (hyperbolisch gesprochen), schlecht qualifizierte Leute einzustellen und ihnen mehr zu bezahlen, als sie wert sind (sei es direkt oder mit Zusatzleistungen), als loyale Tippaffen-Belegschaft, die sich nicht darüber beschweren wird -schlechte Qualität und veraltete Codebasis, mit der sie leben müssen. Nun, das mag kurzfristig funktionieren, aber für mich klingt es nach einem ausgezeichneten Rezept, wenn Sie möchten, dass die Projekte noch unübersichtlicher und schwieriger zu warten sind.
@leftaroundabout, deine Kritik ist mehr als ein bisschen übertrieben. Wo ist deine Antwort? Diese Antwort widerspricht kohärent der Beschreibung der „Sackgasse“, die auf Cobol angewendet wird, und beschreibt eine reale Strategie, die tatsächlich verwendet wird, um ein Cobol-Projekt mit Personal zu versorgen und zu warten.
@Wildcard Ich habe Gnashers Antwort positiv bewertet : Programmierer, die tatsächlich viel Erfahrung haben, würden zumindest sicher wissen, wie sie das Projekt in einem wartbaren Zustand halten können. Aus den Legacy-Projekten, an denen ich beteiligt war, weiß ich hingegen, wie sehr sich die Probleme verschlimmern können, wenn Wartungsprobleme von unerfahrenen Programmierern mit hackigen Patches angegangen werden. (Zugegeben, die Leute, an die ich denke, waren eigentlich gar keine Programmierer, sondern Physiker, was sicherlich nicht geholfen hat ...)
... Wenn ich dem OP einen Vorschlag machen müsste, würde ich sagen, dass ich zunächst in den Aufbau einer neuen Unit-Test-Suite investieren soll, die in einer modernen Sprache um den alten Code herum geschrieben ist. Das stört keine Kundenanforderungen, kann verwendet werden, um Programmierer anzuziehen, die auf die Testsprache abzielen, und kann nur die Robustheit verbessern. Außerdem ebnet es den Weg für die tatsächliche Migration des Arbeitscodes, ohne sich jedoch zu einem solchen Schritt zu verpflichten. Dies beantwortet die Frage jedoch nicht wirklich und ist sicherlich nicht für alle Codebasen machbar.
@leftaroundabout, das ist eigentlich ein ziemlich guter Vorschlag. Ich denke, es beantwortet in gewisser Weise die Frage: Bringen Sie Programmierer dazu, an der Testsuite zu arbeiten, die in einer modernen Sprache sein wird. Wenn Sie es als Antwort gepostet haben, würde ich es positiv bewerten.
die Kommentare von @leftaroundabout sind etwas skurril. (Vielleicht gab es ein Missverständnis.) Die in dieser Antwort beschriebenen Geschäftspraktiken sind perfekt, und das Unternehmen ist wahrscheinlich finanziell sehr erfolgreich.
@Fattie Ich glaube nicht, dass es ein Missverständnis gibt, nur unterschiedliche Werte. Ich schätze Technik, Sie schätzen Geld. Du bist finanziell erfolgreich, ich nicht. Ich bin froh. (Mein Kommentar hat vor allem darauf hingewiesen, dass das Geld, das Sie hier verdienen, technische Schulden sind . Ob dies tatsächlich langfristig rentabel ist, wäre ich mir nicht sicher.)
Sie irren sich völlig, wenn Sie glauben, dass COBOL (und die typischen Finanzsysteme) technische Schulden haben , weil sie per se COBOL sind . Viele brandneue Swift-Kitura-AWS-Docker-Systeme sind erschreckend schlecht gemacht, mit massiven, wie Sie sagen, technischen Schulden. Viele COBOL-/Finanzindustriesysteme sind erschreckend schlecht gemacht, mit massiven, wie Sie sagen, technischen Schulden. Andererseits sind viele COBOL-/Finanzindustriesysteme unglaublich ausgereift, ohne technische Schulden und mit den höchsten Werten. Eigentlich ..
meiner erfahrung nach sind moderne systeme (apps! games! rofl www!) generell sehr schlampig zusammengewürfelt, mit hoher technischer schuld.

Wie ich in den Kommentaren sagte, ist dies die Art von Job, die ich gerne hätte (obwohl ich hauptsächlich in Wissenschaft und Technik arbeite, nicht in Geschäftsanwendungen), und ich glaube nicht, dass ich allein bin.

Also, wie ziehst du mich an? Seien Sie zunächst bereit, ältere* Menschen einzustellen. Ich denke, es gibt viele Leute da draußen, die viel Erfahrung in diesen Sprachen haben und die es wirklich genießen, zu programmieren, besonders wenn das Projekt für sie von Natur aus interessant ist. Bieten Sie Teilzeitarbeit, flexible Arbeitszeiten und Telearbeit an. Gute Bezahlung hilft, muss aber nicht spektakulär sein. Ehrlich gesagt, an diesem Punkt in meinem Leben muss ich nicht arbeiten (es sei denn, der derzeitige Präsident vermasselt die Wirtschaft total, in diesem Fall gehen wir vielleicht alle zurück zur Landarbeit :-(), aber das interessiert mich auch nicht „im Ruhestand“ sein.

* Oder andere Menschen mit nicht-traditionellem Hintergrund, wie zum Beispiel eine Freundin von mir von der Universität mit vielen guten Erfahrungen, die ~ 20 Jahre alt ist, weil sie sich entschieden hat, Vollzeitmutter zu sein. Nun, die Kinder sind erwachsen und sie langweilt sich, aber alle wollen entweder neue Absolventen oder Leute, die sie von anderen Unternehmen abgeworben haben.

Obwohl Ihre Vorschläge solide sind, sind sie im Grunde eine Teilmenge oder wiederholen das, was in anderen Antworten angegeben wurde, wie diese ältere Antwort und die, die erwähnt werden, um ältere Entwickler anzusprechen. Bitte denken Sie daran, dass wir eine Backup-Richtlinie haben . Gibt es etwas Neues, das Sie zu Ihrer Antwort beitragen möchten?
@DarkCygnus: Ich denke, meine Antwort unterscheidet sich von der, die Sie in einigen meiner Meinung nach wichtigen Punkten verlinkt haben. Erstens ist es mehr als nur eine Liste von Stichpunkten. Zweitens ist, was es auslässt. IMHO würden die letzten beiden Aufzählungspunkte dieser Antwort nicht dazu beitragen, die Art von Mitarbeitern anzuziehen, die das OP will. Für mich sind sie eigentlich eher negativ.

Ich würde vorschlagen, nach Leuten zwischen Anfang 30 und Mitte 50 zu suchen, insbesondere nach solchen, die darüber nachdenken, aus der IT auszusteigen, weil sie nicht mehr in der Brogramer-Szene sind. Sesshafte Menschen mit Kindern, insbesondere Frauen, die die lächerlichen Stunden einiger Start-ups nicht leisten können. Rentner, die nicht mehr mit den Joneses mithalten müssen.

Bieten Sie dieser Gruppe attraktive Dinge wie bezahlte Kindertagesstätten an. Keine Überstunden. Viel Urlaubszeit. Flexible Arbeitszeiten. Fernarbeit. Teilzeit. Besonders Rentner mögen den Teilzeitteil, da sie nicht Vollzeit arbeiten wollen und sich nicht so sehr darum kümmern, auf dem Laufenden zu bleiben.

Sehen Sie, ob Sie Projekte anbieten können, die eine Mischung aus einigen mit älteren Technologien und einigen innovativen Sachen sind. Oder bieten Sie 20 % Zeit für die Arbeit an Projekten mit jeder Technologie, die sie lernen möchten.

Menschen in ihren 30ern sind alte Relikte, die sich zurückziehen oder aus dem Programmieren aussteigen wollen?

Diese Frage hat Antworten, denen ich vollkommen zustimme, aber ich glaube, ihnen fehlen ein paar kleine Nuancen.

Ich glaube nicht, dass Sie Ihre Einstiegspositionen als Ausbildung gut verkaufen. Versuchen Sie, eine Kombination aus modernen Code-Writing-Praktiken (Pair Programming, irgendeine Version von Agile) mit den alten Technologien zu verwenden, mit denen Sie arbeiten, und wecken Sie das Interesse von Junior-Mid-Level-Jungs, die den nächsten Schritt machen wollen, indem Sie sagen: „Hey , diese alten Typen kennen COBOL / etc. wie ihre Westentasche. Das wird Ihnen helfen, in einfacheren Sprachen viel besser zu programmieren."

Denn das ist die Wahrheit. Bieten Sie Einsteigern die Möglichkeit, Wissen über Dutzende von Sprachen / Untersprachen zu erben, die sterben werden, aber hinterlassen Sie einen riesigen Fußabdruck, der gewartet werden muss, und jemanden, der den Code für ein Upgrade verstehen kann.

Außerdem: Aktualisieren Sie Ihre Tools und verwenden Sie die besten, die Sie finden können. Automatisierte Build-Systeme, die mit der Quellcodeverwaltung verbunden sind, Cloud-Server, wenn Sie sie verwalten können usw. Wenn Sie eine modern aussehende Programmierumgebung haben, die etwas Altmodisches tut, können Sie möglicherweise sowohl mehr Produktivität aus Ihren vorhandenen Mitarbeitern herausholen als auch anziehen Whippersnapper wie Sie wollen.

Um ehrlich zu sein, sehe ich nicht wirklich das Problem, während einer Ausbildung mit COBOL zu arbeiten, besonders wenn man eine ordentliche Portion Java hinzufügt. Sicher, Java hat sich im Laufe der Zeit ziemlich verändert, aber es ist immer noch Java.

Wie bei jedem "Wie stellt man Programmierer ein?" Frage,

Ob gut oder schlecht, es gibt nur eine Antwort.

Geld.


OP sagt im Grunde: "Wir finden es unglaublich schwierig, { eine bestimmte Art von } Programmierer einzustellen ..."

Aber warte. Es ist im Moment unglaublich schwierig, einen bestimmten Typ von (gutem) Programmierer einzustellen.

Wenn zwei Programmierjobs verfügbar sind, ist es nicht sicher, dass ein bestimmter Programmierer immer den bestbezahlten auswählen wird. Vielleicht diejenigen, die wirklich einer Gehirnwäsche unterzogen wurden, seit sie kleine Kinder waren, dass das Bunkern von Unmengen von Geld das ist, worum es im Leben geht ... das sind diejenigen, die Sie sicher bekommen können, indem Sie sicherstellen, dass Sie das höchste Gehalt zahlen.
Das gesamte, totale Ziel des Lebens ist es , so wenig Arbeit wie möglich zu machen, damit Sie Ihr Leben leben und Ihre Familie genießen können. Der einzige Weg, „weniger zu arbeiten“, ist „mehr Geld zu bekommen“. Weniger Geld == Sklaverei und Arbeit bis ins hohe Alter. Weniger Geld zu verdienen bedeutet, dass Sie „arbeiten wollen“ – Sie „wählen Arbeit“ .
Mach dir keine Sorgen. Sie werden dich wahrscheinlich sowieso nicht nach einer Gelegenheit suchen, für dich zu arbeiten.
@mathreadler - urkomisch :)
Schön, dass dich in dieser stressigen Zeit wenigstens jemand zum Lachen bringen konnte :)
@Fattie: Die übliche Idee ist, im Laufe der Karriere weniger zu arbeiten. Ein Beispiel wäre, hart für eine Frühverrentung zu arbeiten. Für die meisten Menschen bedeutet dies, Jobs zu bevorzugen, die ihrer Karriere helfen, gegenüber Jobs, die derzeit mehr verdienen. Das sieht nach einem potenziell karrierekillenden Job aus.
@DavidThornley, ich verstehe, was du meinst - ich weiß nur nicht, ob es in der hektischen Welt der Softwareentwicklung mit explosiver Nachfrage zutrifft, weißt du?
Wer „so wenig wie möglich für so viel Geld wie möglich arbeiten“ als Lebensmotto hat und einen Job mit Gehalt annimmt, verfehlt scheinbar den Sinn. All die Leute, die wirklich denken, dass das entweder teure Berater sind oder ein Unternehmen besitzen und sich nicht zu einem bezahlten Job hingezogen fühlen.
Auch wenn Sie weniger arbeiten können, werden Sie dennoch einen erheblichen Teil Ihres Tages an Ihrem Arbeitsplatz verbringen. Einen Arbeitsplatz zu wählen, an dem man weniger Spaß hat und ständig schlechte Laune hat, nur um etwas früher in Rente zu gehen oder ein paar Stunden weniger pro Woche zu arbeiten, fühlt sich für mich wahnsinnig an. Ich habe lieber 40 Stunden Spaß an der Arbeit als 37 Stunden Scheißarbeit und 3 Stunden Freizeit.

Technologie betonen. Betonen Sie das Erlernen universeller Fähigkeiten.

Grundsätzlich: „lernen, wie man lernt“.

Viele Leute hier weisen darauf hin, dass das Erlernen von COBOL eine "Sackgasse" ist, und preisen als Beispiel das Gegenteil an, z. Feder. Das ist ziemlich unvernünftig. Der Frühling ist heute erst 15 Jahre alt. Es ist unsicher anzunehmen, dass etwas ein Leben lang halten kann. Was Sie brauchen, ist dieses falsche Vorurteil zu zerschlagen und Kandidaten aufzuklären, dass ihre Jobsicherheit nicht von einer bestimmten Technologie abhängt, sondern von ihrer Fähigkeit, jede Technologie zu übernehmen, die zu einem bestimmten Zeitpunkt erforderlich ist. Wickeln Sie es in einen coolen, marktgängigen Begriff wie „ sprachübergreifende Agilität “.

Außerdem können Sie Wert auf langfristige Kochfeldsicherheit legen. Eine hohe Fluktuationsrate in der IT ist kein Selbstzweck, sondern lediglich ein Instrument zur Gehaltssteigerung. Wenn Sie von Anfang an ein gutes Gehalt bieten, ist ein Durchschnitt von 6+ Jahren eine gute Sache. „ Ein Job, bei dem man bleiben möchte “.

Wenn man jedoch den Job wechselt, insbesondere als Junior, sind die allgemeinen Fähigkeiten nicht so wichtig wie die unmittelbare Erfahrung in einer bestimmten Technologie. Um diesem Anliegen Rechnung zu tragen, sollten Sie Kurse, Workshops, Nebenprojekte und Open-Source-Beteiligung usw. zu modernen Technologien anbieten. Im Grunde ein Nebenprojekt, um aktuelle Entwicklungen im Auge zu behalten. Etwas, das Ihre Mitarbeiter in ihren Lebenslauf schreiben könnten, um nicht zu 100 % der IT-Archäologie gewidmet zu sein. Für mich wäre es am interessantesten, ein bestehendes Projekt mit neuen Tools umzuschreiben, nur um zu sehen, ob es besser läuft - aber es sollte etwas sein, was Ihre Leute entscheiden müssen.

Das letzte Thema ist die aktuelle Lage auf dem Arbeitsmarkt. Jeder hat offene Stellen, aber es gibt nicht genug Leute, um sie zu füllen. Sogar in modernen Jobs wie meinem haben wir ungefähr 2 vernünftige Antworten auf eine Ausschreibung bekommen. Die meisten Kanäle lieferten genau 0, die einzigen Antworten, die wir bekamen, kamen von einer FB-Gruppe. Versuchen Sie das vielleicht, anstatt zu versuchen, massenproduzierte Absolventen von COBOL zu überzeugen, suchen Sie nach Leuten, die bereits neugierig auf Programmiergeschichte (oder niedriges Niveau) sind, und bilden Sie sie zu Programmierern aus .

Diversifizieren Sie Ihren Kundenstamm. Sie behaupten, dass Sie die Tech-Stacks wegen Ihrer Kunden nicht ändern können, aber Sie können die Kunden ändern.

Ihre aktuelle Flugbahn hat zwei bedenkliche Endpunkte:

  1. Sie können keine neuen Entwickler einstellen, können daher die Bedürfnisse der Kunden nicht erfüllen und verlieren alle Ihre Kunden.
  2. Ihre Kunden aktualisieren ihre Technologie, und Ihre derzeitigen Mitarbeiter können oder wollen nicht mitmachen, und Sie verlieren alle Ihre Kunden.
So wie Kunden ihre Technologie aktualisieren, können sie auch bankrott gehen (oder fusionieren oder was auch immer) oder zu einem konkurrierenden „alten Technologie“-Unternehmen wechseln.

Kommen wir mal aus einem etwas anderen Blickwinkel auf das Problem zu:

Bemerkenswert ist, dass viele Leute, die eine Stellenausschreibung mit der Aufschrift „COBOL“ sehen, einfach wegschauen werden, weil es sich um eine (für sie) neue Technologie handelt, mit der sie sicherlich noch nie in Berührung gekommen sind. Ebenso Java 4 (oder pre-4) und so weiter. Ich denke, das Wichtigste hier ist, im Voraus und offen zu werben, dass Sie nicht erwarten, dass Leute mit IRGENDWELCHEN COBOL-Erfahrungen kommen, und danach zu leben. Nachdem ich persönlich eine Reihe von Interviews geführt hatte, gab es viele Unternehmen, die auf ihrem Telefonbildschirm sagten: "Ja, wir verwenden diese Technologie, aber wir erwarten nicht, dass die Leute sie wirklich kennen, Sie können sie bei der Arbeit lernen" und dann das Das Interview bestand ausschließlich aus spezifischen Fragen zu den Einzelheiten dieser Technologie. Das ist nicht cool, und leider tun das zu viele Unternehmen, so dass „wir brauchen das eigentlich nicht in unseren Fähigkeiten“ auf der Stellenausschreibung bei Bewerbern wenig Gewicht hat, imo.

Hilfreicher könnte es sein, in Ihrer Stellenausschreibung zu erklären, wie von den Bewerbern erwartet wird, dass sie diese alten Technologien im Unternehmen lernen, um zu beweisen, dass Sie dies eigentlich nicht erwarten. Halten Sie dann während des Vorstellungsgesprächs Ihre Fragen so allgemein und technologieunabhängig wie möglich: Seien Sie sich bewusst, dass wahrscheinlich niemand, den Sie interviewen, tatsächlich die Fähigkeiten hat, nach denen Sie suchen, aber wenn sie sich beworben haben, sind sie dazu bereit Lern es; Das bedeutet, dass das Stellen von Fragen zu diesen Technologien während des Vorstellungsgesprächs wahrscheinlich ein Ablenkungsmanöver ist und Ihnen viele Fehlalarme gibt, d. h. Leute, die gute Entwickler sind, aber Ihren Tech-Stack nicht kennen (wie bereits festgestellt wurde, weiß es niemand Ihr Tech-Stack außer Ihnen, wegen Ihres Nischengeschäfts).

Die andere zu berücksichtigende Sache ist, wer sind Ihre Bewerber? Aus dem Kopf heraus denke ich, dass Sie einen guten Bewerber für Ihr Unternehmen wahrscheinlich in einen von zwei Eimern einteilen können:

1) Menschen, die extrem schlau, extrem talentiert sind, für die das Leben bei Google eintönig und alltäglich ist, die nach einer größeren Herausforderung in einem Nischenmarkt suchen. Wenn Sie sagen, Sie zahlen das Doppelte Ihrer Konkurrenten, betrachten Sie dann Google als Konkurrenten? Denn für diese Leute ist Ihr Konkurrent Google, Amazon, Twitter, Facebook usw., also die Technologiegiganten. Das sind Leute, die überall arbeiten könnten, wo sie wollten, aber sie haben sich für Sie entschieden, weil sie glauben, dass Ihr Unternehmen eine besonders interessante Herausforderung für sie darstellt. Diese Leute möchten jedoch für das entschädigt werden, was sie wert sind, und Sie sollten damit rechnen, ihnen das zu zahlen, was sie wert sind, oder sie werden nicht interessiert sein.

2) Menschen, die keine andere Wahl haben; Ihre Fähigkeiten mit modernen Technologien sind scheiße, also gehen sie mit Ihnen, weil "es genauso gut eine Chance geben könnte". Diese Leute haben viel geringere Erwartungen, aber sie sind im Allgemeinen viel schlechtere Entwickler, also ist es fraglich, ob Sie sie aggressiv ansprechen wollen. Wenn Sie dies jedoch tun, ist das Posten in Jobbörsen wahrscheinlich nicht das, was Sie sein möchten. Diese Leute haben bereits Jobbörsen durchgesehen, sich auf Hunderte von Stellen beworben und haben die Schnauze satt. Für diese Personen sollten Sie sich an Personalvermittler/Headhunter wenden. Diese Bewerber warten möglicherweise darauf, dass ein Headhunter sie mit einer neuen und glänzenden Stellenbeschreibung anruft, die auf dem Tisch liegt, und Sie möchten, dass sie Ihnen gehört. Das Wichtigste ist jedoch, dass Jobbörsen diese Leute nicht bekommen werden; wenn sie einen Job von einer Jobbörse wollten,

Es gibt eine dritte Gruppe, nämlich Entwickler, die so alt sind, dass sie mit COBOL und Java 4 aufgewachsen sind. Der Grund, warum diese Entwickler nicht zur Diskussion stehen, ist, dass sie kurz vor dem Rentenalter stehen; Selbst wenn sie massenhaft in Ihr Unternehmen eintreten würden, würden Sie das Problem, das Sie derzeit haben, nur um vielleicht 5-7 Jahre hinauszögern, und dann wären Sie wieder in der gleichen Position. Die Ausrichtung auf diese Personen ist nicht die Lösung, nach der Sie suchen.

Ein Zeichen für ein gutes Unternehmen ist, dass es seinen Personalbedarf vorhersieht und einen Plan hat, um diesen Bedarf zu decken, unabhängig davon, was der aktuelle Bestand an arbeitslosen Entwicklern zu bieten hat.

Der umgekehrte Ansatz besteht darin, sich auf Glück zu verlassen. Das machen nur Dummköpfe.

Ihre Einstellungspraktiken sollten davon abhängen, Personen mit der Eignung für Software zu identifizieren. Es ist ein Bonus, wenn sie die spezifische(n) Sprache(n) kennen, die Ihren Anforderungen entsprechen, aber ein Mangel sollte kein Show-Stopper sein.

Ihr Onboarding-Schulungsprogramm sollte ein Bootcamp für die spezifischen Fähigkeiten beinhalten, die Sie benötigen.

Das Flaggschiffprodukt meiner eigenen Firma ist in COBOL kodiert. Wir stellen Einsteigertalente ein und bringen ihnen COBOL bei. Wir programmieren auch Produkte in C++. Wir stellen Einsteigertalente für diese Produkte ein und bringen ihnen C++ bei. Dasselbe gilt für C#, SQL, JavaScript, VBScript usw.

Bieten Sie die Rollen in Teilzeit an

Personen im Rentenalter, insbesondere wenn sie seit Jahrzehnten COBOLing betreiben, suchen eher nach Teilzeitstellen als jüngere Arbeitnehmer. Die mittlere Arbeitszeit der 56- bis 75-Jährigen ist in diesen IFS-Statistiken weniger als halb so hoch wie die der 26- bis 55-Jährigen , auch wenn beide unterschiedlich sind.

Es mag kontraproduktiv erscheinen, Teilzeitkräfte einzustellen, da Sie weniger Arbeit pro schwer zu rekrutierendem Mitarbeiter erhalten, aber Sie können sie möglicherweise davon überzeugen, Stunden nach ihrem Eintritt hinzuzufügen.

Nehmen Sie Zweitjobs an

Wenn ich eine solche Möglichkeit sehen würde, würde mich nur die Möglichkeit überzeugen, mich gleichzeitig mit aktueller Technik zu beschäftigen. Wenn ich an meinen Fähigkeiten in neuen Technologien (bei unterdurchschnittlicher Bezahlung) arbeiten könnte, während ich gleichzeitig diesen Job (bei hoher Bezahlung) mache, wäre das ein akzeptabler Kompromiss.

Oder die Rolle mischen

Wenn Sie einen Teil des Unternehmens haben, der an neuen Technologien arbeitet, bieten Sie eine gemischte Rolle an, in der eine überdurchschnittliche Bezahlung dem Mitarbeiter sowohl neue Erfahrungen als auch die höhere Bezahlung der alten Technologie einbringt.

Die meisten Rollen in der Entwicklung kleiner Unternehmen beinhalten ein gewisses Maß an Neuem, gemischt mit einem gewissen Grad an der Aufrechterhaltung des (un)ruhmreichen Alten; Manchmal akzeptierst du, dass du eine Woche damit verbringst, etwas zu reparieren, das aus der Arche kam, einfach so.

Bieten Sie ein sehr familienfreundliches Umfeld

Es gibt eine große Lücke, wo es Jobs geben sollte, die sich um die Familienpläne von qualifizierten, aber familienorientierten Menschen kümmern. Eine Position, die die oben genannten Möglichkeiten zum Erlernen/Einsetzen aktueller Technologien kombiniert, anständig gut bezahlt und äußerst flexibel ist, wäre ein absolutes Geschenk. Ich habe eine Familie, ich würde gerne zwischen dem Abholen der Kinder, ein paar Tagen zu Hause, abends oder außerhalb der Ballettstunde arbeiten können.

Per LeopoldTs ( OP) Kommentar:

Soweit ich weiß , ist mein Unternehmen für diese Art von Projekten das größte im Land. Und das einzige, das so auf diese alten Technologien spezialisiert ist . Ein weiterer Faktor ist, dass es für Kunden sehr schwierig ist, nach 20, 25 oder mehr Jahren bei uns zu Wettbewerbern zu wechseln: Die Menge an zu übertragendem Wissen ist einfach enorm (auch für Geld).

Wenn es Ihrem Unternehmen immer noch gut geht (d. h. mit genügend Ressourcen), dann kann eine effektive Lösung, um die jüngeren Generationen anzuziehen, einfach so sein:

  • Weisen Sie X Stunden der aktuellen Entwicklerzeit zu, um Kurse zu diesen Technologien aufzubauen;
  • Verträge schließen, die eine bezahlte Nachhilfezeit auf der Grundlage dieser Kurse beinhalten;
  • Fügen Sie dem Vertrag Klauseln hinzu, die verlangen, dass der Rekrut nach Abschluss des Kurses eine bestimmte Zeit arbeitet (kein Rechtsexperte: Dies ist möglicherweise nicht möglich oder muss möglicherweise angepasst werden);
  • Werbung an Universitäten mit den gleichen hervorgehobenen Studiengängen (möglicherweise nur mit einem Bachelor-Abschluss und grundlegenden Programmierkenntnissen für die Screening-Tests) und etwas Ähnlichem wie: „Wir sind das größte Unternehmen, das mit [Programmiersprache/-technologie] in [Land] entwickelt, und a Vielleicht wartet bei uns eine stabile Karriereentwicklung auf Sie!" (auch nicht der Marketingexperte ... einige Anpassungen könnten erforderlich sein).

Talente sammeln, Talente ausbilden, Talente sichern.

Das wird nicht billig, aber das wussten Sie wahrscheinlich schon. Die gute Nachricht ist, dass Sie die einzigartige Gelegenheit haben, Ressourcen für veraltete Technologien zu zentralisieren.

Sammeln Sie in erster Linie Talente. Holen Sie sich die besten Entwickler in Ihren Bereichen, die Sie können. Verschieben Sie sie von wo auch immer. Sie können wahrscheinlich ein unschattiges H1B dafür bekommen, um Entwickler zu importieren. Dies wird Ihr Rückgrat.

Du musst dafür werben, dass du Talent übrig hast. Sozialfreundliches Bloggen ist wahrscheinlich die beste Wahl. Sie möchten so viele Ihrer Besten und Klügsten in die Öffentlichkeit bringen, in der Hoffnung, dass ein oder zwei von ihnen zu einer kleinen Berühmtheit werden. Die Marketing-Leute werden die Präsenz zu schätzen wissen, aber Ihr eigentliches Ziel hier ist es, sich in der Entwickler-Community zu behaupten. Sie möchten, dass die anderen A-Spieler Leute sehen, die sie kennen und respektieren. Es wird mehr Lebensläufe zeichnen und einen positiven Kreislauf des Sammelns von Talenten schaffen.

Als nächstes trainieren Sie Talente. Die Oberstufe der Hochschulabsolventen ist für Sie tabu. Entschuldigung, aber so ist das Leben. Sie wollen die Reste aussortieren. Setzen Sie sich mit der Personalabteilung in Verbindung mit staatlichen Stellen, um herauszufinden, wer Umschulungen durchführt. Sie werden wahrscheinlich in der Lage sein, einen Lehrplan aufzustellen, sie auf Staatskosten ausbilden zu lassen und in den ersten 3-6 Monaten kaum die Hälfte ihres Gehalts zu zahlen. Setzen Sie angemessene Erwartungen an sie: Dies ist eine Praktikumsstelle mit der seltenen Möglichkeit einer Anstellung, aber Sie werden ihnen mehr Geld zahlen, als die meisten von ihnen jemals für möglich gehalten haben, wenn sie hart arbeiten und Erfolg haben. Machen Sie Karrieremessen an Community Colleges und nehmen Sie an deren teilam besten und hellsten. Werden Sie Sponsor einiger dieser selbstgesteuerten Online-Lernprogramme und schnappen Sie sich einige starke Selbststarter. Geben Sie Leuten, die ein Portfolio, aber keinen Lebenslauf haben, eine Chance (und stecken Sie sie wahrscheinlich zur Sicherheit mit den Berufswechselpraktikanten zusammen). Rekrutiere notfalls die untere Hälfte der CS-Absolventen, aber ich würde es vermeiden, wenn ich könnte. Dann trainieren Sie sie mit einer Mischung aus Ihrem gesammelten Talent und den besten verfügbaren standardisierten Lehrplänen.

Endlich Talente sichern. Sobald sie Ihre Probezeit überstanden haben, entlassen Sie niemanden aus irgendeinem Grund . Das machen Sie in Ihren Vorstellungsgesprächen und Rekrutierungsprozessen deutlich. Ein Job bei Ihrem Unternehmen ist ein Job, solange Sie die Regeln befolgen und Ergebnisse erzielen. Wenn Sie beim Sammeln von Talenten gute Arbeit geleistet haben, werden Sie zu einem wertvollen Aktivposten für Unternehmenskunden, da Sie bereits fast jeden eingestellt haben, den sie wollen. Sie können dies auch in großem Umfang tun, denn selbst wenn einzelne Kunden kommen und gehen, sollten Sie einen ausreichend großen Kundenpool haben, um alle Rechnungen bezahlt zu halten. Dieser Teil ist das Problem des Marketings.

Viele unserer Stellenausschreibungen für diese Positionen erhalten eine lächerlich geringe Anzahl von Bewerbungen, und noch weniger sind die Leute, die sich nach dem ersten Vorstellungsgespräch für unsere veralteten Projekte interessieren.

Ihr Unternehmen ist scheiße. Der Job, den Sie anbieten, ist scheiße. Die Bezahlung ist scheiße. Machen Sie sich nicht vor, es sei die Schuld der Bewerber oder der Befragten. Du bist es . Niemand will sich überhaupt auf Ihre Stellen bewerben, die wenigen, die es tun, wollen nach einem ersten Treffen nicht einmal mehr mit Vorstellungsgesprächen fortfahren. Sie versäumen es nicht nur, Kandidaten anzuziehen, Sie vertreiben sie aktiv. (Außerdem befinden Sie sich mitten in einer Phase der niedrigsten Arbeitslosigkeit in der amerikanischen Geschichte.) Sie brauchen radikale Veränderungen.

Unser Gehalt ist weit über dem Durchschnitt, für einen Senior könnte es doppelt so hoch sein wie für Konkurrenten.

Sehr unwahrscheinlich. Lassen Sie uns ehrlich über die Gehälter werden. Deuten Sie nicht mit Hinweisen und verschlüsselter Sprache an und lassen Sie mich raten. Ich weiß nicht, was Ihre Vergleichsbasis ist. Sagen Sie mir, was Sie bezahlen. Zahlst du Leuten $350.000+, 425.000+? Das wäre möglicherweise das Doppelte. Was ist ein „Senior“ in Ihrem Unternehmen? 5-10 Jahre aus? Wie ist das dann relevant für Bewerber oder Interviewpartner? Was ist der Weihnachtsbonus – 15 % des Gehalts oder ist es eine 50-Dollar-Lebensmittelkarte?

Wir können den Stapel der Projekte und die verwendete Sprache NICHT ändern

Das bedeutet, dass Sie eine knappe Ressource „kaufen“ (dh einstellen) müssen – die Menschen, die bereit und in der Lage sind, an älterer, veralteter Technologie zu arbeiten. Grundlegende Wirtschaftswissenschaften sagen, dass eine knappe Ressource viel mehr kosten wird.

Nun, es gibt Leute, die diese Arbeit gerne machen würden. Aber wie andere Leute hier gesagt haben, müssen Sie ihnen 1) viel bezahlen (dh mehr als Ihnen angenehm ist) und 2) lächerlich flexibel sein mit Stunden, Ort, Urlaubszeit, Vorerfahrung / Bereitschaft zum Training, Akzeptanz von Teilzeitbeschäftigten, älteren Arbeitnehmern, und 3) machen Sie dies öffentlich -- wie ich schon sagte, lassen Sie mich nicht raten, was Sie zahlen oder ob ich von überall aus arbeiten kann. Und denken Sie daran, dass die qualifiziertesten und kompetentesten Menschen diejenigen sein werden, die am ehesten höhere Gehälter verlangen können und am wenigsten bereit sind, Starrheiten wie bestimmte Arbeitszeiten zu akzeptieren – denn im Allgemeinen sind sie qualifizierte, kluge Leute, die eine erfolgreiche Karriere hinter sich haben lange Zeit.

Wir arbeiten mit multinationalen/weltweiten Banken- und Versicherungsgruppen zusammen

Das ist ein großes Plus. Sie haben jetzt viel Geld .

Um jemanden dazu zu bringen, einen Job anzunehmen, muss er glauben, dass es vorerst ein guter Job ist, und entweder:

  • Glauben Sie wirklich, dass es ein guter Job für den Rest ihres Arbeitslebens sein wird
  • Oder glauben, dass es sie nicht davon abhalten wird, ihren nächsten Job zu bekommen

Da niemand Folgendes vorhersagen kann:

  • wie lange ein Unternehmen in Betrieb sein wird
  • ob das Unternehmen übernommen und/oder die Arbeit in ein anderes Land verlagert wird
  • ob der Mitarbeiter wegen eines schlechten Chefs gehen muss
  • wenn ein Mitarbeiter aufgrund einer Beziehung umziehen möchte etc

Die meisten Menschen sind vernünftig genug, nicht zu glauben, dass ein Job fürs Leben ist, es sei denn, sie planen nur, noch ein paar Jahre zu arbeiten .

Die Quintessenz ist dies. Die meisten Arbeitgeber erwarten Mitarbeiter mit aktueller Erfahrung in den von ihnen verwendeten Systemen ... daher können Sie nichts tun, um Kandidaten anzuziehen und zu halten, ohne ihnen etwas Arbeit an modernen Systemen zu geben .

Daher müssen Sie möglicherweise zusätzliche Projekte übernehmen, die es Ihnen ermöglichen, alle Mitarbeiter in modernen Systemen zu schulen und ihnen die Erfahrung zu vermitteln, während sie sich einige Monate im Jahr mit den "veralteten" Technologien beschäftigen.

Oder vielleicht wirst du der beste Arbeitgeber der Stadt für eine Ausbildung, wobei jeder weiß, dass jemand, der ein paar Jahre für dich gearbeitet hat, bei vielen anderen Unternehmen Jobs bekommen kann. Sie können auch flexible Verträge, kostenlose Kinderbetreuung am Arbeitsplatz, Teilzeitarbeitsregelungen anbieten, die Liste geht weiter. Das macht Sie im Wesentlichen zum einzigen Arbeitgeber in der Stadt, der gut zum Lebensstil mancher Menschen passt.