23 Alternative Karrierewege, in die Softwareentwickler hineinwachsen können

In den letzten fünf Jahren habe ich Dutzende von Gastvorträgen in vielen Coding Bootcamps in Chicago gehalten.

Ein paar Fragen tauchen immer wieder auf: "Welche Sprache soll ich als nächstes lernen?", "Wie kann ich mich auf technische Interviews vorbereiten?", "Stellen Sie ein?"

Aber eine Frage, die mich abschreckte, war: "Was ist, wenn ich kein Softwareentwickler sein möchte?"

Ich habe in letzter Zeit viel darüber nachgedacht. Nach fast einem Jahrzehnt führender Produkt- und Entwicklungsteams wurde mir klar, dass ich für eine neue Herausforderung bereit war, und so begann ich diesen Sommer mit dem freiberuflichen technischen Schreiben. Ich wusste es nicht, als ich meinen ersten Kunden bekam, aber ich erkannte schnell, dass technisches Schreiben einer von vielen gültigen Karrierewegen für ehemalige Softwareentwickler ist .

Was können Softwareentwickler sonst noch tun?

Diese Erkenntnis brachte mich zum Nachdenken: "Welche anderen Aufgaben können Softwareentwickler neben dem Schreiben von Software ausführen?"

Die Liste ist überraschend lang.

Dieser Beitrag wird viele der Karrierewege durchlaufen, die Softwareentwicklern zur Verfügung stehen, insbesondere den jüngsten Bootcamp-Absolventen. Ich werde erklären, was jeder Job macht, wie Sie Ihren Fuß in die Tür bekommen können und welche langfristigen Aussichten Sie haben.

Egal, ob Sie nach einem alternativen Karriereweg suchen, weil Sie keinen Job als Ingenieur gefunden haben oder weil Sie festgestellt haben, dass Softwareentwicklung nichts für Sie ist, dieser Leitfaden hilft Ihnen dabei, eine Karriere zu finden, die zu Ihren Fähigkeiten passt.

Alternative Karrierewege für Softwareentwickler

Kundenbezogene Rollen

Während Softwareentwickler von den Fähigkeiten der Mitarbeiter profitieren, freuen sich einige Bootcamp-Absolventen, mit denen ich gesprochen habe, nicht darauf, den ganzen Tag ruhig zu sitzen und Code zu schreiben. Wenn Sie einen Karriereweg suchen, der mehr Möglichkeiten zur Interaktion mit Menschen bietet, sind diese Jobs möglicherweise für Sie geeignet.

1. Entwicklerbeziehungen, Anwaltschaft oder Evangelisation

Da immer mehr Unternehmen bestrebt sind, Beziehungen zu Entwicklern aufzubauen, die ihre Kunden, Benutzer oder Anwälte sind, wächst der Bereich der Entwicklerbeziehungen schnell.

Entwickler-Relations-Experten (einige Unternehmen nennen sie Entwickleranwälte, Entwickler-Evangelisten, Community-Manager oder "DevRels") helfen beim Aufbau und Aufbau einer Community rund um die Software ihres Unternehmens.

Sie sind häufig an der Erstellung von Demo-Anwendungen, dem Schreiben von Blog-Posts, dem Sprechen auf Konferenzen und der Verwaltung von Social-Media-Konten für Unternehmen mit technologischem Schwerpunkt beteiligt. Viele der namhaften Technologieunternehmen (Facebook, Google, Amazon usw.) stellen Teams von Entwicklern ein.

Wenn Sie sich für dieses Gebiet interessieren, lesen Sie, was Mary Thengvall und PJ Hagerty tun. Sie sind zwei meiner Lieblingsbeeinflusser im Weltraum und haben gemeinsam den Community Pulse-Podcast veröffentlicht.

2. Entwickler-Marketing

Während es einige Überschneidungen mit den Entwicklerbeziehungen gibt, ist das Entwicklermarketing stärker nach außen gerichtet.

