it-swarm.com.de

Wie kann ich mein Praktikum retten?

Ich arbeite derzeit als Praktikant bei einem sehr großen Nicht-Software-Entwicklungsunternehmen. Die Stelle, auf die ich mich beworben habe, war nicht speziell eine Entwicklungsstelle, aber das Team, das mich eingestellt hat, wollte einen CS-Major, um zu versuchen, einige interne Projekte für sie zu entwickeln. Ich bin seit vier Wochen hier und die anfängliche Verwirrung lässt allmählich nach. Ich bin jedoch der einzige CS-Major im gesamten Büro - niemand in meinem Team, im Gebäude oder sogar an den benachbarten Standorten hat Hintergrundinformationen zur Softwareentwicklung. Das Beste, was ich habe, ist ein Datenbankmanager, und die Abteilung ist zu beschäftigt, um mich bei meinen Projekten zu unterstützen. Meine Teamkollegen helfen mir zu lernen, wie sie ihre Arbeit machen (was für mich wichtig ist, um meine Arbeit zu erledigen), aber es gibt niemanden, der mir bei meiner Arbeit hilft meine Arbeit, d. H. Entwicklung.

Die Projekte, die sie mir gegeben haben, sind umfangreicher als alles, was ich in der Schule gemacht habe. In Verbindung mit der Tatsache, dass ich alleine arbeite und versuche, Anwendungen ohne Anleitung oder klar definierte Ziele von Grund auf neu zu entwickeln, habe ich mir große Sorgen um meine Fähigkeit gemacht, erfolgreich zu sein. Ich weiß kaum, wo ich anfangen soll, und jetzt habe ich wahrscheinlich weniger als zwei Monate Zeit.

Ich habe das Gefühl, ich sollte den Softwareentwicklungsprozess lernen, aber im Moment fühle ich mich durch die Dunkelheit. Dies ist besonders beunruhigend für mich, da ich mit meinen Entwicklungsfähigkeiten überhaupt nicht sehr sicher bin. Ich habe selbst geforscht und unterrichtet, aber ich bekomme nur Kleinigkeiten. Sie haben hohe Erwartungen an mich, aber ich bin mir nicht sicher, ob ich liefern kann. Natürlich muss ich mich hinsetzen und mit meinen Managern über die Position sprechen, in der ich mich befinde, und ich beabsichtige, dies so schnell wie möglich zu tun (sie reisen oft und sind nicht im Büro).

Wie soll ich damit umgehen? Dieses Praktikum wird vorbei sein, bevor ich es weiß, und ich möchte nicht mit nichts abreisen, um es für meine Zeit hier zu zeigen. Sie wollen das auch nicht und stehen mir immer zur Verfügung, aber ohne Programmierkenntnisse können sie nur so viel tun. Ich habe Angst, ihnen zu sagen, dass ich nicht in der Lage bin, das zu produzieren, was sie wollen. Wie soll ich das mit ihnen in Beziehung setzen? Ich sehe, wie die Ingenieurpraktikanten Hilfe von anderen Ingenieuren bekommen und lernen, wie sie ihre Arbeit machen, und ich habe das Gefühl, ich sitze nur hier und warte auf meine Zeit. Jeder Rat, wie ich meine Situation korrigieren kann, wäre sehr dankbar.

pdate

Ich schätze all das hilfreiche Feedback von allen, es hat mir geholfen, mich zu beruhigen. Als erstes habe ich mich mit meinen Managern und Vorgesetzten getroffen. Wir haben besprochen, was von meiner Zeit hier erwartet wurde. Sie verstehen, dass ich als Praktikant nicht so viel Zeit habe, und dies hat dazu beigetragen, die Art des Rahmens, den wir erreichen möchten, zu erweitern, damit zukünftige Praktikanten oder Mitarbeiter hoffentlich auf dem aufbauen können, was ich verlasse. Ich ging auch auf meine Bedenken hinsichtlich meiner Fähigkeiten mit der zugewiesenen Zeit ein, die sie verstanden und erwartet hatten.

