Was sind die Fähigkeiten, die Sie aus Ihren Tech-Praktika gelernt haben?

Ich werde über meine bisherigen und aktuellen Praktika in der Softwaretechnik sprechen (natürlich ohne zu sehr ins Detail zu gehen).

-Ein kleines Halbleiterunternehmen während des letzten Schuljahres:

  • Zustandsmaschinenarchitektur
  • LabVIEW-Programmierung
  • Automatisieren eines Testvorgangs mit einem Multiplexer
  • Wie oft können Fehler in der Software auftreten
  • Wie viele kurz- und langfristige Entwurfsüberlegungen können auftreten?
  • Wie einschüchternd eine Codebasis aussehen kann
  • So geben Sie bessere formale Präsentationen
  • Flüssiger Stickstoff ist so kalt, dass er sich heiß anfühlt

Raytheon nach dem ersten Studienjahr (ab sofort):

  • Ada Programmierung
  • Der Agile Software-Entwicklungsprozess
  • Wie lange das Testen dauern kann (obwohl es wichtig ist)
  • Was für erstaunliche Manager sind
  • Work-Life-Balance besteht weiterhin

Als ich zu meinem Praktikum kam, hoffte ich, dass ich viel mehr über Softwareentwicklung im Allgemeinen lernen würde und wie Code in großem Maßstab geschrieben, getestet, überprüft und für die Produktion bereitgestellt wird. Ich wollte eine gute Vorstellung davon bekommen, wie man robusten, wartbaren Code schreibt, wie man Fehler im Code identifiziert und diese Fehler in geeigneter Weise beseitigt. Glücklicherweise habe ich während meines letzten Praktikums bei Hudl folgende Fähigkeiten erworben und vieles mehr:

  1. Allgemeine Verbesserung der Codierungs- / Softwareentwicklungsfähigkeiten: Ich habe einige Sprachen, Frameworks und Datenbankverwaltungssysteme gelernt: Mongo, JavaScript, React, GraphQL und C #. Während der Arbeit mit Mongo habe ich einige interessante Konzepte von Datenbanken kennengelernt und festgestellt, wie sich GraphQL-Server vom normalen REST-Paradigma unterscheiden. Darüber hinaus habe ich einige wichtige Informatikkonzepte kennengelernt und erfahren, wie sie auf Produktionsumgebungen angewendet werden können, und zwar unter Verwendung von Async / Warten-Methoden in C #, verzögerter Objektinitialisierung und Abhängigkeitsinjektion. Ich habe auch allgemein gelernt, wie die Microservices-Architektur funktioniert und wie API-Aufrufe an verschiedene Dienste mithilfe einer internen Bibliothek erfolgen und diese Ergebnisse verwendet oder zwischengespeichert werden. Eine weitere wichtige Sache war das Schreiben solider Unit-Tests für den Fall, dass mein Code in Zukunft kaputt gehen sollte.
  2. Grundkenntnisse in der Anwendungs- und Codebasisarchitektur: Ich hatte das Glück, mitzumachen und sogar Beiträge zu Diskussionen darüber zu leisten, wie ein neues Feature oder ein neuer Mikrodienst in der Codebasis aufgebaut wird, welche Ergebnisse in welchem ​​Zeitraum vorliegen und wie würde einheitlich getestet werden. Dies gab mir Einblick, wie ein großes technisches Projekt geplant und geplant wird, bevor es überhaupt in Code implementiert wird. Bei einem anderen, besonders schwierigen Problem, das ich während meines Praktikums löste, musste ich herausfinden, wie ein Dienst, der mehrere Klassen erfordert, in eine andere Codebasis mit ähnlichen Funktionen integriert werden kann, ohne dass Code dupliziert oder unnötige Abstraktionen eingeführt werden. Dies erforderte das Verständnis von Konzepten wie Vererbung und Polymorphismus und deren Anwendung, um herauszufinden, wie der beste Code mit minimaler Replikation erzeugt werden kann.
  3. So leiten Sie Code an die Produktion weiter: Ich arbeitete mit einer hervorragenden Qualitätssicherung in meinem Team zusammen, die mich durch die Schritte der tatsächlichen Bereitstellung meines Codes für die Produktion führte, nachdem ich ihn von anderen Entwicklern getestet und abgemeldet hatte. Ich musste lernen, wie Bereitstellungen in großem Maßstab durchgeführt werden, um sicherzustellen, dass nichts kaputt geht und dem Benutzer eine 100% ige Verfügbarkeit garantiert wird.
  4. Dokumentation & Schreiben: Ich habe gelernt, dass es wichtig ist, alles, was Sie tun können, zu dokumentieren, damit Sie später darauf zurückgreifen können. Dies erfordert effektive Kommunikations- und Schreibfähigkeiten. Darüber hinaus haben wir das Pull-Request-Paradigma verwendet, um neue Änderungen oder Ergänzungen des Produktionscodes vorzuschlagen und gute PRs zu verfassen, in denen deutlich wurde, dass meine Änderungen eine wichtige Fähigkeit waren, die ich entwickelt habe.
  5. Feedback erhalten: Vor meinem Praktikum war die einzige wirkliche Quelle für Feedback die Note, die ich bei einer Prüfung erhalten habe. Bei Hudl hatte ich jedoch die Möglichkeit, von den Personen, mit denen ich eng zusammengearbeitet habe, ein tatsächliches Feedback zu erhalten, sei es zu dem Code, den ich geschrieben hatte, oder zu meiner Gesamtleistung. Kritisches Feedback zu erhalten kann schwierig sein, und ich erkannte, dass es wichtig ist, Feedback einzuholen und von Kollegen und Mitarbeitern zu lernen, wenn Sie wachsen und sich verbessern möchten. Seitdem habe ich bewusst nach Feedback von anderen in meinem Leben gesucht, daher spielte mein Praktikum auch eine Rolle für meine persönliche Entwicklung.

