Frage:
Ich habe einen Programmierjob, bin mir aber nicht sicher, ob ich das kann, obwohl ich will
sameer
2017-02-13 01:04:45 UTC
view on stackexchange narkive permalink

Ich bin ein Masterstudent in Informatik und habe viel über verschiedene Programmiersprachen gelesen, aber nirgendwo eine davon verwendet. Wenn ja, waren das nur ein paar Zeilen auf einer grundlegenden Ebene.

Jetzt habe ich einen Studentenjob an einem sehr angesehenen wissenschaftlichen Institut. Sie brauchten jemanden für die Entwicklung einer GUI, entweder in Java oder Python, um ein Instrument zu steuern und seine Messwerte auf dem Computer abzurufen. Ich habe das Interview irgendwie bekommen und sie haben mir nur einige grundlegende Fragen gestellt, die nichts mit Codierung zu tun haben, und jetzt haben sie mich rekrutiert.

Ich mache mir jetzt ein bisschen Sorgen darüber, ob ich dem gerecht werden kann oder nicht den Job und ihre Erwartungen, weil ich wirklich denke, dass ich die Fähigkeiten für die Aufgaben nicht trage. Obwohl ich wirklich dort arbeiten und lernen möchte und dies meine erste Gelegenheit ist, das Programmieren zu üben, möchte ich sie nicht enttäuschen und sie ihre Entscheidung, mich einzustellen, bereuen.

Wie soll ich es machen?