Marketing für Entwickler ist besonders schwierig, weil wir nicht gerne verkauft werden. Daher sind viele der aggressiveren Marketingtaktiken, die für andere Märkte funktionieren, hier tabu. Als Person mit technischem Hintergrund verstehen Sie natürlich die Denkweise der Entwickler und haben mehr Einfluss als ein herkömmlicher Vermarkter.

SlashData bietet viele großartige Inhalte zum Thema Entwicklermarketing, einschließlich eines Buches zum Thema im Jahr 2018. Wenn Sie in diesem Bereich anfangen möchten, lernen Sie Online-Marketing: SEO, soziale Medien, Content-Marketing, Influencer-Marketing usw. Sie können viele dieser Fähigkeiten in Ihrem Blog üben, um Ihr Wissen zu demonstrieren, bevor Sie sich für eine Stelle bewerben.

3. Vertriebsingenieur

Viele Ingenieure werden von jedem Job mit "Verkauf" im Titel abgeschaltet, aber das liegt nur daran, dass wir alle auf schlechte Verkäufer gestoßen sind.

Die Wahrheit ist, dass jeder im Verkauf ist. Unabhängig davon, ob Sie sich während des Bewerbungsgesprächs als Bewerber "verkaufen" oder sich für ein neues Framework in Ihrem Engineering-Team einsetzen, bedeutet Verkauf, die Bedürfnisse eines Kunden mit der richtigen Lösung abzustimmen.

Vertriebsingenieure sind insofern einzigartig, als sie über ein gewisses Maß an technischem Fachwissen verfügen. Dies kann eine hervorragende Ergänzung für Entwickler sein, die nicht den ganzen Tag Code schreiben möchten, sondern die Softwareentwicklung verstehen.

Das andere schöne am Verkauf ist, dass Sie dafür keine speziellen Zertifizierungen benötigen. Hubspot bietet eine großartige Einführung in einige Fähigkeiten und Ressourcen, mit denen Sie beginnen können. Da immer mehr Unternehmen Softwaretools und -services für Ingenieure entwickeln, werden Vertriebsingenieure in den kommenden zehn Jahren wahrscheinlich noch gefragter.

4. Technischer Personalvermittler

Ein weiterer Beruf, der unter Software-Ingenieuren einen schlechten Ruf bekommt, ist die technische Rekrutierung.

Ich habe einige ehrliche, echte Tech-Personalvermittler getroffen (Taylor Dorsett und Matt Hoffman aus meiner Heimatstadt Chicago zum Beispiel), aber ich habe auch einige schreckliche, ahnungslose Personalvermittler getroffen, die sich ausschließlich darauf konzentrieren, Kandidaten zu finden, um ihre Quote zu erreichen .

Die gute Nachricht ist, dass Sie mit einem Hintergrund in der Softwareentwicklung mehr Einfühlungsvermögen und Glaubwürdigkeit haben als viele andere technische Personalvermittler. Wie der Vertrieb erfordert dieses Feld eine kontaktfreudigere, beziehungsorientiertere Persönlichkeit, erfordert jedoch keine speziellen Zertifizierungen oder Kurse.

Leider sind viele der Einstiegsjobs in der Tech-Rekrutierung bei Unternehmen von geringer Qualität. Überprüfen Sie daher vor Ihrer Bewerbung unbedingt ihren Ruf bei Glassdoor.

Produktrollen

Wenn Sie im Produktteam bleiben möchten, sich aber nicht sicher sind, ob Sie Softwareentwickler werden möchten, können Sie in viele Bereiche wechseln. Diese Rollen arbeiten eng mit Ingenieuren zusammen, sodass Ihnen Ihre Codierungskenntnisse helfen, aber sie erfordern auch andere Fachkenntnisse.

5. Qualitätssicherung oder Testingenieur

Zwar gibt es subtile Unterschiede zwischen Qualitätssicherung und Testingenieuren, beide befassen sich jedoch mit Testsoftware, bevor diese live geschaltet wird.

