Verbesserung ohne Mentor [geschlossen]

23

Obwohl ich mich für nicht sehr erfahren halte, lande ich in Jobs als Anführer (in der jetzigen Position bin ich technischer Direktor des Unternehmens, in einer früheren Position war ich der F & E-Leiter).

Ich verstehe, warum dies passiert (ich habe bestimmte Fähigkeiten und verwende einige ungewöhnliche Programmiersprachen). Mein Problem ist: Ich kann keinen Mentor finden ...

Ich weiß, dass es Dinge geben muss, die ich lernen kann, und während ich im Laufe der Jahre arbeite, merke ich, dass ich langsam mehr und mehr lerne, aber ich glaube, dass es einen Weg gibt, viel schneller besser zu werden als nur zu programmieren ...

Wie verbessere ich mich, wenn es keine andere Person in der Firma gibt, die mir beibringt oder mir deren Code vorliest? (oder sogar den Code korrigieren ...)

Ich glaube, ich bin jenseits von Büchern, aber weit unterhalb eines "Master" -Niveaus, sodass ich nicht weiß, wo ich mehr lernen kann.

Speeder
quelle
Gib die Arbeit mit einem Mentor nicht auf. Es kann einen großen Unterschied machen und viele Türen öffnen.
DeveloperDon
1
Wenn es eine berufliche Aktivität gibt, die Sie erschreckt oder nervös macht, ist das ein gutes Zeichen, dass Sie daraus lernen können. Haben Sie auf internationalen Konferenzen Präsentationen gehalten? Haben Sie ein eigenes Open-Source-Projekt gestartet? Haben Sie eine eigene Firma gegründet? Es gibt viele mehr ...
Marco
Ich habe meine eigene Firma gegründet (mehr als einmal) und wurde eingeladen, an einigen internationalen Konferenzen teilzunehmen (obwohl alle in meinem eigenen Land). :) Und ja, es gibt einige Dinge, die ich vermeide ... Aber einige davon werde ich immer vermeiden, andere werde ich rechtzeitig lernen :)
Speeder
Diese Seite und ihre Schwesterseiten können für einen vernünftigen Mentor sorgen, wenn Sie keinen einzigen Menschen finden, der die Arbeit
erledigt

Antworten:

26

Einige Hinweise:

  • Lerne andere Sprachen. Vergleichen Sie sie dann mit den Sprachen, die Sie bereits kennen, und versuchen Sie herauszufinden, wie Sie Ihre Codierungsfähigkeiten in diesen Sprachen verbessern können, indem Sie Dinge verwenden, die Sie aus anderen Sprachen gelernt haben. Befreie deinen Geist, bevor du diese neuen Sprachen lernst, und versuche nicht, die Konzepte der einen in die andere zu klonen .

  • Code lesen. Ich weiß nicht, welche ungewöhnlichen Sprachen Sie genau für Ihre Arbeit verwenden, aber ich bin mir ziemlich sicher, dass Sie qualitativ hochwertigen Open-Source-Code finden, der von sehr erfahrenen Entwicklern in diesen Sprachen geschrieben wurde.

  • Bleib bei der Community. Wenn Sie keine Kollegen haben, die Ihre (n) Sprache (n) bei der Arbeit verwenden, ist dies keine Entschuldigung dafür, das Wissen nicht über Websites wie Stack Overflow weiterzugeben, auf denen selbst für sehr seltene Sprachen Fragen und Antworten vorhanden sind. Versuchen Sie, anhand des Tags nach diesen Fragen zu suchen, und prüfen Sie, ob Sie alle Antworten verstanden haben. Wenn die Fragen unbeantwortet bleiben, beantworten Sie sie.

  • Lehren. Bringen Sie Ihren Mitarbeitern bei. Schreibe einen Blog. Was auch immer. Wenn Sie anderen etwas erklären, lernen Sie es besser.