Ich habe einen Anruf vom Datenbankadministrator an einem anderen Ort erhalten - mein Manager hat mit seinem Vorgesetzten gesprochen und er wird mein Projekt unterstützen, wodurch ich jetzt eine Ressource zur Verfügung habe, damit ich nicht herumsitze und keine Ahnung habe, was ich bin. Ich tue. Das ist aber nur eine Hälfte. Von allen möglichen Projekten haben wir es auf die beiden wichtigsten eingegrenzt, an denen gearbeitet werden muss. Wie bereits erwähnt, bin ich bei meinem anderen Projekt im Wesentlichen der leitende Softwarearchitekt, was für einen Praktikanten eine einzigartige Situation darstellt. Wenn die Dinge zumindest halb erfolgreich verlaufen, habe ich wahrscheinlich viel Wissen und Erfahrung gesammelt, die mir bei zukünftigen Arbeitgebern helfen können. Im Moment denke ich, dass ich eine solide Grundlage habe, um meine Projekte zu erforschen und zu entwickeln. Nochmals vielen Dank für die Antworten von allen!

65
bhamlin

Ich habe schlechte Nachrichten für dich bhamlin:

Sie sind kein Praktikant. Sie sind eher ein unbezahlter/billiger Angestellter.

Ein Praktikum ist eine unbezahlte oder schlecht bezahlte Stelle, in der Sie Ihre neu erworbenen Fähigkeiten in einer sicheren, (normalerweise) entspannten Umgebung üben und die Gelegenheit erhalten, „echte“ Fachleute in Ihrem Bereich bei der „echten“ Arbeit zu beobachten und gleichzeitig Feedback zu erhalten auf den Teilen, die Sie ändern können (normalerweise unter Aufsicht und/oder Genehmigung).

Was Ihr Unternehmen wollte, war eigentlich kein Praktikant, sondern eine kostenlose/billige Quelle für Softwareentwicklung. Dies ist ziemlich häufig, meiner Meinung nach. Ich lebe in einer Universitätsstadt, und an meinem letzten Arbeitsplatz hörte man oft Manager sagen : "Hey, die IT-Abteilung ist zu beschäftigt, um Projekt X durchzuführen. Mal sehen, ob wir welche bekommen können." Praktikanten von der Universität, um es kostenlos/billig zu schreiben! " Wir murrten und stöhnten und knirschten mit den Zähnen zum Himmel, aber das war die Realität des Ortes, und ich konnte verstehen, warum Die Manager würden so etwas vorschlagen. Leider waren die Ergebnisse nicht großartig: Die von den Praktikanten gelieferte Software war nie zusammenhängend/skalierbar/sauber/usw. (aber um ehrlich zu sein, wurde auch nichts von der IT-Abteilung veröffentlicht ...)

Es liegt an Ihnen, was Sie tun. Mein Rat ist, einfach alles zu entwickeln, was du kannst (manchmal ist Druck ein großer Motivator), ABER du solltest auch planen, woanders ein "echtes" Praktikum zu machen, wenn dieses vorbei ist, wenn es möglich ist.

Also beschuldigen Sie sich nicht, aber was Sie betreten haben, war KEIN richtiges Praktikum.

124
Graham

Als CS-Major verfügen Sie über Fähigkeiten zur Problemlösung. Es ist unklar, welche Art von Projekten sie entwickeln möchten. Wenn ich raten müsste, möchten sie wahrscheinlich, dass Sie bei der Automatisierung einiger interner Prozesse helfen. Ich würde zunächst versuchen, ein Gesamtdiagramm der derzeit vorhandenen Prozesse und der Abhängigkeiten zwischen den Abteilungen für jeden dieser Prozesse zu erstellen.

Als nächstes würde ich nach niedrig hängenden Früchten suchen, die automatisiert oder zumindest rationalisiert werden könnten.

Kinderleichte Art, jeden Prozess zu dokumentieren

Stellen Sie diese Fragen in der folgenden Reihenfolge:

  1. Was ist die Ausgabe? (Erhalten Sie eine möglichst genaue Antwort)
  2. Was sind die Eingaben?
  3. Gibt es genügend Eingaben, um die Ausgabe zu erstellen?

Wenn die Antwort auf Nummer 3 NEIN lautet, holen Sie sich die fehlenden Teile. Dies können Formeln oder Geschäftsregeln oder was auch immer sein.

Wenn die Ausgabe von Schritt 1 zu kompliziert ist, zerlegen Sie sie in überschaubare Blöcke und greifen Sie jeden Block als separaten Prozess an.

Dokumentieren Sie, was Sie entdeckt haben. Identifizieren Sie potenzielle einzelne Fehlerquellen. Identifizieren Sie Schwächen oder knappe Abhängigkeiten.