Alle Programmierer der Einstiegsklasse sind entweder in ihren Fähigkeiten stark übermütig und stehen vor einem Schock, wenn sie der Realität der Arbeitswelt begegnen, oder sie sind in Panik, sie werden überwältigt sein.Sie werden manchmal überwältigt sein.Passiert allen oder uns.Übe und sei bereit, vom ersten Tag an alles aufzunehmen, was du kannst.
Nur ein Vorschlag für die Zukunft.Fragen Sie während des Interviews, was Sie von Ihnen im ersten Monat (oder Quartal) erwarten.Dies ist der gute Weg, um die Angst zu verringern und die Erwartungen zu verwalten.
Für jeden von uns gibt es eine Zeit, in der Sie den Tauchgang machen und etwas ausprobieren müssen, von dem Sie nicht sicher sind, ob Sie es können.Gib dein Bestes und es kann funktionieren.
Du hast einen * Studenten * Job.Sie erwarten nicht zu viel von Ihnen, sonst hätten sie einen professionellen Programmierer eingestellt.Dies ist Ihre Chance, sie zu glänzen und zu beeindrucken.Aber wenn Sie nicht können, ist es nicht Ihr Problem.Sie bekommen, wofür sie bezahlen (d. H. Nicht viel für einen Studentenjob).
Sie sind ein Masterstudent in Informatik, haben aber noch nie eine Programmiersprache verwendet?Was???
@UpAllNight Informatik als Fach ist im Allgemeinen äußerst theoretisch und weniger programmierfähig.
OP Wenn Ihre Grundlagen nicht vorhanden sind, beginnen Sie mit den Grundlagen und absolvieren Sie einen Crashkurs in x-Sprache an der Code-Akademie. Erstellen Sie dann von dort aus.
Die meisten Leute beginnen genau in Ihrer Position.Schnallen Sie sich an, machen Sie Kaffeekannen und bereiten Sie sich darauf vor, Stunden mit dem Stapelüberlauf zu verbringen.
Einige relevante Fragen: "[Ich bin ein neuer Entwickler in einer neuen Position und ich bin von der Position überwältigt.] (Http://workplace.stackexchange.com/questions/6223/im-a-new-developer-in-eine-neue-Position-und-ich-überwältigt-von-der-Position-wie-d) "und" [Ich fühle mich für meinen Job nicht qualifiziert - was ist das Richtige?] (http: // Arbeitsplatz.stackexchange.com/questions/27910/i-feel-unqualified-for-my-job-what-is-the-right-thing-to-do) "
@bobo2000,, aber nie irgendwo Programmiersprachen verwendet zu haben, scheint verdächtig.
@bobo2000 Ich bin Entwickler.Sie schreiben Code im ersten Jahr.Es gibt kein CS-Programm auf der Welt, das dies nicht tut.
@UpAllNight Sicher, aber einige Programme sind viel theoretischer als andere, wenn die Codierung nicht sehr hoch ist.
@bobo2000, das letztendlich Studenten wie diesen unglücklichen Kerl hervorbringt.
@UpAllNight Ich bin überrascht, dass sie ihm während des Interviewprozesses keine Codierungsaufgabe gegeben haben.
@bobo2000 Kein CS-Programm sollte so "theoretisch" sein, dass seine Schüler es bis zum Master schaffen, ohne so viel wie C ++ oder Java zu wissen oder so viel wie eine verknüpfte Liste implementiert zu haben.Zumindest sollte ein Schüler in der Lage sein, einen hervorragenden Pseudocode zu schreiben und die Syntax der Sprache so gut zu kennen, dass die Übertragung dieses Pseudocodes auf den tatsächlichen Code trivial sein sollte.Wie UpAllNight erwähnt, sollten alle CS-Programme im ersten Jahr Code haben.Meine eigenen erwarteten, dass wir komplexe Algorithmen in C ++, Java und einigen anderen implementieren.Ich kann mir kein anderes Programm vorstellen.
@E404 in meinem CS-Programm gab es auch eine ganze Menge Codierung, das Problem ist, wo kommerzielle Codierung VIEL anders ist als akademische Codierung.Die Hälfte der Sprachen, die ich in meinem CS-Abschluss verwendet habe, habe ich als Entwickler nie wieder verwendet.Haskell zum Beispiel.Viele Aufgaben waren auch klein.In Großbritannien (nicht sicher über die USA) sind einige erstklassige Universitäten als viel theoretischer bekannt, wobei der Lehrplan weitgehend mathematisch ausgerichtet ist, wobei der Schwerpunkt darauf liegt, warum Computer so arbeiten, wie sie auf einem niedrigen mathematischen Niveau arbeiten.Es kommt also darauf an, wo Sie auch studieren.
@bobo2000 aber op behauptet, nie _jeder_ von ihnen _jeder_ verwendet zu haben.Das scheint etwas steil.Ein guter Programmierer kann normalerweise relativ leicht eine neue Sprache lernen. Selbst wenn OP noch nie eine bestimmte Sprache verwendet hat, sollte das Erlernen der Grundlagen dieser Sprache etwa ein Wochenende dauern, wenn OP in mindestens einer Sprache kompetent ist.Und ja, viele Universitäten haben eher theoretische Kurse.Theorie und mathematische Perspektive sind in CS sehr wichtig.Aber Sie brauchen beides, und ich kann mir gar keine Programmierung vorstellen.
@E404 Ja, das ist seltsam.Ich würde nicht zustimmen, aber es ist einfach, eine Programmiersprache zu erlernen, besonders wenn Sie unerfahren sind.Front-End-Sprachen unterscheiden sich beispielsweise grundlegend von Back-End-Sprachen.Nicht wegen der Syntax, sondern weil einer Rückrufe beinhaltet, bei denen das Schreiben von Code auf funktionale Weise erfolgt, ist der andere prozedural und objektorientierter.Ich erinnere mich, als ich den Übergang vom Backend zum Frontend vollzog, war es schwierig, Rückrufe und das DOM zu verstehen.
@bobo2000 In der Tat stimme ich zu, dass Backend zu Frontend schwierig sein kann, weil sie so unterschiedlich sind.Ich denke jedoch, dass die meisten CS-Programme den Großteil ihrer Arbeit in einer höheren Sprache wie C ++ oder Java erledigen werden.Ein C ++ - Programmierer sollte in der Lage sein, Python an einem Wochenende zu lernen.Wahrscheinlich noch weniger Zeit, um Java zu lernen.Ich denke, dass die bloße Vertrautheit mit einer bestimmten Art von Programmiersprache (wie OO) es viel einfacher machen sollte, andere Sprachen dieser Art zu lernen, da Sie nur die Syntaxunterschiede lernen müssen (auf die Sie sowieso schreiben und verweisen können), nichtwie man wieder von Grund auf programmiert.
@E404 Das OP hat Probleme damit, die GUI in seiner aktuellen Rolle zu erstellen.Je nachdem, welche Sprache Sie verwenden, gibt es verschiedene Möglichkeiten, sie zu erstellen: C # XAML, Java, Swing (oder eine andere).Ich denke, dass kommerzielles Programmieren im Allgemeinen viel anders ist als akademisches Codieren. Als ich ein CS-Student war, hatte ich keine Ahnung von den verschiedenen Frameworks und deren Verwendung, bis ich meinen Abschluss mit einer steilen Lernkurve machte.An der Uni sollten wir alles von Grund auf neu codieren.Selbst wenn das OP über das Grundwissen verfügt, weiß es möglicherweise nicht, wie es angewendet werden soll, um eine kommerzielle Software zu erstellen.
@bobo2000 Ich stimme vollkommen zu.OP behauptet jedoch, nie wirklich eine Programmiersprache verwendet zu haben.(oder um nur die Oberfläche zerkratzt zu haben) Wenn das Problem von OP einfach "Ich habe noch nie eine Java-GUI erstellt und noch nie in einer kommerziellen Umgebung gearbeitet" war, könnten wir ihnen alles über Swing und Unternehmen mit einigen Links zu einem Tutorial oder erzählenzwei."Ich habe noch nie Java oder eine verwandte Sprache oder überhaupt eine Sprache verwendet", ist ein völlig anderes Problem.GUIs und kommerzieller Code unterscheiden sich stark von der akademischen Codierung, jedoch nicht so unterschiedlich wie keine Codierung.
@bobo2000 Aber all dies ist wahrscheinlich auch hier nicht da, da OP behauptet, sich derzeit in der beschriebenen Situation zu befinden, und dass die beschriebene Situation tatsächlich möglich ist, vorausgesetzt, dass OP diese Frage nicht zu ihrer eigenen Unterhaltung erfunden hat.In Bezug auf eine Lernkurve steht OP vor einer Klippe mit einer Beschreibung.
@E404 ja sehr seltsam, dass er gesagt hat, dass er noch nie eine Programmiersprache benutzt hat.Vielleicht hat er die Situation diesbezüglich nicht richtig beschrieben?
@bobo2000 Ja, vielleicht haben sie es nicht getan.Wir sollten jedoch davon ausgehen, dass die gestellten Fragen korrekt sind, damit die Antworten für alle anderen Personen, die nach ähnlichen Problemen suchen, gültig und nützlich sind.Vielleicht könnte die Frage nützlicher und allgemeiner gemacht werden, indem alle Verweise auf die Programmierung entfernt und einfach zu einer Frage im Sinne von "Obwohl ich vor kurzem meinen Abschluss gemacht habe und eifrig bin, bin ich mir nicht sicher, ob ich in der Lage bin, die relevanten Aufgaben meines ersten Arbeitgebers auszuführen."setze mich "
Fünf antworten:
#1
+14
Kilisi
2017-02-13 09:44:58 UTC
view on stackexchange narkive permalink