Arseni Mourzenko
quelle
2
+1: Lehren. Ja. Wenn ich eine kleine Demo-Sitzung vorbereite, stelle ich immer wieder Fragen, die mein Publikum stellen würde. In dem Versuch, mich auf Antworten vorzubereiten, recherchiere ich und lerne häufig etwas von unschätzbarem Wert.
Apoorv Khurasia
8

Meine Hauptlösungen in den letzten 2 Jahren waren:

  • Soziales Networking: Ich habe insbesondere festgestellt, dass meetup.com eine großartige Möglichkeit ist, Programmiergruppen in Ihrer Nähe zu finden. Twitter ist auch toll dafür. Wenn Sie Menschen finden, die Sie mögen und respektieren, folgen Sie ihnen.

  • Unter http://www.stackoverflow.com habe ich es zunächst für gelegentliche Fragen verwendet. Jetzt ist es mein täglicher Begleiter, wenn es darum geht, Ratschläge zu geben oder anzunehmen. Verwenden Sie auch die Schwestersites wie /codereview//

  • Arbeiten: Obwohl dies wahrscheinlich nicht für Sie zutrifft (aber ein guter allgemeiner Rat für andere). Wenn Sie gut genug sind, um eine Arbeit in dem von Ihnen gewünschten Bereich zu finden, suchen Sie ältere Menschen auf, seien Sie nett zu ihnen und versuchen Sie, sie dazu zu bringen, Sie zu betreuen .

  • Bücher. O'Reilly, Pragmatic Programmer und andere haben immer noch gute Bücher und Sie können zwischen Papier- und / oder Digitalversionen wählen. Hier ist eine wirklich großartige Liste: /programming/1711/was-ist-das-einzige-einflussreichste- Buch- für- jeden- Programmierer- mit einigen der besten 'Klassiker' da draußen falls du sie noch nicht gelesen hast Ich kann sauberen Code und vollständigen Code empfehlen.

  • Tutorials. Es gibt jetzt einige fantastische Websites im Internet, wie zum Beispiel
    http://www.codeschool.com ,
    http://www.codeacademy.com
    http://code.google.com/edu/

Michael Durrant
quelle
Mir wurde klar, wie ungewöhnlich das Zeug ist, das ich benutze, wenn keine dieser Seiten es erwähnt: P
speeder
5

Nur weil ich in Ihrer Frage einiges an Hierarchie lese:

Lerne von den Menschen unter dir. Bei der Softwareentwicklung geht es um die Kommunikation zwischen Menschen, häufig über das Medium Code. Da eine gute Kommunikation in beide Richtungen funktionieren sollte, sollten Sie von den Personen lernen, mit denen Sie programmieren. (Ich gehe davon aus, dass Sie nicht in einer 1-Mann-Firma sind.)

Schlepper
quelle
+1. Ich studiere zurzeit CS und arbeite in Teilzeit als Entwickler. Mein Teamleiter hat mich gebeten, mich zu ihm zu setzen und seinen Code zu überprüfen . Ich lerne viel und habe das Gefühl, dass er mir vertraut, aber ich denke auch, dass ich etwas zurückgeben kann. Meine Erfahrung ist nicht die beste, aber mein Wissen ist aktualisiert und ich kann sagen "ein neuer und besserer Weg, dies zu tun ist .." etc.
Matsemann
2

Ich glaube, dass Sie viel lernen werden, indem Sie denen beibringen, die Sie führen. Sie werden besser verstehen, was Sie ihnen beibringen, weil Sie gezwungen sind, darüber nachzudenken, warum / wie die einfachen Dinge funktionieren (was Sie wahrscheinlich am Anfang vermieden haben, weil Sie nur wollten, dass es funktioniert).

Jake
quelle
2

Mentoring kann funktionsübergreifend sein