Wenn Sie ein Auge für Details haben und gerne kreative Wege finden, um sich wiederholende Aufgaben zu automatisieren, könnte dies ein großartiger Karriereweg sein. Es wird wahrscheinlich einige Codierungen sowie einige manuelle Testarbeiten erfordern.

Kleinere Unternehmen lassen ihre Softwareentwickler den Code des anderen testen. Daher sind dedizierte Test- und QS-Rollen in großen Unternehmen am häufigsten. Es gibt große Unterschiede zwischen der Art und Weise, wie Unternehmen Tests durchführen. Fragen Sie daher unbedingt nach den von ihnen verwendeten Tools, nach der Automatisierung ihrer Tests und nach dem Umfang Ihrer Rolle, der manuelle oder automatisierte Tests mit sich bringt.

6. Business Analyst

Am anderen Ende des Produktentwicklungslebenszyklus stehen Geschäftsanalysten. Sie fungieren normalerweise als Brücke zwischen dem Geschäfts- und dem technischen Team, um sicherzustellen, dass Anforderungen, Einschränkungen und Zeitpläne verstanden werden. Abhängig von der Teamstruktur können sie auch einsteigen und beim Testen und bei der Qualitätssicherung helfen. Daher benötigen sie ein breites Spektrum an Produktkenntnissen.

Wenn Sie einen Hintergrund in Business, Produktentwicklung oder Design und einige Programmierkenntnisse haben, können Sie sich für eine Einstiegsrolle als Business Analyst qualifizieren. Wenn nicht, würde ich empfehlen, einige Online-Kurse zu besuchen, um ein grundlegendes Verständnis der Rolle und ihrer Folgen zu entwickeln.

7. Projektmanager

Wie Business Analysten müssen Projektmanager die Geschäftsanforderungen und technischen Einschränkungen ihres Produkts verstehen.

Der Hauptunterschied besteht darin, dass Projektmanager in der Regel tief in ein einzelnes Projekt eintauchen. Sie definieren häufig Aufgaben und Ressourcen für die Teams, die an dem Projekt arbeiten, und verfolgen den Fortschritt des Projekts, sobald es veröffentlicht wird.

Kleinere Unternehmen können die Rollen des Business Analyst, des Projektmanagements, des Scrum Masters und des Produktmanagers auf verschiedene Weise kombinieren, größere Unternehmen können jedoch separate Verantwortlichkeiten definieren.

Hervorragende Organisationsfähigkeiten, Verständnis für das Geschäft und die Fähigkeiten der Mitarbeiter sind entscheidend, um als Projektmanager erfolgreich zu sein. Diese Rolle hängt von Ihrer Fähigkeit ab, mit Erwartungen umzugehen und Menschen zu motivieren, die möglicherweise älter oder erfahrener sind als Sie. Sie müssen also schnell Vertrauen aufbauen. Die Vielschichtigkeit dieser Rolle eignet sich gut für analytische, technische Mitarbeiter, die keinen Code mehr schreiben möchten.

8. Scrum Master

In agilen Teams hilft der Scrum Master sicherzustellen, dass jeder die Scrum-Theorie, Best Practices und Regeln kennt und einkauft.

Dies sieht letztendlich sehr nach Projektmanagement aus, wobei ein besonderer Schwerpunkt auf der Betreuung der anderen Teams liegt, die am Aufbau des Produkts beteiligt sind. Auch dies ist nicht immer seine eigene Aufgabe, aber in größeren Organisationen kann dies der Fall sein.

Die Fähigkeit, Erwartungen und Einschränkungen zu verwalten, ist entscheidend für Ihren Erfolg als Scrum Master. Sie müssen auch die Best Practices von Agile kennen, daher würde ich empfehlen, einen geeigneten Kurs oder ein Buch zu diesem Thema zu finden. Agile hat bei Unternehmen jeder Größe eine breite Akzeptanz gefunden, sodass dieser Karriereweg in den kommenden zehn Jahren wahrscheinlich weiter zunehmen wird.

9. Produktmanager

