Ich bin ein ständig unterausgelasteter Entwickler – ist das normal?

Ich bin relativ neu in der Softwarebranche. Ich habe ungefähr 1 Jahr bei der Regierung als Programmierer und ungefähr 3 Monate bei einem kleinen E-Commerce-Unternehmen gearbeitet. Beide Unternehmen sind ziemlich klein und das Entwicklungsteam besteht aus einem (nicht technischen) Manager, einem Senior-Entwickler und einem Junior-Entwickler (ich).

In diesen beiden Positionen finde ich mich immer arbeitslos.

  • Meistens warte ich auf Klärung/Informationen/Dateien und habe bis dahin nichts zu tun.
  • Kleine Fehlerbehebungen behebe ich immer rechtzeitig und sende E-Mails, wenn ich fertig bin, und frage, was als nächstes kommt.
  • Ich warte auf die Abhängigkeit eines anderen Entwicklers, damit ich an meinem Teil des Projekts arbeiten kann.
  • Ich habe ein Projekt abgeschlossen und warte auf meine nächste Aufgabe.

Manchmal bin ich ein paar Stunden arbeitslos, manchmal bin ich tagelang arbeitslos. Während dieser Zeit führe ich Tests durch, bereinige den Code, lese die Dokumentation und füge Anwendungen kleine Lebensqualitätsfunktionen hinzu.

Meine Frage ist: Ist das normal für Entwickler? Soll ich einfach ein Feature implementieren, ohne nach einer Klärung zu fragen, und dann meine Ergebnisse präsentieren? Soll ich ein Projekt oder ein Feature vorstellen, an dem ich arbeiten könnte? Was soll ich während meiner Ausfallzeit tun?

Ich finde es schwierig, den Tag zu überstehen, wenn nichts auf meinem Teller ist.

Is this normal for developers?Kommt auf die Firma an... Should I just implement a feature without askingNein.
Willkommen bei SW-Entwickler. Das ist normal. Ändern Sie keine Dinge, ohne sie von dem Senior-Typ laufen zu lassen, aber machen Sie ihm Vorschläge, insbesondere für Werkzeugverbesserungen.
@Bohemian Würden Sie sagen, dass sich ein Junior-Entwickler an den Senior-Entwickler wenden sollte, wenn der Manager/Teamleiter arbeitslos ist? dh bei ihrem Projekt mithelfen oder kleine Aufgaben übernehmen. Meine Sorge ist, dass diese gegebenen Aufgaben mit den beabsichtigten Aufgaben des Managers kollidieren könnten.
Wenn der Manager nicht in der Nähe ist, scheint es für den Senior-Mitarbeiter selbstverständlich, kleinere Entscheidungen in seiner Abwesenheit zu treffen. Dies gilt nur, wenn Sie nichts zu tun haben. Wenn der Manager Aufgaben für Sie hinterlassen hat, erledigen Sie diese natürlich. Das ist kein Hexenwerk.
Erwägen Sie, den für Sie Verantwortlichen zu fragen, was zu tun ist. Möglicherweise gibt es genügend Nachholarbeiten, die für diese Situation geeignet sind.
Es gibt immer mehr zu tun. Online-Schulung, um sich mit den Geschäftsprozessen Ihres Unternehmens und Fehlerrückständen vertraut zu machen. Meiner Meinung nach gibt es nichts Schöneres, als dafür bezahlt zu werden, Schulungen zu absolvieren und Ihre Fähigkeiten auf Kosten eines anderen zu verbessern.
Erledigen Sie einfach etwas DevOps-Arbeit. Es wird sehr geschätzt, besonders wenn Sie eines Tages skalieren werden.
In 35 Jahren Programmieren/Softwareentwicklung hatte ich Monate in dieser Situation. Sehr sehr ungewöhnlich: Typisch ist eine starke Überlastung und gelegentliches Gefühl, als würde man auf der Stelle treten, ist eine relative Erleichterung. @EthanTheBrave in diesem einen Monat lernte ich Powerbuilder (um es nie wirklich zu benutzen) und Visual Basic (habe das benutzt ...)

Antworten (4)

Kurz gesagt: Ja, insbesondere für Junior-Teammitglieder kleiner Teams (und insbesondere kleiner Entwicklungsteams, die in große Unternehmen eingebettet sind).

Sie müssen das als Junior-Entwickler mit wenig Vertrautheit mit der Codebasis erkennen; Sie stellen einen winzigen Teil der Kapazität des Entwicklungsteams dar. Es ist leicht für Sie, zwischen die Ritzen zu rutschen, weil Ihr älterer Kollege Sie (hoffentlich) um einen großen Betrag übertrifft. Mit zunehmender Erfahrung (sowohl insgesamt als auch mit den Systemen des Unternehmens) sollte diese Lücke verschwinden.

Ich empfehle, diese Zeit zu nutzen, um sich mit der Umgebung vertraut zu machen. Kleinere Fehlerbehebungen sind eine großartige Möglichkeit, sich mit einer Codebasis vertraut zu machen. Ebenso wie Dokumentation, Schreibtests und andere verschiedene Wartungsarbeiten.

