Ich bin ein neuer College-Absolvent (letzten Mai!). Während ich noch in der Schule war, wollte ich sicherstellen, dass ich vor meinem Abschluss einen Job hatte, und sehr früh (wahrscheinlich zu früh) bei meiner Arbeitssuche entschied ich mich für einen in einer Region, in die ich nach dem Studium gehofft hatte .
Ich habe diese Entscheidung jedoch schon seit Monaten aus mehreren Gründen erraten. Zum einen bin ich bei der Arbeit nicht sehr herausgefordert, und ich habe das Gefühl, dass ich mich beim Programmieren nicht wesentlich verbessert habe, seit ich hier angefangen habe. Ich kann mir jedoch jederzeit Zeit nehmen, um außerhalb meines Jobs an Open Source zu arbeiten (und habe dies in der Vergangenheit getan), sodass ich einen Ort habe, um diese Enttäuschung zu umgehen. Noch wichtiger ist, dass ich mir Sorgen mache, dass es meine Aufgabe ist, an einer knarrenden alten Perl-Webanwendung zu arbeiten (mit Mason und einem seltsamen internen ORM).
Schieße ich mir hier in den Fuß, indem ich mit einer Technologie arbeite, die nicht mehr beliebt ist und mir in Zukunft nicht wirklich hilft, einen Job zu finden? Ich sehe selten Perl-Jobs, und wenn ich das tue, macht es normalerweise etwas, an dem ich nicht interessiert bin (Front-End-Webentwicklungsmaterial).
Systemprogrammierung, Visualisierung, Netzwerkprogrammierung oder zumindest Backend-Webentwicklung sind Themen, an denen ich gerne arbeiten würde. Meine derzeitige Berufserfahrung scheint mir nicht dabei zu helfen, Positionen zu erreichen, in denen diese Aufgaben ausgeführt werden .
Antworten:
Hören Sie zunächst einmal auf zu denken, dass Ihr Job Sie nicht weiter in Richtung Ihres Traumjobs bringt ! Jeder Job macht! Alles liegt nur bei Ihnen!
Die folgenden Möglichkeiten helfen Ihnen:
Und bleiben Sie nicht lange bei diesem Job, wenn Sie damit unzufrieden sind - gerade genug, um grundlegende Fähigkeiten zu erlernen, Ihre Lernbereitschaft und Ihre Willenskraft zu zeigen, um die Langeweile Ihrer Aufgaben zu überwinden!
Wenn Sie sich mehr oder weniger in naher Zukunft für Ihren zweiten Job bewerben, können Sie immer noch als Junior-Entwickler behandelt werden! Sie sollten versuchen zu betonen, was Sie bei Ihrem ersten Job gelernt haben, wie Sie mit Ihren Problemen bei der Pflege von Legacy-Code und Brownfield-System umgegangen sind, wie Sie Ihren Horizont erweitert haben und welche neuen coolen Funktionen Sie dort gelernt haben.
Sagen Sie während des Vorstellungsgesprächs niemals, dass Sie sich mit Ihrem aktuellen Job langweilen, und das ist der Grund, warum Sie nach etwas anderem suchen. "Langweilig" ist so subjektiv und bedeutet oft, dass Sie einfach nicht gut genug sind, um die Herausforderung zu bestehen, die Dinge in Ihrer aktuellen Position zu lernen und sie entsprechend anzuwenden. Zeigen Sie Ihre Bereitschaft zu lernen, Ihr Wissen zu erweitern und Sie werden Ihren Traumjob bekommen, da bin ich mir sicher.
quelle
Erste Jobs in der Softwareindustrie sind oft beschissene Jobs. Während Sie einige Programmierkenntnisse erlernen, ist die wichtigere Ausbildung, die Sie erhalten, die Arbeit in einem Unternehmen.
Regelmäßig auftauchen, mehr als 8 Stundentage arbeiten, Quellcodeverwaltungssoftware verwenden, mit Vorgesetzten und Mitarbeitern umgehen, diesen Anruf um 3 Uhr morgens erhalten, weil der Produktionsserver ausgefallen ist und repariert werden muss ... das sind die Fähigkeiten, die Sie benötigen. lerne von deinem ersten Job.
Davon abgesehen, wenn Sie sich langweilen und nicht genießen, was Sie tun, hören Sie auf. Wenn Sie der Meinung sind, dass dieser Job Ihnen nicht dabei hilft, Ihr letztendliches Karriereziel zu erreichen, kündigen Sie. Es gibt viele Jobs für talentierte Leute.
quelle
Ich werde verschiedene Aspekte Ihrer Frage separat betrachten:
quelle
Was Sie als "Out-of-Style" -Technologie bezeichnen, ist das, worum es in der Mehrheit dieser Branche geht. Der Grund ist einfach: Es werden mehr Entwicklungen durchgeführt, um vorhandene Systeme zu warten, als neue. Und selbst wenn neue entwickelt werden, werden sie häufig mit Technologien entwickelt, die älter, aber bewährt sind und in eine größere architektonische Landschaft passen. Dies ist nur die Realität der Softwareentwicklung. Nur wenige Entwickler sind in der Lage, immer auf dem neuesten Stand der Technik zu arbeiten.
Meiner Meinung nach ist es weniger großartig, mit [hier super coole neue Technologie einfügen] zu arbeiten, als pünktlich, im Rahmen des Budgets und gemäß den Erwartungen zu liefern. Das kann man nur durch Erfahrung lernen und das ist völlig technologieunabhängig. Ich würde sagen, Sie sind gerade auf einem guten Kurs. Lernen Sie das Handwerk und die Kunst der Softwareentwicklung am Arbeitsplatz und halten Sie sich außerhalb der Arbeit so gut wie möglich an die Technologiekurve. So machen es die meisten von uns.
quelle
Wenn Sie mit allen anderen nicht einverstanden sind, könnte dieser Job Sie sehr wohl verletzen . Ich interviewe regelmäßig Kandidaten, die versuchen, von ihrem ersten Job nach dem College wegzukommen. Sie steckten normalerweise in einer Sprache fest, die für Wartungszwecke verwendet wird, sowie in einer Menge interner "Frameworks". Mit anderen Worten, sie haben gelernt, wie man ein Toolkit verwendet, auf das sie nie wieder zugreifen können, und verschwendete Zeit, was die Beschäftigungsfähigkeit betrifft.
Darüber hinaus vermitteln Ihnen die meisten Wartungsgeschäfte, denen ich ausgesetzt war, nicht die Fähigkeiten, die Sie benötigen, um Teil einer echten Entwicklungsanstrengung zu sein. Wenn ich jemanden interviewe, der aus seinem ersten Job kommt, möchte ich wissen, dass er versteht:
Die meisten dieser Fähigkeiten habe ich bei meinem ersten Job gelernt, indem ich klugen Leuten ausgesetzt war und jeden Tag mit ihnen arbeitete. Wenn Sie nicht glauben, etwas zu lernen (über Software oder Business), suchen Sie sich einen anderen Job.
Bearbeiten: Als Randnotiz erinnere ich mich an die Jobsuche aus dem College. Ich war auf einer Karrieremesse und begann mit einer Firma zu sprechen, die mit Anwaltskanzleien zusammenarbeitete. Ich begann sie nach ihren Entwicklungspraktiken zu fragen, und es stellte sich heraus, dass sie alles in VBA tun. Ich dankte ihnen für ihre Zeit und stieg dort aus.
quelle
Wenn ich Sie wäre, würde ich sicherlich in Betracht ziehen, nach der Arbeit in einer anderen Sprache (z. B. Python, Java, Scala, Ruby, C ++ usw.) zu lesen und zu programmieren. Wenn Sie sich also für einen anderen Job bewerben, können Sie nachweisen, dass Sie über Sprachkenntnisse verfügen das sind in größerem Umfang als Perl. Auch wenn Sie andere Interessenbereiche haben, würde ich auf jeden Fall etwas mehr lesen.
Beachten Sie jedoch, dass viele der von Ihnen verwendeten Programmiertechniken unabhängig von der Programmiersprache wahrscheinlich gleich sind.
Mein Vorschlag wäre also wieder: Mach dir keine Sorgen, sondern lerne in deiner Freizeit etwas Neues. Sobald Sie genug Wissen gesammelt haben, werden Sie sicherlich einen aufregenderen Job finden.
quelle
Wenn Sie nicht mehr in Perl arbeiten möchten, ist das in Ordnung.
Nur weil Perl derzeit nicht viel Flash hat , heißt das nicht, dass es nicht beliebt ist.
Ich möchte darauf hinweisen, dass Perls Dynamik in den letzten 5 Jahren dramatisch zugenommen hat .
In den letzten zwei Jahren gab es jeweils stabilere Versionen von Perl als in den vorangegangenen Jahren.
Moose wird von den meisten als eines der besten Perl-Objektsysteme bis heute angesehen und geht erst auf Anfang 2006 zurück. Die nächstbeliebtesten Objektsysteme sind im Grunde vereinfachte Moose- Objektsysteme.
Wenn Sie nachweisen möchten, wie beliebt Moose ist, sehen Sie, wie viele CPAN-Module von Moose abhängen .
Zu den Modulen, die Moose benötigen, gehört Dist :: Zilla , für das immer Moose benötigt wurde . Falls Sie es nicht wussten, ist Dist :: Zilla wohl die beste Möglichkeit, CPAN- Module zu erstellen und freizugeben .
Es gibt auch noch einige coole neue Projekte, die Perl verwenden. Die Lacuna-Weite für einen.
quelle
Jemand muss den Müll einsammeln, die Toiletten reinigen, Gräben graben und bei McDonalds arbeiten. Im Moment machen Sie die Softwareentwicklungsversion davon.
Es ist NICHTS falsch, das zu erkennen und nach etwas Größerem zu streben !
Was Sie jetzt tun, prägt definitiv, was Sie morgen, nächstes Jahr und in den nächsten zehn Jahren tun!
Jeder andere, der etwas anderes sagt, versucht, Sie unten zu halten oder sich besser zu fühlen, wenn Sie sich an derselben deprimierenden Stelle befinden!
Perl ist im Sinne von "Karriere" aus der Mode gekommen. Wenn Sie nicht als Perl-Typ Karriere machen möchten , lernen Sie etwas Neueres und Modischeres. Python, Java, C # werden mehr Türen öffnen und marktfähiger sein oder etwas, das in ein paar Jahren wie Erlang kurz davor steht, groß rauszukommen.
Alles, was gesagt wurde, * zu lernen, wie man nicht macht **, ist genauso wertvoll wie zu lernen, und aus Fehlern anderer zu lernen ist weniger schmerzhaft als aus eigenen zu lernen.
Im Moment bekommst du Unterricht in diesen beiden Dingen.
quelle
Es gibt immer noch eine große Nachfrage nach Menschen, die gut mit Perl umgehen können. Sie werden feststellen, dass die Netzwerkbranche und viele * nix-basierte Sysadmin-Jobs Perl in großem Umfang verwenden.
Davon abgesehen stimme ich anderen zu, die vorschlagen, Ihre eigenen Grenzen zu überschreiten. Auch wenn Sie nur mit Perl arbeiten, finden Sie Möglichkeiten zur Optimierung und Rationalisierung der Programme. Wenn Sie beispielsweise einen linearen Ansatz mit einem Programm sehen (häufig das Zeichen eines unerfahrenen Programmierers), können Sie den Code modularisieren, um die Wartbarkeit zu verbessern? Die grundlegende Fähigkeit, ein Stück Code unabhängig von der Sprache zu lesen und zu optimieren und in besseren Code umzuwandeln, ist eine sehr gefragte Fähigkeit.
quelle
network programming
oder zumindest Backend-Webentwicklungsmaterial sind es die Art von Themen, in denen ich eigentlich gerne arbeiten würde "hmm ... nicht das, was ich lese ... und es gibt Jobs in diesen Bereichen ... zB Netzwerkindustrie, wie gesagt. Ich arbeite für ein Tier-1-Internetunternehmen. Perl wird häufig für Back-End-Arbeiten verwendet.Suchen Sie nach Möglichkeiten, Erfahrungen in anderen Sprachen aufzubauen und zu pflegen, und zeigen Sie gleichzeitig, dass Sie ein engagierter Mitarbeiter sind, der sich der Herausforderung stellen kann. Fahren Sie selbst, um eine konstante Arbeitsleistung von höchster Qualität zu erzielen, die Sie erreichen können, und nutzen Sie jede freie Zeit, um entweder mehr Arbeit zu übernehmen oder Dinge zu schaffen, mit denen Sie Fähigkeiten und Kenntnisse in anderen Bereichen entwickeln können. Selbst eine einfache Demo, die ein echtes Geschäftsproblem auf eine andere Art und Weise löst (mit einer aktuelleren Sprache), ermöglicht es Ihnen, Ihre Fähigkeiten zu verbessern und Ihrem Chef zu zeigen, dass Sie aktiv über den Tellerrand hinaus denken. Achten Sie nur darauf, dass Sie sich nicht Ihren anderen Pflichten entziehen, nur um an Nebenprojekten zu arbeiten.
Engagement ist der Schlüssel. Von Absolventen wird nicht erwartet, dass sie jahrelange Erfahrung in vielen Sprachen haben. Sie können immer ein Jahr damit verbringen, wichtige Kommunikationsfähigkeiten zu entwickeln und zu zeigen, dass Sie sich der Herausforderung stellen können, auch wenn die Herausforderung darin besteht, über das hinauszuschauen, was Sie für "langweilig" halten. Erfahren Sie, wie Sie Ihre Fähigkeiten verbessern können, wenn es darum geht, weiterzumachen. Von Ihnen wird erwartet , dass Sie am Arbeitsplatz weiter lernen und dem nächsten Arbeitgeber zeigen, dass Sie aktiv nach einer Verbesserung der Fähigkeiten suchen.
Denken Sie daran, niemand beschäftigt gerne ein "Besserwisser". Ich habe immer versucht, Leute einzustellen - auch für leitende Positionen - die lernen und weiter wachsen wollen.
quelle
Schwern,
Ich habe in vielerlei Hinsicht genauso gedacht wie Sie. Ich habe die Universität mit starken Kenntnissen in Java und Python verlassen. Mein erster Job war die Arbeit mit Delphi. Ich machte mir sofort Sorgen darüber, aber da ich keine Anstellung hatte und gerade die Universität verlassen hatte, beschloss ich, in die Kugel zu beißen und den Job anzunehmen, da ich unabhängig von der Sprache Erfahrung als Programmierer hätte.
Mein zweiter Job bestand darin, die meiste Zeit in einer großen Bank mit Smalltalk-Entwicklung zu arbeiten, mit ein bisschen Perl und Java. Meine Freunde lachten mich aus, da ich keinen Job als Java-Kernentwickler bekommen konnte und sagten mir, dass ich meinen Lebenslauf beschädige. Ich freue mich jetzt darauf, in ein paar Wochen einen neuen Job zu beginnen, der alle Technologien enthält, mit denen ich arbeiten möchte, und ein besseres Gehalt hat.
Natürlich kann ich nicht sagen, dass Ihre Erfahrung die gleiche sein wird wie meine eigene, aber es gibt ein paar Lektionen, die Sie wegnehmen können, um darüber nachzudenken. Erstens ist die Programmierung zweitrangig. Wenn Sie über gute Kenntnisse in der Domänenmodellierung verfügen und Geschäftsprozesse schnell erlernen können, zahlt sich dies auf lange Sicht mehr aus, als zu vermeiden, dass Sie lernen, wie das Geschäft funktioniert, und mehr Zeit mit kleineren Problemen zu verbringen, die ich an den meisten Orten gesehen habe Ich habe gearbeitet.
Das zweite, woran Sie sich erinnern müssen, ist, dass Sie auf der Uhr einer anderen Person stehen. Wenn Sie selbst sagen möchten, was zu tun ist, und die volle Kontrolle über alles haben möchten, dann gründen Sie Ihr eigenes Unternehmen. Ich habe viel zu viele Leute gesehen, die einer Firma beigetreten sind und über Legacy-Technologie gestöhnt haben. Ich habe es selbst gemacht, als ich meinen Abschluss gemacht habe. In der Regel werden diese Personen als giftig für den Arbeitsplatz angesehen und halten nicht lange an. Das Wichtigste ist, dass die Technologie das Geschäft unterstützt und nicht umgekehrt. Das Beste, was Sie in diesen Situationen tun können, ist, daraus Chancen zu schaffen. Andernfalls ist es an der Zeit, zu packen und zu gehen und eine alternative Beschäftigung zu suchen. Wenn Sie jedoch jedes Unternehmen finden, für das Sie arbeiten, gibt es Probleme mit dem Erbe.
Über das hinaus, was ich angesprochen habe, werde ich sagen, dass Sie nicht als "institutionalisiert" erscheinen wollen. Damit meine ich, dass Sie an bestimmten Sprachen und Technologien festhalten und nicht darüber hinausgehen können. Sie möchten eine gewisse Flexibilität in Ihrer Karriere fördern, einschließlich Fähigkeiten zur Domänenmodellierung. Seit Sie in Ihrer Karriere angefangen haben, werde ich Sie auf ein gutes Material hinweisen, das ich mir zu Beginn gerne zur Verfügung gestellt hätte:
Der leidenschaftliche Programmierer
Der pragmatische Programmierer
Domänengesteuertes Design
Der Karriereprogrammierer
quelle
Code etwas außerhalb der Arbeit, aber ich habe noch nicht das Gefühl, dass Sie sich selbst verletzen. Sie sind ein neuer Mitarbeiter, also ein Einsteigerentwickler. In dieser Phase des Spiels sollten Sie Dinge wie den Entwicklungszyklus lernen und lernen, wie Dinge "getan" werden sollten.
Verfolgen Sie einige Dinge außerhalb der Arbeit, damit Sie Ihre Statistiken auffüllen können. Meiner Meinung nach können Sie entweder codieren oder nicht. Sprache und Syntax können gelernt werden - aber die Fähigkeit, Probleme selbst zu denken und zu lösen, kann nicht.
quelle