Ich habe 2019 viel Zeit damit verbracht, etwas über Produktmanagement zu lernen, um unseren Produktlieferungsprozess bei The Graide Network zu verbessern.

Produktmanager betrachten die Produkte des Unternehmens ganzheitlich, um sicherzustellen, dass sie wünschenswert (Kunden wollen es), rentabel (wirtschaftlich sinnvoll) und machbar (wir können sie bauen) sind. Die Fähigkeit, auf einem hohen Niveau wie diesem zu denken, ist selten. Wenn Sie also über einen technischen Hintergrund verfügen, können Sie sich als Produktmanager gut behaupten.

Produktmanager für Einsteiger beginnen möglicherweise mit kleineren Teilen des Produkts oder als Projektmanager in einigen Organisationen. Dies kann Ihnen einen Einblick in die Produktentwicklung geben und Ihnen helfen, Beziehungen zu allen erforderlichen Stakeholdern aufzubauen, bevor Sie Ihr eigenes Produkt für die Verwaltung zugewiesen bekommen.

10. Designer

Wenn Sie einen Design- oder künstlerischen Hintergrund haben, ist es eine großartige Möglichkeit, sich in Ihrem Bereich von anderen abzuheben, wenn Sie ein UI- oder UX-Designer mit einigen Codierungsproblemen sind. Diese Kombination von Fähigkeiten ermöglicht es Ihnen, effektiver mit Ingenieuren zu sprechen und interaktive Modelle in HTML / CSS zu erstellen, anstatt nur statische Bilddateien.

Wenn Sie nicht viel Erfahrung mit Design haben, nehmen Sie an einem Kurs teil und beginnen Sie mit dem Aufbau eines Portfolios. Viele Unternehmen werden Mitarbeiter ohne Abschluss einstellen, wenn sie ihr Wissen und ihre Fähigkeiten unter Beweis stellen können. Dribbble ist die häufigste Portfolio-Plattform, die ich je gesehen habe, aber Sie können auch Ihre eigene Website verwenden.

11. Kein oder Low-Code-Entwickler

Die Explosion von No-Code- und Low-Code-Entwicklungstools in den letzten Jahren hat Unternehmen Chancen eröffnet, die schnell Software erstellen möchten, ohne ein Entwicklungsteam einzustellen. Mit diesen Tools können Sie eine mobile oder Web-App in Stunden anstatt in Wochen erstellen. Da sie von Jahr zu Jahr besser werden, setzen immer mehr Unternehmen auf No-Code-Apps.

Makerpad- und No-Code-Jobs sind gute Orte, um nach solchen Jobs zu suchen. Da dies ein neues Feld ist, finden Sie eine breite Palette an erforderlichen Fähigkeiten und Gehaltsstufen, aber Ihr Hintergrund-Code wird sich zweifellos als Vorteil erweisen.

Unterstützungsrollen

Viele neue Softwareentwickler sind sich der vielen Mitarbeiter hinter den Kulissen nicht bewusst, die dazu beitragen, dass Server, Websites und Vorgänge reibungslos funktionieren. Für einige dieser Rollen müssen Sie Automatisierungsskripte schreiben oder über fundierte Kenntnisse in der Serveradministration verfügen. Wenn Sie jedoch nach etwas außerhalb des traditionellen Produktentwicklungszyklus suchen, das jedoch technisch ausgerichtet ist, sind diese möglicherweise sehr gut geeignet.

12. Sysadmin oder DevOps Engineer

Große Softwareunternehmen verfügen über Hunderte oder Tausende von Servern, die das ganze Jahr über gepatcht, aktualisiert und gedreht werden müssen. Während die weit verbreitete Einführung von Cloud Computing diesen Job vom physischen Anschließen von Servern zum Arbeiten mit Software wie Terraform und Kubernetes geändert hat, gibt es in diesem Bereich keinen Mangel an Jobs.