Mentoren müssen nicht immer Experten für das sein, worauf Sie sich konzentrieren. Wenn Sie eine ungewöhnliche Programmiersprache verwenden, bleiben immer noch 99 nicht-sprachliche Themen in der Softwareentwicklung übrig, in denen Sie unterrichtet werden könnten. Einige meiner Mentoren waren in den Bereichen Geschäftsentwicklung, Hardware oder Systems Engineering tätig, obwohl ich in erster Linie tätig bin in Software beteiligt.

Viele Arten von Menschen können Ihr Mentor sein

Eine gute Sache, nach der man Ausschau halten sollte, ist jemand, der jetzt dort ist, wo man in fünf Jahren sein möchte. Ein Mentor wie dieser steht nicht immer zur Verfügung. Eine andere Alternative ist ein Weiser mit viel mehr Erfahrung, der jedoch möglicherweise keine formelle Führungsrolle mehr innehat. Ein umgekehrter Mentor, der weniger erfahren ist (oder himmlisch, jünger), aber Perspektiven hat auf Tools und Techniken, die von Nutzen sein können.

Ist Ihr Mentor auch Ihr Sponsor?

Neben Mentoren ist es manchmal wichtig, einen Sponsor zu haben. Wenn Sie versuchen, in einer Organisation aufzusteigen, wenn Sie einen Mentor haben, der gute Ratschläge gibt, aber Ihre Befehlskette nicht zu Ihren Gunsten beeinflusst, können Sie Nachteile im Vergleich zu jemandem haben, der einen Mentor hat, der sie als Lead sponsert. Projektbesitzer oder Manager eines Projekts, das ihnen eine einflussreichere Rolle oder eine Beförderung einbringt.

Unternehmensübergreifende Mentoren und Netzwerke

Wenn Sie bereits Technischer Leiter sind, müssen Sie möglicherweise Ihren Mentor außerhalb Ihres Unternehmens suchen. Es gibt Stärke in Zahlen, daher kann die flache Vernetzung mit vielen Menschen überraschend wertvoll sein. Ich habe allgemein gedacht, dass Ihr Engagement mit anderen Fachleuten die Tiefe haben muss, die sich aus einer Zusammenarbeit oder einer umfangreichen, häufigen oder langwierigen Zusammenarbeit ergibt, um wertvoll zu sein.

Wie groß ist dein Teich?

Sie erwähnen, dass Sie F & E-Leiter und Tech-Direktor waren, aber Sie fühlen sich nicht so erfahren. Bekenntnis ist gut für die Seele, wenn nicht der Ruf. Ich habe ein ähnliches Geständnis.

An einem Punkt betrachtete ich meine Karriere als in zwei Teile geteilt. In der ersten Phase habe ich in vielen Teams gearbeitet, in denen ich entweder der einzige Softwareentwickler oder der Entwickler mit dem höchsten College-Niveau war. Die zweite begann, als ich bei einem Fortune 100-Unternehmen anheuerte und mit einem deutlich höheren Entwicklertyp arbeitete. Der Kontrast war im Wesentlichen wie ein großer Fisch in einem kleinen Teich zu einem kleinen Fisch in einem großen Teich.

Hochhandeln

Der Wechsel von kleinen unabhängigen Unternehmen bedeutete, dass ich in der Organisation einen viel geringeren Status hatte. Aber es gab immer noch einen Status. Entwickler wurden nach wie vor sowohl mit höheren Löhnen als auch mit einem relativ hohen Maß an Kontrolle über die Arbeit geschätzt. Ich könnte auch andere Teammitglieder beeinflussen (wenn auch nicht von oben). Es gab viele Vorbilder. Aufgrund des starken Wettbewerbs musste ich mich technisch verschärfen und verstehen, wie viel ich für die Organisation und meine Teams geleistet habe.