Sie haben bereits den Job, es ist zu spät für diese Art des Denkens. Steigen Sie in Ihre Arbeit ein und beweisen Sie sich.

Mein Anruf ist, dass Sie feststellen werden, dass es bei weitem nicht so schwierig ist, wie Sie denken.

Oder er wird nicht in der Lage sein, eine einzige Codezeile zu schreiben und nur auf den Bildschirm zu starren, ohne zu wissen, was zu tun ist - was leider mit den meisten Menschen passiert, die ein Diplom erhalten haben, aber nie ein reales System berührt haben.
@TSar fängt erst am Anfang an, ich bin kein Fan von Akademikern, aber diese Strategie wird für jeden funktionieren.
#2
+9
LeBash
2017-02-13 01:21:29 UTC
view on stackexchange narkive permalink

Mach einfach deinen Job so gut du kannst.

Hast du das Gefühl, dass du während des Interviewprozesses nicht ehrlich warst? Hast du über deine Fähigkeiten gelogen? Wenn nicht, haben sie Sie wahrscheinlich ausgewählt, weil sie dachten, Sie wären am besten für den Job geeignet.

Wenn Sie in diesem Unternehmen anfangen, stellen Sie sicher, dass Sie die Erwartungen derjenigen erfüllen, die Sie verwalten werden. Wenn Sie das Gefühl haben, zusätzliche Aufsicht zu benötigen, bevor Sie sich auf den neuesten Stand bringen, oder wenn Sie Zeit benötigen, um einige Aspekte des Projekts zu lernen, lassen Sie sie wissen und sehen Sie mit ihnen, was Sie tun können, um autonom zu werden und produktiv. Dies kann die Zusammenarbeit mit einem Mentor beinhalten, der Ihnen die wichtigen Aspekte des Prozesses beibringt.

Als Anfänger wird dies Ihre primäre Herausforderung sein. Ich bezweifle, dass sie Ihnen Tonnen kritischer Aufgaben zuweisen, aber Sie müssen zeigen, dass Sie schnell einen Punkt erreichen können, an dem sie Ihnen bei der Arbeit vertrauen können. Die Dinge werden natürlich mit ein bisschen Zeit und angemessenem Mentoring kommen.

#3
+5
Ed Heal
2017-02-13 03:28:20 UTC
view on stackexchange narkive permalink

Habe nur ein wenig Vertrauen in dich.

Die Leute wollen nicht, dass du versagst. Die Leute werden dir helfen - sie waren im selben Boot. Es könnte eine Weile her sein, aber sie werden Ihnen helfen.

Wenn Sie sich nicht sicher sind, setzen Sie sich nicht einfach an den Schreibtisch. Fragen Sie nach Rat. Sie werden einige Ratschläge erhalten und sie werden höher denken, als Sie gefragt haben.