Traditionell waren Systemadministratoren für die Wartung und Verwaltung der Server nach Bedarf durch die Entwicklungsteams verantwortlich. Da Unternehmen gewachsen sind und auf Cloud-Hosting umgestellt haben, haben viele den Titel DevOps-Ingenieur übernommen, um die zunehmende Automatisierung widerzuspiegeln, die in diesem Prozess verwendet wird. In der Praxis gibt es viele Überschneidungen zwischen diesen Rollen.

In beiden Fällen benötigen Sie grundlegende Kenntnisse über Betriebssysteme, Hosting-Plattformen, Automatisierungstools, Bash-Scripting und Systemarchitektur. Es kann schwierig sein, Einstiegsjobs in diesem Bereich zu finden, da dies ein so breites Spektrum an technischem Wissen erfordert, aber es ist eine große Rolle, in die Sie übergehen müssen, wenn Sie die problemlösenden Aspekte des Engineerings ohne die UI / UX-Anforderungen am meisten mögen Kundenorientierte Produkte erfordern.

13. Datenbankadministrator

Einige Unternehmen haben Datenbankadministratoren mit Systemadministratoren zusammengelegt, dies kann jedoch eine unterschiedliche Rolle spielen.

Datenbankadministratoren befassen sich mit Sicherheit, Bereitstellung, Skalierung und Optimierung von Datenspeichersystemen auf niedriger Ebene. Sie benötigen Kenntnisse über SQL- und NoSQL-Datenbanken, bewährte Sicherheitsmethoden und einige grundlegende Skriptfähigkeiten, werden jedoch wahrscheinlich nicht den ganzen Tag Code schreiben. Sie müssen sich auch um sehr kleine Optimierungsprobleme wie das Korrigieren von Indizes und Caches sorgen.

Wenn Sie neu in der Softwareentwicklung sind, lernen Sie zunächst alles über Datenbanken. Sie müssen wissen, welche Datenbank für welche Anwendung geeignet ist und wie Sie jede Datenbank maßstabsgetreu optimieren können. Daher kann es schwierig sein, dies selbst zu üben. Wenn Sie große Datenmengen finden möchten, mit denen Sie arbeiten können, lesen Sie Kaggle.

14. Site Reliability Engineer

Site Reliability Engineers sind dafür verantwortlich, auf kritische Probleme in der Produktion zu reagieren und diese zu beheben. Oft bedeutet dies, dass sie sich durch eine Bereitschaftsliste drehen, sodass Sie möglicherweise einige seltsame Stunden arbeiten. Der Vorteil ist, dass Sie wirklich gut darin sind, eine Vielzahl ungewöhnlicher Probleme zu lösen, automatisierte Warnungen zu erstellen und Serverprotokolle zu lesen.

Aufgrund der hohen Reaktivität dieses Auftrags kann es schwierig sein, erfahrene Softwareentwickler für lange Zeit in den Rollen der Standortzuverlässigkeit zu halten. Das heißt, es könnte ein großartiger Ort sein, um Ihren Fuß in die Tür zu bekommen, wenn Sie Probleme haben, Ihre erste Softwareentwicklungsrolle zu finden. Ich kenne zwei Bootcamp-Absolventen, die vor dem Übergang in die Softwareentwicklung in SRE-Rollen angefangen haben. Vielleicht finden Sie sogar, dass Ihnen die Herausforderung und die Aufregung einer schnellen Problemlösung gefallen.

15. Technischer oder Kundensupport

Während einige Ingenieure die Interaktion mit Kunden fürchten, empfinden andere es als anregend, Menschen den ganzen Tag bei der Lösung von Problemen zu helfen. Ihre Erfahrung im Codieren macht Sie zu einem idealen Kandidaten für Kundensupportrollen bei Softwareunternehmen, die jemanden mit technischem Hintergrund benötigen, um Fragen zu beantworten und Korrekturen vorzuschlagen.

Der Nachteil bei der Unterstützung ist, dass Sie möglicherweise im schlimmsten Fall mit Menschen interagieren müssen. Unzufriedene oder frustrierte Benutzer sind wahrscheinlich nicht glücklich, mit dem technischen Support-Team zu sprechen. Sie benötigen daher viel Geduld und dicke Haut, um lange in dieser Rolle zu bleiben.

