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.
quelle
Antworten:
Wie wäre es mit:
Lesen Sie auch die Antworten zu Wie man eine Programmiersprache wirklich beherrscht
quelle
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.
quelle
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/
quelle
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.)
quelle
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).
quelle
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.
quelle
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.
quelle
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:
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.
quelle
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.
quelle