Ich habe vorher meinen Bauchgefühl über Rollen und Mentoren ignoriert und einen Preis bezahlt. Intuition ist manchmal ein Gefühl, das aus einer Synthese von Erfahrungen entsteht. Mein Votum wäre, dass wenn es sich falsch anfühlt, es wahrscheinlich falsch ist und eine sorgfältige Untersuchung verdient. Es hört sich so an, als wären Sie besorgt über Ihre Erfahrung und den Mangel an einem Mentor. Erkundigen Sie sich nach Ihren Möglichkeiten.

Würden Sie vielleicht Wachstum, Zufriedenheit und andere Vorteile finden, wenn Sie zu einem größeren, aggressiveren Unternehmen migrieren? Größer ist nicht immer besser, hat aber manchmal den Vorteil, dass unterschiedliche Menschen zu unterschiedlichen Arbeitsbeziehungen und unterschiedlichen Projekterfahrungen führen. Viele der Leuchten des Silicon Valley hatten oder haben als Mentoren für Menschen gedient, die auf diese Weise ihren Weg zum Erfolg schneller und effizienter finden können. Einer meiner Klassenkameraden von der Graduiertenschule folgte dem Aufruf, Linked In beizutreten, und erlebt diese Kultur, indem er ein viel höheres Level-Spiel spielt.

Mentor Vorteile

Während ein Mentor wie ein Professor sein kann, denke ich, dass wenn Sie keinen haben, der Ihr Arbeitsprodukt häufig ansieht oder als Meister in der Beziehung zwischen Meister und Lehrling fungiert, die Qualifikation und die berufliche Ausbildung zweitrangig sind. Meiner Meinung nach teilen Mentoren vor allem Ratschläge zum Thema Wachstum, Vorbildfunktion für gute Entscheidungen und Ausgewogenheit zwischen den Werten am Arbeitsplatz sowie ein stetiges, objektives und gesundes Urteilsvermögen in Krisenzeiten.

Ein Ratschlag, den mein Großvater mir oft gab, war, dass Menschen nur dann unterrichtet werden können, wenn sie bescheiden sind. Seien Sie vorsichtig mit Aussagen wie "Ich bin weit über Bücher hinaus" und versuchen Sie, von allen zu lernen. Um eine Beziehung mit einem Mentor aufzubauen, stellen Sie sicher, dass Sie respektvoll und empfänglich sind und Wertschätzung zeigen. Es wird auch wichtig sein, ihren Rat zu befolgen, denn wenn sie nicht extrem geduldig sind, investieren sie in der Regel ihre Zeit in Maßnahmen.

DeveloperDon
quelle
1

Mein lieber Freund

Lassen Sie mich Ihnen sagen, dass es sehr selten vorkommt, dass jemand einer anderen Person die Nuancen des Programmierens beibringt. Programmieren muss man selbst lernen. Wenn Sie sich auf ein einzelnes Thema konzentrieren und es ausprobieren und verschiedenen Foren beitreten, die dieses Thema unterstützen, werden Sie früher oder später Meister dieses Themas. Denken Sie bitte daran, dass Sie selbst die beste Person sind, die weiß, wie gut Sie geworden sind. In der Art von Industrie und Welt, die wir sind, müssen wir unsere eigenen Mentoren werden, denn was wir uns selbst beibringen, bleibt für immer bei uns.

Der dunkle Ritter
quelle
Nicht für jeden. Ich selbst und einige andere haben am besten von einem Mentor gelernt. Ich hatte eine in den 90ern für 8 Jahre und ich habe jetzt eine für neuere Technologien und es ist großartig. Außerdem erwidere ich den Gefallen, indem ich andere bei Meetups usw. unterrichte. Denjenigen, die noch kein großartiges Mentoring erlebt haben, fehlt, was viele für wesentlich halten. Das heutige Codieren selbst erfolgt zunehmend über Pair Programming, Reviews und Shared Code (über DVCS-Systeme wie git). Es ist also eine gute Möglichkeit, dies zu lernen, und es ist die Art, wie Sie es wahrscheinlich üben werden, wenn Sie leidenschaftlich gern programmieren
Michael Durrant
Es ist jedoch auch wahr, dass es unwahrscheinlich ist, dass Sie dies finden, indem Sie danach fragen oder es in neuen oder potenziellen Positionen suchen. Normalerweise finden Sie dies, indem Sie versuchen, das bestmögliche Gefühl für Persönlichkeiten im Vorfeld für einen neuen Job zu bekommen, und wenn Sie Glück haben, dann finden Sie die richtige Person. Sucht nach Jobs, die weniger unter Druck stehen und bereit sind, in anderen Bereichen Abstriche zu machen.
Michael Durrant
0