Rollen lehren und schreiben

Ich habe es immer geliebt zu unterrichten, deshalb habe ich mich für technische Rollen interessiert, die es mir ermöglichten, dies zu tun. Wenn Sie gerne komplexe Themen aufschlüsseln und anderen Ingenieuren vorstellen, können Sie einige Karrierewege beschreiten.

Lehrrollen für Softwareentwickler

16. Technischer Redakteur

Mein drittes Praktikum am College war als technischer Redakteur bei einem großen Unternehmen. Es war ziemlich trocken zu schreiben, aber ich habe es genossen, jeden Tag neue Dinge zu lernen.

Seitdem habe ich festgestellt, dass technisches Schreiben nicht nur Dokumentation bedeutet. Sie können technisches Bloggen oder Texten betreiben. Sie können interne oder externe Dokumentation erstellen. Sie können Demo-Apps und Tutorials erstellen. Es ist eines der bestbezahlten Felder für Schriftsteller, daher lohnt es sich, darüber nachzudenken.

Wenn Sie diesen Weg gehen, müssen Sie (offensichtlich) gut schreiben, komplexe Ideen organisieren und neue Dinge lernen können. Je mehr Sie in der Lage sind, sich selbst zu bearbeiten, desto wertvoller wird Ihre Arbeit. Investieren Sie also in Tools, die Sie besser und effizienter machen.

Sie können mit dem Schreiben für einige der kostenpflichtigen Community-Schreibprogramme beginnen und diese Erfahrung in einen Vollzeitjob umwandeln, während Sie ein Netzwerk und ein Portfolio aufbauen.

17. Lehrer

Es gibt verschiedene Möglichkeiten, wie Sie von einer Karriere in der Softwareentwicklung zu einer Karriere als Lehrer wechseln können. Sie könnten einen Job als Lehrer in einem Coding Bootcamp bekommen, Sie könnten an einem College oder einer High School unterrichten, Sie könnten einer Plattform wie egghead.io beitreten oder Sie könnten Ihre eigene Kurswebsite mit Teachable oder Educative erstellen. Der Weg, den Sie einschlagen, hängt von Ihrem Hintergrund und Ihrer Risikotoleranz ab.

In jedem Fall müssen Lehrer schnell neue Informationen lernen und sie ihren Schülern in einem verdaulichen Format präsentieren. Sie müssen Ihr Publikum auf seiner Ebene treffen und Vertrauen zu ihnen aufbauen, um erfolgreich zu sein. Das Unterrichten kann weniger kosten als die Softwareentwicklung, aber es kann auch ein sehr erfüllender Karriereweg sein.

18. Trainer

Corporate Training ist eine andere Form des Unterrichts, aber auch eine Überlegung wert. Trainer können als unabhängige Berater oder Mitarbeiter in großen Unternehmen arbeiten, wo sie normalerweise zu den Büros ihrer Kunden reisen, um praktische Schulungen für spezielle Software durchzuführen.

Trainer verfügen zwar über fundiertes technisches Wissen, einige sind jedoch nur technisch versierte Kommunikatoren. Unternehmensschulungen zahlen sich in der Regel besser aus als Unterricht, können aber auch vertriebsorientierter sein. Trainer sprechen häufig auf Konferenzen, halten Community-Workshops ab oder reisen zwischen den Schulungen zu Meetup-Gruppen.

Wenn Sie gerne auf der Bühne stehen und technische Konzepte präsentieren, könnte dies ein idealer Karriereweg sein.

Analytische Rollen

Viele Rollen in Technologieunternehmen erfordern analytische Fähigkeiten. Während viele dieser Bereiche eine spezielle Ausbildung erfordern, lohnt es sich, sie in Betracht zu ziehen, wenn Sie sich beruflich vom Software-Engineering abwenden. Sie können in einem anderen Tempo arbeiten als die meisten produktorientierten Ingenieure, und wie bei einigen der oben genannten Support-Rollen können Sie möglicherweise mit anderen Teilen des Unternehmens interagieren.