Ich weiß, es klingt überwältigend, aber Sie haben die Fähigkeiten. Verwandeln Sie es einfach in mundgerechte Stücke. Wenn Sie lernen können, wie man "Geek-Zeug" mit "Nicht-Geek-Sprechen" erklärt, sind Sie Gold wert.

Hier ist meine Sicht auf diese ganze Situation: Sie verlangen mehr, als Sie vernünftigerweise erreichen können, geben Ihnen kein Feedback oder keine Anleitung und machen Ihre Arbeit im Allgemeinen nicht so angenehm. Aber diese Wolke hat einen Silberstreifen Du lernst etwas.

Insbesondere lernen Sie die Umgebung, in der Sie NICHT arbeiten möchten, wenn Sie Ihren Abschluss machen. Sie lernen auch, wie Sie mit einem Projekt umgehen, das zu groß ist, als dass Sie es realisieren könnten. Beides sind wichtige Erkenntnisse, an denen Sie festhalten können, da Ihnen niemand einen Job geben wird, von dem er glaubt, dass er unter Ihren Fähigkeiten liegt. Sie werden immer mehr verlangen, als Sie geben können, und es ist Ihre Aufgabe, mit ihnen zusammenzuarbeiten, um die Erwartungen zu verwalten und etwas zu liefern, das sie wollen.

Weiter zu dem, was Sie im Hier und Jetzt tun können. Ich würde damit beginnen, ein Tagebuch über alles zu führen, was Sie jeden Tag tun. Dies gibt Ihnen Rechenschaftspflicht. Selbst ein einfaches Ende des Tages "daran habe ich heute gearbeitet" gibt Ihnen etwas, auf das Sie zurückgreifen können, wenn sie nicht das bekommen, was sie wollen, und nach Antworten suchen.

Ich würde auch mit Ihrem direkten Vorgesetzten sprechen und prüfen, ob es eine Möglichkeit gibt, eines dieser größeren Projekte (- === -) aufzubrechen . Wenn Sie sich nicht wohl fühlen, wenn Sie das Ganze machen, müssen Sie vielleicht nur die Recherche und die Architektur für das Projekt durchführen und später von einem anderen Praktikanten implementieren lassen. Machen Sie sich einfach klar, was Sie in der verbleibenden Zeit des Praktikums Ihrer Meinung nach vernünftigerweise erreichen können, und machen Sie dies zu Ihrem Ziel. Auf diese Weise liefern Sie am Ende des Tages immer noch etwas, das für Ihren Arbeitgeber relevant ist.

Überprüfen Sie abschließend, ob Sie den technischen Praktikanten beitreten können . Ich gehe davon aus, dass diese Praktikanten auch Software entwickeln, und ich sehe keinen Grund, warum das, was Sie tun und was sie tun, so weit voneinander entfernt sind, dass Sie nicht voneinander lernen können. Ich arbeite bei meinen Projekten mit Elektrotechnikern, Softwareingenieuren, Computeringenieuren und Informatikern zusammen, und jede Person bringt ihre eigenen Stärken in das Team ein. Identifizieren Sie, wo Ihre Stärken in der Entwicklung liegen, und versuchen Sie zu begründen, warum sich diese Fähigkeiten für das Engineering-Team gut eignen.

18
Ampt

Sprechen Sie mit Ihrem Praktikumsberater

Alle Antworten, die ich bisher gesehen habe, scheinen sich auf den Arbeitgeber zu konzentrieren, was wichtig ist.

Sie müssen jedoch mit diesem Praktikum über ein Programm oder ein Büro an Ihrer Schule eingerichtet worden sein. Ich kann mir nicht vorstellen, dass Sie der erste Student sind, der in eine solche Situation geraten ist. Sie sollten in der Lage sein, Sie in eine bestimmte Richtung zu führen.

Selbst wenn sie Ihnen jetzt nicht helfen können (was ich schwer zu glauben finde), helfen Sie dem nächsten Schüler, der sich in dieser Situation befindet, was nicht zu unterschätzen ist.

13
Wonko the Sane

