Dies ist ein Dilemma, über das ich schon eine ganze Weile nachgedacht habe.
Ich bin ein Doktorand und meine Interessengebiete sind Programmiersprachendesign, Codeanalyse, Kompilierung usw. Bisher war dieses Gebiet für mich sehr interessant und lohnend, daher habe ich darüber nachgedacht, einen Job in diesem Gebiet zu finden und fortzufahren darauf zu spezialisieren. Ich denke, es ist ein relativ solides Feld, das nicht so schnell "aus der Mode kommt". Ich habe immer gedacht, dass es in solch komplexen Bereichen besser ist, ein echter Experte zu sein als nur ein anderer, der oberflächlich versteht, wovon die Experten sprechen.
Andererseits habe ich das Gefühl, dass ich durch diese Spezialisierung meine zukünftige Option wirklich einschränke. Ich habe immer stark an multidisziplinäre Herangehensweisen an Probleme geglaubt. Vielleicht sollte ich mich auf die Suche nach einem allgemeinen Programmierjob machen, in dem ich Erfahrungen in anderen Bereichen sammeln und gelegentlich mein Lieblingsfach zur Problemlösung anwenden kann. Die Spezialisierung auf nur ein oder zwei Gebiete kann mich daran hindern, über den Tellerrand hinauszudenken und Stagnation zu verursachen.
Ich würde wirklich gerne mehr Meinungen über diese Wahl hören. Die Wahrheit ist, dass ich mich bereits auf eine der Entscheidungen neige. Die grundlegende Psychologie sagt also, dass nichts meine Meinung ändern wird, aber ich würde immer noch gerne Feedback hören.
quelle
Antworten:
Spezialisieren Sie sich, wenn es Ihnen gefällt
Wie Sie wissen, entstehen Ihnen bei Spezialisierung automatisch Opportunitätskosten, da Sie nicht sofort für andere Technologien in Frage kommen (z. B. werden Java-Programmierer häufig nicht sofort für Compiler-Optimierungsaufträge akzeptiert). Sie müssen dies jedoch mit Ihrer Vorliebe für die Komplexität Ihrer gewählten Disziplin in Einklang bringen.
Sie sagen, Sie möchten ein Experte sein - machen Sie weiter und nehmen Sie sich die Zeit, Ihre gewählte Disziplin zu erlernen. Wir als Community brauchen immer neue Experten. Mein Rat ist jedoch, der pragmatischen Empfehlung des Programmierers zu folgen: "Jedes Jahr eine neue Sprache lernen" . Auf diese Weise können Sie, während Sie sich mit der lexikalischen Analyse der algorithmischen Codierung beschäftigen, auch eine kleine iPhone-App herausbringen, die Sie nebenbei interessiert. Sie werden nie wissen, dass die Kreuzpollenbildung verschiedener Paradigmen zu Einsichten führen kann, die Ihre Spezialisierung auf neue Gebiete ausweiten.
quelle
Ich denke, es hängt davon ab, was Sie von Ihrer Karriere erwarten ...
Auf technischer Ebene : Wenn Sie ein Alleskönner sind, können Sie sich für eine größere Auswahl an Rollen bewerben als für jemanden, der extrem spezialisiert ist. Wenn Sie anpassungsfähig sein und sich frei bewegen und nicht an eine bestimmte Nische gebunden sein möchten, ist dies wahrscheinlich nicht so schlimm. Der Nachteil ist jedoch, dass Sie wahrscheinlich auf ein relativ junges / mittleres Rollenlevel beschränkt sind, es sei denn, Sie gehen tiefer in einen bestimmten Bereich ein.
Die Spezialisierung auf ein bestimmtes Gebiet ist so ziemlich das Gegenteil von dem oben Gesagten. Sie werden wahrscheinlich in der Lage sein, einen höheren Status und ein höheres Einkommen zu erlangen (wenn Sie sich natürlich in einer guten Nische mit hoher Nachfrage befinden), aber Sie werden wahrscheinlich in hohem Maße in diese Spezialität eingestuft.
Im weitesten Sinne sind dies also die technischen Entscheidungen.
Auf politischer Ebene : Wenn Sie von "Karrierefortschritt" im Hinblick auf den Aufstieg zum Management und dergleichen sprechen, spielt es im Allgemeinen keine Rolle, was Sie technisch tun. Praktisch jeder, den ich kenne, der von einer Programmierrolle zum Management aufgestiegen ist, hat die Menschen und Geschäftsprozesse in seiner Organisation sehr gut kennengelernt . Einige waren Spezialisten und andere Generalisten (in Bezug auf die Technologie, mit der sie arbeiteten) - aber ALLE waren in der Organisation sehr tief verwurzelt, kannten die Menschen und Prozesse gut und es wurde für sie im Grunde nur logisch, diese Verantwortlichkeiten zu übernehmen.
Wenn Sie also Ihre Karriere in Bezug auf die Aufwertung der Managementhierarchie vorantreiben möchten, müssen Sie im Grunde genommen die Politik spielen. Generalist gegen Spezialist zu sein, ist nicht so wichtig (vielleicht wird man nur ein bisschen Spezialist für die Prozesse und Technologien, die man managen wird).
quelle
Erstens übertreiben Stellenausschreibungen häufig den Grad der erforderlichen Spezialisierung. Kein Unternehmen schreibt in einer Stellenausschreibung: "Wir brauchen jemanden, der etwas über Javascript weiß, weil wir nichts wissen." Sie setzen dort "Javascript-Experten" ein, weil sie, wenn alles andere gleich ist, jemanden suchen würden, der tatsächlich ein Experte ist. Das bedeutet nicht zwangsläufig, dass nur Experten für die Aufgaben qualifiziert sind, die das Unternehmen in Javascript erledigt hat (und Sie wären überrascht, wie oft sie nicht einmal wissen, was sie erledigen müssen). Sorgen Sie sich also nicht zu sehr darum, ein "Experte" zu sein. Bewerben Sie sich für Stellen, bei denen Sie sich mit den ausgeschriebenen Fähigkeiten auskennen und sehen Sie, wie es im Vorstellungsgespräch läuft. Gut in einem Job zu sein, bedeutet viel mehr als nur, wie viele Jahre [Sprache einfügen] Sie hinter sich haben. Und wenn sich der Job lohnt,
Es geht darum, einen Job zu bekommen. um einen Job zu behalten, kann es wunderbar sein, ein JOAT zu sein. Wenn Ihr Unternehmen verschiedene Sprachen und Plattformen erforscht, sind Sie dem Spiel einen Schritt voraus. Wenn Ihr MS-Unternehmen plötzlich einen UNIX-Mitarbeiter für etwas braucht, sind Sie der Ansprechpartner (entweder für diesen Mitarbeiter oder für die Einstellung eines "Experten"). Einen Job zu behalten, bedeutet, unverzichtbar zu sein, egal was passiert, und JOAT ist ein guter Weg, dieser Typ zu sein.
Außerdem wird es einfacher, einen neuen Job zu finden, wenn Ihr Unternehmen untergeht :)
quelle
Ja und nein Das Problem ist, dass du niemals ein Rockstar sein wirst. Du wirst niemals der Typ sein, der mit C Sachen machen kann, die sonst niemand kann. Ihr Mangel an Fokus schließt diese Art der hervorragenden Leistung aus.
Auf der anderen Seite, wenn das Management entscheidet , dass sie nicht eine Tonne Programmierer leisten können, werden sie nicht feuern Sie , halten ihn . Flexibilität hat ihre Vorteile.
Ich bin ein Jack und meine Abteilung hat in den letzten 4 Jahren einen Rückgang von 80% verzeichnet. Doch hier bin ich. Das liegt zum Teil daran, dass ich weniger konzentriert bin als die meisten anderen. Ich mag es, eine Aufgabe zu bekommen, von der ich nichts weiß, und meine Chefs mögen die Tatsache, dass ich "Sicher!" Sage. egal was für seltsame Arschscheiße sie haben. Und wenn Sie das große Ganze verstehen, ist das eine Art von Rockstar, den die meisten Spezialisten niemals erreichen, und es kann lukrativ sein.
Wenn du also ein Rockstar sein willst, musst du dich konzentrieren, denn niemand kann besser sein als alle anderen. Aber wenn Sie Stabilität suchen, entscheiden Sie sich für Flexibilität, denn Flexibilität ist marktfähiger als schlechter Arsch.
quelle
Generalist vs. Specialist ist ein Artikel von CIO.com, aber es gibt wahrscheinlich Dutzende von ähnlichen Artikeln oder Blogposts von Leuten, die versuchen zu sehen, ob einer besser ist als der andere. Jeder hat seine Vor- und Nachteile. Jeder, der sagen will, dass einer den anderen völlig übertrumpft, kann in gewissem Maße voreingenommen sein.
Vergessen Sie nicht, dass es auf jeder Seite Ihrer Wahl eine mögliche Illusion gibt. Was Sie als Spezialisierung betrachten, kann verschiedene Geschmacksrichtungen haben. Würden Sie beispielsweise Webentwickler insgesamt als Spezialisten oder Generalisten betrachten? Einige sehen dies als Spezialisierung und andere als eher umfassend, da viele webbasierte Anwendungen heutzutage alle Arten von Komponenten enthalten können, die zu einem gewissen Grad unterschiedliche Fachkenntnisse erfordern.
Während die Bereiche, die Sie auflisten, mich denken lassen, dass Sie für ein Softwareunternehmen arbeiten möchten, gibt es möglicherweise einige Teile der Informationstechnologie, die ähnliche Fähigkeiten in gewisser Weise nutzen könnten. Sie können sich damit befassen, wie viel Anpassungsaufwand für verschiedene Standardsoftware erforderlich ist und wie gut dies für die meisten Unternehmen eine Investition ist, um ein Beispiel von der Stange zu geben.
quelle
Merken. Ihre Zukunft erstreckt sich über Jahrzehnte.
Die derzeitige Technologie wird erheblich nachlassen, wenn sich neue Möglichkeiten ergeben.
Spezialisierung schadet überhaupt nicht.
Ich habe mich darauf spezialisiert, Papierkarten zu lochen, um COBOL-Programme zu schreiben. Jetzt schreibe ich Python und habe seit Jahrzehnten keine Lochkarte mehr angerührt.
Technologie kommt und geht. Was immer Sie sich jetzt spezialisieren, wird in einem Jahrzehnt verschwunden sein und Sie werden sich auf etwas anderes spezialisieren. Oder du wirst obsolet.
Sich um "Erfahrung in anderen Bereichen" zu sorgen, ist Zeitverschwendung. Sie werden diese Erfahrung machen, ob Sie wollen oder nicht.
quelle
Es hängt davon ab, was Ihre Karriere ist. Ich denke, es sollte Ihrer Karriere helfen, wenn Sie ein allgemeiner Berater sein, ein eigenes Unternehmen gründen, für ein kleines Unternehmen arbeiten oder in einer anderen Situation, in der diese Art von Flexibilität ein anerkannter Vorteil ist. Ich bin in der gleichen Situation und arbeite derzeit als Berater, obwohl ich mich auf .NET / C # / SQL / ASP spezialisiere.
Ja, ich denke, Sie könnten nach kleinen Unternehmen suchen, die nicht für jeden Fachbereich jemanden einstellen können, oder Berater sein.
(Es ist auch keine schlechte Idee, einen Bereich auszuwählen, auf den Sie sich spezialisieren, und Ihre allgemeineren Fähigkeiten beizubehalten.)
quelle
Wenn ich Entwickler einstelle, bin ich voreingenommen gegenüber Leuten mit Stärke und Erfahrung in den besonderen Fähigkeiten, die ich suche. Die Personalvermittler werden diese Tendenz erheblich verstärken. Das heißt, auch wenn ich Sie anheuere (und ich mag Leute mit breiten Fähigkeiten und gutem Grundwissen, die lernen können), werde ich wahrscheinlich nie mit Ihnen sprechen.
Ich selbst war schon immer ein Alleskönner und hatte viele verschiedene Berufsbezeichnungen in der gleichen Firma, in der ich den größten Teil meiner Karriere verbracht habe. Trotzdem fürchte ich die Aussicht, nach einer Arbeit suchen zu müssen, und ich glaube nicht, dass ich bei meinem derzeitigen Gehalt leicht eine andere Arbeit finden könnte (was sehr befriedigend ist, aber die Leute hier kennen mich).
quelle
wie gewöhnlich...
Es hängt davon ab, ob
Es kommt darauf an, was Sie unter "Karriere" verstehen. Mehr zu dem Punkt, es hängt davon ab , was Sie denken , Sie durch „Karriere“ bedeuten.
In diesen Tagen arbeite ich viel mit Webanwendungen. Als ich diese Karriere begann, existierte das World Wide Web noch nicht. Die Antwort von @ Satanicpuppy ist also zu einem großen Teil richtig.
Das Gebiet der Alleskönner (JOT) bietet vier Vorteile:
Der Hauptnachteil ist: Es dauert viel, viel länger, um zu glänzen , weil Sie die Lernkurve an mehreren Fronten vorantreiben.
Bin ich ein so guter DBA wie einige Freunde, die seit 15 Jahren nichts anderes tun? Natürlich nicht. Kann ich in einem Moment Lösungen sehen, die sie sich in 14 Tagen nicht mehr vorstellen können? Ja.
Ich denke, der beste Rat ist, weiterhin ein JOT zu sein, bis Sie etwas finden, das so faszinierend und so überzeugend ist, dass Sie es tun möchten, und nur bis zum Ende der Zeit. Das "es" wird Ihre Spezialität sein.
Ich mag es, neue, schwierige Probleme zu lösen, nach Innovationen zu suchen, um das Alltägliche zu töten, und ständig zu lernen - das ist mein "Es" und es ist der Grund, warum ich IT liebe
Generalist zu sein ist meine Karriere.
quelle
Ich denke, einer der Gründe, warum Unternehmen spezialisierte Menschen suchen und schätzen, liegt in undichten Abstraktionen . Das Problem ist, dass Softwareentwickler in den letzten 30 Jahren die Anzahl der Abstraktionsebenen exponentiell erhöht haben und so sehr wir sicherstellen möchten, dass es keine Nebenwirkungen gibt, sie immer auftreten. Und es sind die undokumentierten Eigenheiten, die dich neigen.
Sie können vielleicht schnell mit der Nutzung neuer Technologien beginnen, indem Sie Spezifikationen und Online-Beispiele lesen. Haben Sie jedoch jemals bemerkt, dass Sie 20% Ihrer Zeit damit verbringen, Code für ein Feature zu schreiben, und 80% Ihrer Zeit damit, den seltsamsten Fehler zu suchen? hast du schon mal gesehen? Wenn Sie Experte in einem Bereich werden, ändert sich diese Ration von 20/80 auf 95/5 (ich mache Zahlen, aber im Allgemeinen sind sie wahrscheinlich nah), und zwar speziell in diesem Bereich. Das heißt, Sie können die Arbeit viel schneller erledigen und Fallstricke / häufige Fehler vermeiden, bevor sie überhaupt auftreten. Zum Beispiel hat heute früher einer unserer leitenden Ingenieure (neu im Team / Produkt) mehr als einen halben Tag damit verbracht, nach einem Problem mit der Stapelbeschädigung zu suchen, bei dem ich 5 Minuten gebraucht habe, um es zu identifizieren, weil dies zufällig mein Zuhause war.
Wenn Sie ein Experte auf Ihrem Gebiet werden, werden Sie für das Management sichtbarer und wertvoller. Ich kenne keine anderen Unternehmen, aber bei denen, bei denen ich gearbeitet habe, hängt Ihre Vergütung (zumindest teilweise) davon ab, wie wichtig Ihre Aufgaben sind. JOAT hat in der Regel keine ständigen Verantwortlichkeiten. Stattdessen verwenden Manager sie als bewegliche / austauschbare Ressourcen (unsere Vizepräsidentin nennt sie Schweizer Taschenmesser), die je nach Bedarf von einem Team in ein anderes versetzt werden können. Sie können also 10 Jahre im Unternehmen bleiben und dann zurückblicken und feststellen, dass Sie nie eine einzige Verantwortung übernommen haben. Ich habe einen sehr guten Freund (der auch ein ausgezeichneter C ++ / C # -Entwickler ist, aber zufällig auch ein sehr guter JOAT ist, weil er jede Arbeit übernimmt), der in eine solche Rolle typisiert wurde. Ich weiß, dass er nicht glücklich ist, denn obwohl ich einen sehr großen und lustigen Teil des Produkts als Spielplatz habe, ist er meistens ein vorübergehender Gast in einem fremden Land. Aber jetzt kann er nicht raus.
Trotzdem ist es genauso wichtig, die Fähigkeiten von JOAT zu besitzen. Obwohl ich nicht unbedingt versuchen würde, mich als JOAT zu positionieren, denke ich, dass es wichtig ist, weiterhin zu lesen, zu lernen und neue Dinge zu lernen, da sich die Technologie verändert und selbst wenn Sie Wenn Sie heute ein Experte sind, müssen Sie möglicherweise morgen ein Experte für etwas ganz anderes werden.
quelle
Ich würde absolut sagen.
Aber du musst rausgehen und es holen, es wird nicht in einer Zeitung oder einer Online-Stellenanzeige erscheinen (die Wahrscheinlichkeit ist gering). Anstatt sich auf spezialisierte Jobs zu konzentrieren, sollten Sie sich also nach Jobs umsehen, die Ihre unterschiedlichen Stärken ausspielen. "Marginal gut" ist subjektiv, vielleicht bist du zu hart mit dir selbst, auch bescheiden, aber das ist eine gute Sache (-:
Auch wenn Ihre Erfahrungen und Ihr Fachwissen wichtig sind, sind Arbeitgeber mehr an Ihrer Fähigkeit interessiert, Ergebnisse zu liefern. Fragen Sie sich: Was kann ich mit meinen vielfältigen Kenntnissen und Erfahrungen tun, um das Unternehmensergebnis zu verbessern ? Wenn ich Ihren Lebenslauf nicht sehe, sind einige Titel, die ich mir nicht vorstellen kann, Lösungsingenieur, Architekt (Netzwerk, Anwendung usw.) oder sogar CTO.
Schließlich ist mein Rat, eine Karriere von dem zu machen, was Sie genießen. Sie müssen es viele Jahre lang mehr als 8 Stunden am Tag machen, und Sie können genauso gut mögen, was Sie mit dieser Geschwindigkeit tun (-;
HTH und die besten Wünsche,
KM
quelle
Es ist wahr, dass die meisten Stellenanzeigen zu spezifisch oder zu anspruchsvoll gegen sie sind. Sie sind wie Anzeigen geschrieben (wahrscheinlich, um anderen zu zeigen, wie leistungsfähig sie sind), aber es verhindert, dass einige großartige Profile angewendet werden, und zwar aus den Gründen, die Sie in Ihrer Frage angeben.
Hier ist die Stellenanzeige, die ich verwende:
Wie Sie sehen, sind außer der allgemeinen Erfahrung mit .NET keine weiteren Kenntnisse erforderlich. Was jedoch erforderlich ist, ist die Fähigkeit, neue Dinge zu lernen.
Da Sie nicht kontrollieren können, wie Unternehmen ihre Stellenbeschreibungen verfassen, sollten Sie sie als Lernmöglichkeiten ansehen.
Wenn ich eine Stellenanzeige sehe, die sehr anspruchsvoll ist, sehe ich das als Gelegenheit, neue Dinge zu lernen. Während des Interviews (wenn ich es bekomme) erkläre ich, dass ich, da meine Motivation darin besteht, zu lernen und Dinge zu erledigen, nicht allzu sehr von dem Mangel an Erfahrung in einer der aufgelisteten Technologien betroffen wäre.
Tatsächlich habe ich so schnell gelernt: indem ich mir anspruchsvolle Jobs ausgesucht habe .
quelle