19. Datenwissenschaftler oder Ingenieur

Diese beiden Rollen (einige Unternehmen kombinieren sie) umfassen die Verwendung großer Datenmengen, um dem Unternehmen oder seinen Kunden zu helfen, bessere Entscheidungen zu treffen.

Dateningenieure arbeiten normalerweise an der Datenaufnahme- und Organisationspipeline, während Datenwissenschaftler die Experimente und Algorithmen entwerfen, mit denen diese Daten zu nützlichen Ergebnissen verarbeitet werden. Die Datenwissenschaft (KI, maschinelles Lernen usw.) ist ein riesiges Gebiet mit Wurzeln in Mathematik, Softwareentwicklung und Statistik.

Es gibt Kurse, Bootcamps und Hochschulabschlüsse für Datenwissenschaft und Ingenieurwesen, aber Sie können möglicherweise einige der Grundlagen selbst erlernen, wenn Sie über einen starken mathematischen Hintergrund verfügen. Wenn nicht, sollten Sie zuerst die numerische Analyse, die Matrixalgebra und die Statistik auffrischen.

Da das Erlernen dieser Fähigkeiten lange dauert und Datenwissenschaftler sehr gefragt sind, zahlt sich diese Rolle gut aus und wird wahrscheinlich nicht so schnell verschwinden.

20. Sicherheitsanalyst

Informationssicherheitsrollen fliegen normalerweise unter dem Radar, bis etwas schief geht. Während jeder Entwickler Sicherheitslücken und -risiken kennen sollte, werden Sicherheitsanalysten explizit beauftragt, Korrekturen für Sicherheitsprobleme zu finden, zu katalogisieren und vorzuschlagen.

Einige arbeiten als unabhängige Berater, aber in größeren Unternehmen gibt es möglicherweise interne Teams. Diese Rolle ist interessant, da sie eine Mischung aus technischen Fähigkeiten, Compliance-, Geschäfts- und Risikobewertungsfähigkeiten erfordert.

Sicherheitsjobs gehören auch zu den am schwierigsten zu besetzenden für Technologieführer, sodass Sie hier Arbeitssicherheit haben. Informationssicherheit ist ein weites Feld. Sehen Sie sich daher einige der vielen Wege an, die Sie einschlagen können, wenn Sie daran interessiert sind, sie zu verfolgen.

21. F & E.

Die Arbeit in Forschung und Entwicklung kann für jemanden mit Software-Engineering-Kenntnissen eine einzigartige Erfahrung sein. Große Unternehmen wie Google und Amazon verwenden einen Teil ihres Gewinns für Experimente mit hohem Risiko und potenziell hohem Ertrag, die von Forschungs- und Entwicklungsteams durchgeführt werden. Zu diesen interdisziplinären Teams können Softwareentwickler, Datenwissenschaftler, Geschäftsanalysten und Projektmanager gehören.

Es ist schwierig, in ein gutes Forschungs- und Entwicklungsteam einzusteigen. Diese Rollen sind in der Regel wettbewerbsfähig und erfordern hochspezialisiertes Wissen über Themen, die Sie in einem Coding-Bootcamp wahrscheinlich nicht lernen werden. Einige Unternehmen stellen jedoch ethische Hacker, Gründer oder Polyglotten ein, um das Team abzurunden und kreatives Denken in die Mischung einzubringen.

Unabhängigkeit und Flexibilität

Während unser Beruf oft Fernarbeit und manchmal sogar Sabbaticals erlaubt, möchten Sie vielleicht noch mehr Flexibilität in Ihrem Leben. Wenn Sie den Antrieb haben, ein eigenes Unternehmen zu gründen, können Sie möglicherweise 4 Stunden pro Woche arbeiten, sechs Monate im Jahr auf Reisen verbringen oder die Hälfte Ihrer Zeit mit Open Source-Projekten verbringen. Es ist nicht einfach, aber als Softwareentwickler haben Sie die meisten Leute im Griff.