Ich hatte zwei solcher Praktika und habe sie sehr genossen. Es gibt bedeutende positive Seiten, die Ihnen zu fehlen scheinen:

  • In diesem Moment genießen Sie die kreative Freiheit, von der Programmierer, die in großen Teams von Programmierern arbeiten, nur träumen können. Alles von der Wahl der Sprache über die Quellcodeverwaltung, die Redaktion bis hin zur Softwarearchitektur liegt ganz bei Ihnen. Vertrau mir, du vermisst das, wenn es weg ist.
  • Die Arbeit mit Menschen, die nicht viel über Software wissen, ist ein wesentlicher Bestandteil des Softwareentwicklungsprozesses. Unter Schulbedingungen erwarten Sie genau definierte Aufgaben von Personen mit viel Erfahrung im Unterrichten von Softwareentwicklung. Selbst in Teams von Programmierern sind Ihre Aufgaben nie so eindeutig. Wenn Sie jetzt lernen, damit umzugehen, erhalten Sie einen Vorteil.
  • Der Erwerb von Domänenwissen ohne den Nutzen von Mentoren ist ein wesentlicher Bestandteil des Softwareentwicklungsprozesses. Ein oder zwei Mal im Jahr erhalte ich den Auftrag: "Werden Sie unser Fachexperte für X-Technologie." Jemand muss der erste in einem Unternehmen sein, der eine neue Technologie lernt. Sie erhalten interessantere Aufgaben, wenn Sie zeigen können, dass diese Person Sie sein kann.
  • Aus Ihrer Sicht fühlt es sich nach viel Druck an, aber Sie sollten wissen, dass ihre Erwartungen an Sie wirklich sehr niedrig sind. Sie wissen, dass es für Sie ohne einen richtigen Mentor schwieriger ist. Gib einfach dein Bestes und es wird dir gut gehen.

Trotzdem kann es überwältigend sein, Ihr erstes großes Projekt in Angriff zu nehmen. Folgendes kann helfen:

  • Versuchen Sie, nicht auf einmal an das gesamte Projekt zu denken. Überlegen Sie, was Sie jetzt tun müssen.
  • Holen Sie sich eine Liste der Funktionen, die ausgeführt werden müssen, und bringen Sie sie dazu, sie in die Prioritätsreihenfolge zu bringen. Auf diese Weise bleiben die wichtigsten Funktionen erhalten, wenn Sie nicht die gesamte App fertigstellen.
  • Teilen Sie die erste Funktion in immer kleinere Aufgaben auf, bis Sie zu Aufgaben gelangen, die Sie in ein oder zwei Tagen erledigen können. Hab keine Angst, sie dumm einfach klingen zu lassen. Meine erste Aufgabe bei brandneuen Projekten ist es immer, Hallo Welt zum Laufen zu bringen und in die Quellcodeverwaltung einzuchecken. Insbesondere wenn es sich um eine neue Sprache handelt oder eine, die ich seit einiger Zeit nicht mehr verwendet habe, wird mir mitgeteilt, dass meine Build-Umgebung und Tools ordnungsgemäß eingerichtet sind.
  • Lassen Sie Ihre Fortschritte regelmäßig überprüfen. Versuchen Sie nicht, am Ende des Sommers ein fertiges Produkt darauf zu werfen. Zeigen Sie ihnen mindestens einmal pro Woche, was Sie bisher haben.
  • Geben Sie sich im Voraus einige Mühe, um vorhandene Projekte und Komponenten zu finden, die Ihren Anforderungen entsprechen. Es ist viel einfacher, ein vorhandenes System anzupassen, als eines von Grund auf neu zu erstellen. Viele Unternehmen benötigen ähnliche interne Apps. Ich wünschte, ich hätte es selbst gewusst. Eines meiner Praktikumsprojekte hat a CRM (schlecht) neu erfunden.

Entspannen Sie sich, geben Sie Ihr Bestes und lernen Sie so viel wie möglich, ob es sich um Software handelt oder nicht.

10
Karl Bielefeldt

Die anderen Antworten hier sind sehr gut, lesen Sie sie immer wieder und versuchen Sie wirklich, sie herauszufinden. Wenn Sie das dann tun, können Sie mit überdurchschnittlichem Aufwand auf der anderen Seite Ihres Praktikums "lebendig" auftauchen. In Anbetracht Ihrer Situation wird es schwieriger als erwartet, aber es kann sich lohnen.

Dies ist von entscheidender Bedeutung, wenn Sie sich für eine Stelle bei einem anderen Unternehmen bewerben1Eine der wichtigsten Fragen wird sein:

Ich sehe hier, dass Sie ein Praktikum bei der Firma X gemacht haben. Wie war es? Warum bist du gegangen ?