Ich habe gelernt, dass das , was Sie im College lernen, nichts anderes ist als das, was Sie im College lernen .

Zum Beispiel wurde ich zu keinem Zeitpunkt während meiner Interviews oder Praktika von do calculus gebeten, ein Unternehmensproblem zu lösen oder Kunden wissenschaftliche Gesetze und Fakten zu erklären.

Was ich tun sollte, war involviert zu sein, wie ich in meinen Füßen denken, meine Arbeit selbstständig verwalten, eine starke Arbeitsmoral entwickeln, Arbeitsbeziehungen knüpfen und persönliche Verantwortung akzeptieren sollte.

Die Gewohnheiten, Werte und Beziehungen, die ich während des Studiums und während des Praktikums entwickelt habe, haben mir in der realen Welt drastisch mehr geholfen als jedes andere Material. In der Tat würde ich sagen, dass ich mich nur an ungefähr 5% des gesamten Materials erinnere, das mir am College beigebracht wurde, und das war erst vor 4 Jahren.

Abgesehen von technischen Fähigkeiten lernen Sie, wie ein echtes System funktioniert. In der Schule werden die meisten Ihrer Experimente oder Projekte in einem idealen Umfeld durchgeführt. Sie lernen etwas über das Scheitern, können es aber die meiste Zeit ignorieren. Mit einem guten Praktikum (es gibt schlechte) können Sie an einem echten System arbeiten, bei dem alle möglichen Fehler auftreten können. Dies macht deutlich, was Sie in der Schule lernen.

Sie lernen, mit echten Menschen umzugehen, die neben der Arbeit viel zu tun haben. Ihr Chef ist möglicherweise nicht so freundlich wie Ihr Professor.

Sie werden lernen, wie Sie während des täglichen Aufstehens für Ihre Arbeit verantwortlich sind und sich schlecht fühlen, wenn Sie nachlassen.

Sie werden lernen, mit verärgerten Kunden umzugehen, die keine Ahnung haben, worüber sie sprechen, aber dennoch freundlich zu ihnen sein müssen.

Ich habe 6 Praktika während meiner Studienzeit und jedes Mal, wenn ich etwas Neues gelernt habe.

Ich hatte 3 Tech-Praktika, als ich noch in der Highschool war und sie vergleichen nichts mit dem, was die Highschool war. Möglicherweise wissen Sie nicht die Hälfte der Dinge, die zum Abschließen einer Aufgabe erforderlich sind, aber ein paar Google-Suchanfragen und ein paar Minuten, um tatsächlich zu verstehen, auf welche Antworten Sie gestoßen sind, werden die Aufgabe erledigen. So war eigentlich mein erstes Praktikum. Ich habe bei meinem ersten Praktikum den COO einer anderen Firma getroffen und ein paar Dinge für sie getan (die ihnen gefallen haben), also haben sie mir ein Sommerpraktikum angeboten. Dies war wahrscheinlich eines der größten Dinge, die ich aus dem Praktikum herausbekommen habe; Verbindungen. Die Vernetzung mit Menschen wird immer wichtig sein, da sie viele Möglichkeiten eröffnet. Haben Sie keine Angst oder Nervosität, Fragen zu stellen und Vorschläge zu machen. Sie machen ein Praktikum, um zu lernen, und der beste Weg ist, sich zu engagieren, Fragen zu stellen und zu tun! Viel Glück! 🙂