22. Freiberufler oder Berater

Eine Möglichkeit, mehr Freiheit zu erlangen, besteht darin, Ihren 9-5-Job zu verlassen und freiberuflich tätig zu werden. Als Freiberufler vermieten Sie sich an einen oder mehrere Kunden, die Sie stundenweise bezahlen, um Code für sie zu schreiben. Unternehmen stellen häufig Freiberufler ein, um an bestimmten kurzfristigen Projekten zu arbeiten, technische Schulden zu beseitigen oder Lücken zu schließen, wenn ein Mitarbeiter eine Pause macht.

Berater sind High-End-Freiberufler, die spezifische Probleme für ihre Kunden lösen. Während sie möglicherweise Code schreiben, werden sie häufig aufgrund ihres Fachwissens oder ihres einzigartigen Hintergrunds eingebracht. Die Grenze zwischen Freiberuflern und Beratern ist ziemlich verschwommen, lassen Sie sich also nicht zu sehr von der Semantik einfangen.

Der Einstieg als Freiberufler oder Berater ist der schwierigste Teil. Wenn Sie kein großes Netzwerk haben, verlassen Sie sich wahrscheinlich auf Plattformen wie Upwork oder Toptal, um Kunden zu finden. Diese Plattformen reduzieren Ihren Umsatz erheblich und zwingen Sie dazu, direkt mit vielen anderen Freiberuflern auf der ganzen Welt zu konkurrieren.

Wenn Sie eine Reputations- und Kundenliste erstellen, können Sie mehr Arbeit aus Empfehlungen erhalten. Empfehlungen sind großartig, da der Kunde aufgrund einer vertrauenswürdigen Beziehung und nicht aufgrund der Anonymität des Internets zu Ihnen kommt. Wenn Sie wirklich gut in freiberuflicher Tätigkeit oder Beratung sind, können Sie Ihre Rate so hoch anheben, dass Sie zwischen den einzelnen Einsätzen eine Auszeit nehmen können.

23. Startup-Gründer

Das Internet ist voll von Geschichten von Software-Ingenieuren, die ein Unternehmen gründen (1, 2, 3), sodass Sie möglicherweise den Eindruck haben, dass dies einfach oder sogar eine gute Idee ist.

Die Wahrheit ist, es kommt darauf an.

Startups brauchen normalerweise viel Zeit, um Einnahmen zu generieren. Daher müssen Sie mehrere Monate oder Jahre ohne Gehaltsscheck leben, damit dies funktioniert. Das heißt, wenn Sie Ihr eigenes Software-Geschäft aufbauen möchten, sind die Vorteile nahezu unbegrenzt.

Möglicherweise können Sie ein Unternehmen auch außerhalb Ihrer regulären Arbeitszeit gründen. Dies ist zwar schwierig (und kann rechtliche Konsequenzen haben), aber nicht ungewöhnlich. Wenn Sie einen oder zwei andere Gründer finden, mit denen Sie die Last teilen können, kann dies Ihre Erfolgschancen erhöhen.

Abschließende Gedanken

Software Engineering ist ein spannendes Feld, aber nicht jedermanns Sache. Selbst wenn Sie gehen, werden die Fähigkeiten, die Sie erworben haben, nicht verloren gehen, wenn Sie sich entscheiden, etwas anderes zu tun.

Viele Bootcamp-Absolventen haben Angst, Jobs außerhalb des Bereichs der Softwareentwicklung zu suchen, aber ich möchte Sie ermutigen, Ihren eigenen Weg zu gehen. Stimmen Sie die Praktikabilität (genug Geld verdienen, um zu leben) mit Ihren Interessen ab, und hoffentlich finden Sie einen Karriereweg, auf dem sich Arbeit nicht als "Arbeit" anfühlt.

Ich würde gerne deine Gedanken hören. Wenn Sie einen unkonventionellen Weg eingeschlagen oder eine Karriere gewechselt haben, teilen Sie mir Ihre Meinung auf Twitter mit.