Wenn Sie ihnen dann zeigen können, dass Sie Ihre schwierige Situation professionell bewältigt haben, zählt dies VIEL, Arbeitgeber sind normalerweise von so etwas sehr beeindruckt.

Selbst wenn es irgendwie scheiße ist, können Sie es zu einer wertvollen Erfahrung machen, aus der Sie die Gelegenheit haben zu lernen, was Ihre Klassenkameraden niemals tun werden ...

1 = Ich hoffe du wirst es tun, denn dort zu bleiben wird einen Selbstmord in der Karriere bedeuten (früher oder später ... wahrscheinlich früher)

6
Radu Murzea

Ich war letztes Jahr in einer ähnlichen Position, in der ich alles von Grund auf weiterentwickeln musste und sonst niemanden mit Entwicklungserfahrung hatte. Ich habe das Projekt, das sie mir gegeben haben, abgeschlossen, aber ich würde es nicht als polierte oder sogar wartbare Anwendung bezeichnen (da die einzige Person, die weiß, wie es funktioniert, ich bin und niemand im Unternehmen den Code angesehen hat).

Hier sind einige Dinge, die ich getan habe und tun würde, wenn ich in dieser Situation wäre. Einige davon wurden bereits in den vorherigen Antworten erwähnt

Finde heraus:

  • Was soll das Produkt tun (Ein- und Ausgänge, das absolutes Minimum)
  • Was sind Ihre Grenzen? (d. h. welche Programme können/können Sie nicht verwenden?)

Dadurch erhalten Sie ein Bild in Ihrem Kopf darüber, wie das Produkt aussehen soll. Zeichnen Sie dies heraus auf ein Blatt Papier und zeigen Sie es Ihrem Manager/Vorgesetzten. Sehen Sie, was sie darüber sagen. Wenn sie es nicht mögen, fragen Sie sie, was sie ändern möchten, ändern Sie es und wiederholen Sie den Vorgang. Wenn sie es mögen, machen Sie das Nötigste an Codierung und erstellen Sie eine einfache Demo.

Zeigen Sie die Demo für sie (fragen Sie sie, ob sie dies vorhaben), dies zeigt ihnen Ihren Fortschritt und hilft Ihnen zu verstehen, was sie wollen.

Wenn Sie Hilfe beim Codieren benötigen, lesen Sie die Handbücher/Tutorials, die Google-Suche und stellen Sie schließlich Hilfe auf dem Stapelüberlauf bereit.

Lassen Sie sich nicht auf kleine Details ein. Sie werden viel Zeit verschwenden, wenn Sie dies tun.

Code in kleinen Blöcken, wobei jeder Block eine Hauptfunktionalität für die Anwendung darstellt.

Kommentieren Sie Ihren Code. Wenn sie planen, dies an einen anderen Praktikanten oder einen Mitarbeiter weiterzugeben, ist dies eine große Hilfe für sie.

Kommunizieren Sie weiterhin mit Ihrem Manager/Vorgesetzten über das Projekt und Ihre Fortschritte.

Und mach dir keine Sorgen, wenn du das Projekt nicht beenden kannst, du bist ein Praktikant und hast das Beste getan, was du kannst. Sie sind schuld daran, jemanden einzustellen, der für ein solches Projekt unter Erfahrung ist.

TL; DR

  • Kommunizieren Sie bei jedem Schritt mit Ihrem Manager

  • Code der Hauptfunktionalität

  • Holen Sie sich Hilfe von Google und Stack Exchange

  • Mach dir keine Sorgen, wenn du nicht fertig werden kannst

5
stackErr
  1. Klären Sie die Ziele des Praktikums - warum wurden Ihnen so viele Projekte zugewiesen?
  2. Stellen Sie dem Management klar, dass Sie die angeforderten Projekte nicht innerhalb der vorgegebenen Zeit abschließen können
  3. Bereiten Sie eine Analyse vor, wie Sie Ihre Zeit am besten nutzen können. Schlagen Sie beispielsweise vor, nur an einem Projekt zu arbeiten und die anderen zu löschen.

Ihre Zeit würde Ihrem Unternehmen am besten helfen, wenn Sie nur an einem kleinen Projekt arbeiten würden. Stellen Sie sicher, dass es gut dokumentiert ist. Konzentrieren Sie sich auf die Erstellung einer nützlichen Dokumentation der Architektur, der Projektziele, des Projektfortschritts und des Quellcodes.

1
KyleM