Wie verbessere ich mich, wenn es keine andere Person in der Firma gibt, die mir beibringt oder mir deren Code vorliest?

Wenn ich sehr "spezielle Tools oder ungewöhnliche Programmiersprachen / Frameworks" verwende, suche ich nach speziellen Interessengruppen. Natürlich gibt es eine Online-Community für die meisten derzeit verwendeten Technologien / Frameworks. Daher nutze ich alle Möglichkeiten der Online-Kommunikation, um mit den neuesten Beiträgen in Kontakt zu bleiben:

  • LinkedIn Gruppen
  • Hochtöner - folgen Sie professionellen Leuten
  • Foren - wo Probleme diskutiert werden
  • Blogs - Community-Wiki-Seiten und Ankündigungen
  • Benutzergruppen von besonderem Interesse - wie Google Mail oder Yahoo-Gruppen

Eine der besten Methoden, um bewährte Methoden für "ungewöhnliche Programmiersprachen" zu erlernen, besteht darin, Entwicklerblogs (vorzugsweise 4-5) zu finden und diese zu abonnieren.

EL Yusubov
quelle
0

Mein Problem ist: Ich kann keinen Mentor finden ... Ich glaube, ich bin jenseits der Bücher, aber weit unterhalb eines "Master" -Niveaus, sodass ich nicht weiß, wo ich mehr lernen kann.

In welcher Gegend? Möchten Sie Ihre Programmierkenntnisse, Ihre Softwareentwicklungsfähigkeiten, Ihre Projektmanagementfähigkeiten, etwas anderes verbessern? Sie haben in Ihrer Frage nicht angegeben.

Sie sind nicht über Bücher hinaus, wenn Sie gelernt haben, Softwareprojekte zu programmieren / zu entwickeln / ein Projekt selbst zu verwalten. Sie sind auch nicht mehr als zurück in die Schule zu gehen. Eine Möglichkeit, die Sie nicht ausschließen sollten, besteht darin, für einen fortgeschrittenen Abschluss in die Schule zurückzukehren oder zumindest einige Kurse für Hochschulabsolventen zu besuchen. Welcher Bereich? Das hängt davon ab, was Sie verbessern möchten und wo Sie Ihre Karriere sehen. Zum Beispiel für einen MBA gibt es viel zu sagen. Menschen, die sowohl technisch als auch wirtschaftlich versiert sind, sind viel wert. Eine ganze Menge. Einige meiner ehemaligen Mitarbeiter haben einen MBA-Abschluss gemacht. Ich sehe sie nicht oft, weil sie, wenn sie nicht arbeiten, in ein tropisches Paradies fahren. Oder eine Safari. Oder ein Wochenendausflug in die Alpen. Oder ein Sommerskiausflug nach Südamerika.

Eine andere Möglichkeit besteht darin, sich einer technischen Gesellschaft in einem Bereich anzuschließen, in dem Sie über Fachwissen verfügen, sich aber noch verbessern möchten. Ein weiteres Ziel ist es, Ihren Arbeitgeber dazu zu bringen, Sie zu einer Boondoggle-Konferenz zu schicken, auf der Sie lernen und Kontakte knüpfen können.

David Hammen
quelle