6 Monate später werden Sie Teil des Teams sein. Die Arbeitgeber haben berücksichtigt, dass es ungefähr so ​​lange dauert, bis sie auf dem neuesten Stand sind.

Die Person, die Sie besonders eingestellt hat, möchte nicht, dass Sie scheitern, weil sie diejenige gewesen wäre, die den Fehler eingestellt hat.Im Gegenteil, wenn Sie Ihre Arbeit gut machen, beweisen Sie, dass diese Person absolut richtig war, Sie einzustellen, und sie wird Sie unterstützen wollen.
#4
+3
spoon_man
2017-02-13 11:35:13 UTC
view on stackexchange narkive permalink

dlb im Kommentarbereich hat ziemlich genau gesagt, was ich wollte. Sie werden nicht enttäuscht sein, da Sie ein Programmierer der Einstiegsklasse sind. Tatsächlich werden viele Menschen tatsächlich versuchen, Ihnen zu helfen, zu wachsen und Ihre Fähigkeiten zu verbessern.

Ich würde Ihnen raten, viele Notizen zu machen, viele Fragen zu stellen, insbesondere wenn Sie etwas nicht verstehen und zuversichtlich sind.

#5
+1
BgrWorker
2017-02-14 17:08:13 UTC
view on stackexchange narkive permalink

Wie Sie sich an den "Kunden" (Ihren Arbeitgeber) wenden

Wenn er Sie gebeten hat, die Arbeit zu erledigen, und Sie ihm ehrlich gesagt haben, was Ihre Fähigkeiten sind, müssen Sie sich keine Sorgen machen. Versuchen Sie in den folgenden Monaten, sie über Ihre Fortschritte auf dem Laufenden zu halten, und teilen Sie ihnen unverzüglich mit, ob Sie ein Problem haben, das Sie verlangsamt.
Sie müssen nur sicher sein, dass alle die gleichen Erwartungen haben, und Sie tun es nicht. t einem überbewerteten Kunden ein Produkt mit schlechter Leistung liefern.

Vertrauen haben

Behalten Sie Ihre Entschlossenheit und vertrauen Sie sich selbst. Niemand war von Anfang an in der Lage, eine voll funktionsfähige und gut geschriebene Software zu erstellen.
Das Lernen wird am Anfang wahrscheinlich langsam sein, und Sie werden Obszönitäten finden. Verliere nicht die Hoffnung und arbeite dich langsam um sie herum. Wenn Sie fertig sind, werden Sie denken, dass alles viel einfacher war, als Sie ursprünglich gedacht hatten.

Praktische Tipps

Eine Sprache lernen

Wenn Sie nie berührt haben Wählen Sie für jede Programmiersprache oder jedes GUI-Tool diejenige aus, die Ihrer Meinung nach für den Job besser geeignet ist (basierend auf den Sprachen, die von den Bibliotheken des Instruments unterstützt werden, für das Sie entwickeln), und versuchen Sie, ein einfaches Beispielprogramm zu erstellen, eine kleine CRUD-Anwendung mit Ein Backend zeigt Ihnen die häufigsten Probleme und Fallstricke für Anfänger. Sie können beispielsweise versuchen, eine kleine App zum Verwalten der Adressen und Kontakte Ihrer Freunde zu entwickeln.

Wenn Sie keine engen Zeitbeschränkungen haben, haben Sie keine Angst, es zu versuchen, zu scheitern und es erneut zu versuchen. Aus Ihren eigenen Fehlern zu lernen ist für einen Entwickler äußerst wichtig.

Halten Sie Ihren Code sauber

Im Internet gibt es zahlreiche Dokumentationen zu diesem Thema und lernen, wie Sie Ihren Code teilen und wiederverwenden Code wird Ihnen sicherlich das Leben leichter machen.
Als Faustregel gilt: Wenn eine Methode / Funktion nicht in Ihren Bildschirm passt oder eine Klasse mehr als 7/8 Methoden enthält, sollten Sie sich wahrscheinlich fragen, ob die Methode / Klasse macht nicht zu viel und wenn Sie einen Teil Ihres Codes woanders hin verschieben sollten.
Gut organisierter Code verringert die Wahrscheinlichkeit von Fehlern in Ihrem Endprodukt und erleichtert das Beheben von Fehlern oder das Hinzufügen neuer Funktionen, wenn Sie dazu aufgefordert werden.

Stellen Sie viele Fragen und lesen Sie viele Beispiele

Websites wie Stackoverflow wurden genau entwickelt, um Programmierern dabei zu helfen, ihr Wissen zu teilen und ihre Arbeit zu verbessern. Die meisten grundlegenden Fragen haben dort bereits eine Antwort, insbesondere für populärere Sprachen. Wenn Sie etwas nicht wissen, haben Sie keine Angst zu fragen.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...