Fragen Sie nach dem letzten Absatz nach einer Hintergrundaufgabe, wie z. B. einer Dokumentation oder dem Schreiben von Tests. Wenn Sie Ihre Arbeit mit höherer Priorität beenden oder blockiert sind, fahren Sie mit der Hintergrundaufgabe fort.
Ja, oder lassen Sie sich Ihre eigene Hintergrundaufgabe einfallen, wenn der Chef das nicht kann. In meinem ersten Job als Multimedia-Entwickler (hauptsächlich Macromedias leider ausgestorbene Sprache Lingo) bestand meine Hintergrundaufgabe darin, Java zu lernen, und mein nächster Job war als (viel beschäftigter!) Java-Entwickler.

Da ich in einer ähnlichen Situation war, schlage ich Folgendes vor.

Das Wichtigste - meiner Meinung nach - ist, dass man nicht herumsitzt und Däumchen dreht. Dies kann bei Ihnen zu Depressionen und der Entwicklung schlechter Arbeitsgewohnheiten führen.

Stattdessen müssen Sie einen Weg finden, das Engagement aufrechtzuerhalten.

Ich schlage vor, nach Projekten zu suchen, an denen Sie arbeiten können und die mit Ihrer Arbeit zusammenhängen.

  • Vielleicht verwendet Ihr Unternehmen eine veraltete Technologie – Sie könnten damit beginnen, eine Technologie zu untersuchen und zu lernen, um sie zu ersetzen.

  • Wiederholen sich einige Aspekte Ihres Jobs? Erstellen Sie ein Tool, um es zu automatisieren.

  • Gibt es eine Funktion, von der Sie glauben, dass Ihr Unternehmen davon profitieren wird? Erstellen Sie es auf jeden Fall - aber binden Sie es nicht an die Codebasis. Sehen Sie, ob es geschätzt wird, indem Sie sagen: "Oh übrigens, hier ist dieses Tool, das ich erstellt habe."

  • Was möchtest du beruflich machen? Lerne diese Technologie.

  • Sie können jederzeit auf Stack Exchange springen und Fragen / Fragen zur Codeüberprüfung beantworten.

Nun - Sie fühlen sich vielleicht schlecht, weil Sie eine Arbeit machen, die Ihnen nicht ausdrücklich gesagt wurde. Um diese Spannungen abzubauen, würde ich vorschlagen, direkt mit Ihrem Vorgesetzten zu sprechen – „Hey Chef – ich warte gerade auf der Arbeit – ich dachte, ich mache XYZ, während ich warte – ist das cool für Sie?“. So

Solange Sie die Arbeit erledigen, die Sie erledigen müssen, und Ihr Vorgesetzter vernünftig ist, sollte dies vollkommen in Ordnung sein.

+1 speziell für den Automatisierungsteil - und versuchen Sie, ihn auf die Bedürfnisse anderer auszudehnen. Vor allem dein Chef. Wenn Ihr Chef eine langweilige, sich wiederholende Aufgabe zu erledigen hat und Sie diese automatisieren können, ist das für alle gut. und vor allem für Ihre Karriere. Vernachlässigen Sie andere Personen nicht - insbesondere diejenigen, die viele Excel-ähnliche Aufgaben zu erledigen scheinen - das Potenzial zur Produktivitätssteigerung ist hier normalerweise riesig. Und sie werden dich dafür lieben, dass du ihnen das Leben leichter machst.

Soll ich einfach ein Feature implementieren, ohne nach einer Klärung zu fragen, und dann meine Ergebnisse präsentieren?

Das ist das einzige, was ich zu Ihren Fragen beanstande. Tun Sie nichts, wozu Sie nicht berechtigt sind. Was ist, wenn ein Fehler in Ihrem Feature etwas durcheinander bringt? Fügen Sie Ihre Funktionen bestenfalls in Ihrer lokalen Umgebung hinzu.

Als Ihre ursprüngliche Frage, schätzen Sie diese Freizeit, indem Sie eine neue Technologie lernen, die auch für Ihr aktuelles Projekt nützlich ist. Sehen Sie niemals gelangweilt oder völlig frei aus, denn das wird Ihre Kollegen und Vorgesetzten ärgern, obwohl sie diejenigen sind, die Sie frei halten oder nicht.

Ich denke, "Fügen Sie Ihre Funktionen in Ihrer lokalen Umgebung hinzu" widerspricht dem Rest Ihres Einwands. Was ist falsch daran, ein mögliches Feature in der eigenen Branche zu entwickeln und es als Vorschlag zu präsentieren, was getan werden könnte? Es bringt nichts durcheinander. Könnte eine gute Nutzung von Freizeit sein, für deren Verwendung Sie keine gute Anleitung haben. „Tu nichts, wozu du nicht berechtigt bist“ ist ein schlechter Ansatz, wenn dir nicht genug Arbeit zugeteilt wurde.

Wie Sie bereits verstanden haben, sind Refactoring und Fehlersuche Aktivitäten, die von Softwareentwicklern immer dann erwartet werden, wenn sie nicht mit anderen Aufgaben beschäftigt sind.

Versuchen Sie, sich mit der Codebasis des Unternehmens vertraut zu machen. Das Lesen von Code ist immer lehrreich, aber für junge Programmierer noch wertvoller. Wenn Sie auf Dinge stoßen, die Sie nicht verstehen: Herzlichen Glückwunsch, Sie haben gerade etwas Neues gefunden, worüber Sie lernen können. Wenn Sie etwas stört, versuchen Sie, den Grund dafür herauszufinden (die Versionskontrolle und der Bugtracker können helfen), oder fragen Sie den leitenden Entwickler in einem seiner weniger beschäftigten Momente.

Ich bin mir bei dieser Ablehnung nicht sicher. Was ist an dieser Antwort falsch?