In Wirklichkeit verwaltet ein Entwickler auch DBMS und System? [geschlossen]

21

Ich weiß wirklich nicht, wo ich sonst fragen soll. Also geht es los.

Ich arbeite in einem winzigen Unternehmen, das ERP-Software und Websites herstellt.

1 Entwickler mit + 10 Jahren Erfahrung.
2 Entwickler mit + 3 Jahren Erfahrung.
3 Entwickler mit + 1 Jahr Erfahrung.

Das ist es.
Kein Team, kein DBA, kein Systemadministrator.
Es gibt hier niemanden, der Erfahrung in der Webentwicklung hat, also war ich zufällig für die Webentwicklung verantwortlich. Aber ich habe nur 3 Jahre Erfahrung! Als ein Entwickler !.


Ich weiß, dass Sie in einer kleinen Firma viele verschiedene Dinge tun müssen, aber ist es zu viel, wenn ich Sysadmin, Datenbankarchitektur, Software-Design und -Entwicklung machen muss? Außerdem werde ich gebeten, das alles auf verschiedenen Plattformen zu tun.
Ich arbeite derzeit mit JSP, ASP, MSSQL, MySQL, Oracle, Windows Server und Linux.
In der Datenbank mache ich vom Schreiben von Abfragen bis zum Sichern und Wiederherstellen.
Server-Setup, Systemabsturz-Wiederherstellung, DB & Server-Migration ebenfalls.
Plüsch HTML, Javascript und CSS :)
Anzahl der Projekte, für die ich verantwortlich bin: 5

Ich bin überhaupt kein Experte!
Ich muss im Internet suchen, Tutorials lesen und Fragen in StackOverflow stellen, um all das zu erledigen!

Also frage ich dich, ist das normal?
Ist das eine normale Praxis?
Werde ich mit der gleichen Situation konfrontiert, egal in welcher kleinen Firma ich bin?
Ich arbeite in Südkorea.
Wie ist es in deinem Land?

PS Vielen Dank für Ihre Meinung. Ich wollte euch alle positiv bewerten, weil ihr mir geholfen habt, es anders zu sehen, aber anscheinend braucht ihr 15 Ruf, um positiv zu bewerten :(

Aufsteigend
quelle
36
Betrachten Sie sich als sehr glücklich. Sie haben die Möglichkeit, eine Vielzahl von Fähigkeiten zu erlernen und werden dafür bezahlt.
Robert Harvey
2
Ja, ich denke so. Ich beschwere mich nicht besonders, sondern frage, ob es eine normale Praxis ist. Oh, vielleicht sollte ich das der Frage hinzufügen.
Aszendent
Ob es zu viel ist, liegt wirklich an Ihnen. WIE andere in Antworten gesagt haben, ist es nicht ungewöhnlich, dass kleine Unternehmen Menschen dazu bringen, andere Rollen zu übernehmen. Wenn Sie das Gefühl haben, dass Ihre Arbeit dadurch überfordert ist, sollten Sie dies mit Ihrem Vorgesetzten besprechen. Wenn Sie so viele andere Aufgaben erledigen, die Sie nicht so gut erledigen möchten, wie Sie möchten (und für die Sie angestellt waren), sprechen Sie erneut mit Ihrem Vorgesetzten oder beginnen Sie, nach anderen Rollen zu suchen. Ich persönlich mache gerne Sysadmin und vermisse es, wenn ich in einer großen Firma bin, in der sie mich nicht an Servern lassen. ;-)
Chris
3
Du bist nicht allein. Ich mache alles (und ich meine alles ) auch in meiner Firma. DBA, Sysadmin, Programmierer, Webentwickler, Anwendersupport, Networking, das funktioniert.
MikeTheLiar

Antworten:

33

Nach meiner Erfahrung ist es durchaus üblich, dass Entwickler in kleinen Unternehmen ein breites Spektrum von Rollen abdecken. Es ist sicherlich normal für ein so kleines Unternehmen, dass es nur drei Entwickler hat, die keinen spezialisierten DBA oder Sysadmin haben.

Ich finde es jedoch ungewöhnlich, dass ein so kleines Unternehmen ein so breites Spektrum an Technologien einsetzt. JSP und ASP? Windows und Linux? SQL Server, MySQL und Oracle? In der Regel konzentrieren sich kleine Unternehmen auf eine Technologieplattform, um zu vermeiden, dass sie zu dünn werden.

Wenn Ihre Arbeit die Entwicklung eines vollständigen Stacks auf einer Plattform beinhaltete - z. B. ASP.NET + SQL Server + Windows oder Java + Oracle + Linux - würden Sie sich immer noch überfordert fühlen?

Auf jeden Fall sollten Sie sich an größere Unternehmen wenden, wenn Sie sich stärker spezialisieren möchten. Je größer das Team, desto plausibler und nützlicher ist es, Spezialisten zu haben.

Carson63000
quelle
Vielen Dank. Nur um noch eine Sache hinzuzufügen: Wenn ich gebeten würde, auch ERP-Software in SAP PowerScript zu entwickeln und zu warten, wäre das noch eine normale Praxis? oder es wird sich zu dünn ausbreiten?
Aszendent
Während @PerfectGundam nicht erklärt hat, warum sein Arbeitgeber eine solche Vielfalt von Plattformen hat; Wenn Sie nicht den Vorteil haben, Ihre Legacy-Systeme neu zu schreiben, wenn Sie die Plattform für die Neuentwicklung wechseln, fällt es Ihnen nicht schwer, mehrere zu nutzen. Fälle, in denen Ausreißer nur einen kleinen Teil der Gesamtzahl ausmachen, können auftreten, wenn eine gelegentliche Nische keine gute Option für die bevorzugte Plattform des Unternehmens bietet. Und wenn das Unternehmen Software für Dritte entwickelt; Das Erstellen von Produkten, die auf den vom Kunden bevorzugten Stapel passen, kann zu einem großen Durcheinander von Plattformen führen, die jeweils ein- oder zweimal verwendet werden.
Dan Neely
@DanNeely - oh, ich habe keinen Zweifel, dass genau das passiert ist. Für eine kleine Agentur besteht immer das Risiko, zu irgendetwas Ja zu sagen, weil es wichtiger ist, den Verkauf zu tätigen als kleine Details wie "Haben wir jemanden, der diese Arbeit tatsächlich erledigen kann?" :-)
Carson63000
14

Aus Erfahrung kann ich sagen, dass das Leben als Softwareentwickler stark von der Größe des Unternehmens abhängt, in dem Sie arbeiten.

Kleinere Geschäfte erfordern in der Regel mehr Multi-Tasking und die Übernahme mehrerer Rollen, während große Unternehmen in der Regel eine sehr genau beschriebene Rolle für jede Person haben.

Ein Extrem ist eine Ein-Mann-Show, bei der Sie (offensichtlich) die ganze Arbeit erledigen müssen , egal ob sie in Ihre Stärken passt oder nicht.

Die andere sind die großen, multinationalen Unternehmen mit mehreren Standorten in der Stadt allein: hier Sie neigen dazu , eine haben , genaue Positionsbeschreibung , die Sie sagt genau , was Sie gerade arbeiten.

Ebenso, nehme ich an, hängt es auch von Ihrem genauen Geschäftsbereich und dem geografischen / kulturellen Standort ab.

Joachim Sauer
quelle
13

In Ihrer Aufzählung der Aufgaben, die ein Entwickler zu erledigen hat, können Sie auch Folgendes angeben:

  • Interaktionsdesign,
  • Visuelles Design,
  • Benutzerfreundlichkeit,
  • Sicherheit,
  • Erfassung von Anforderungen,
  • Testen und QS,
  • Einsatz,
  • Instandhaltung,
  • Projektmanagement,
  • Team Management,
  • etc.

Im Wesentlichen ist dies der Unterschied zwischen einem Programmierer und einem Entwickler .

  • Die Aufgabe eines Programmierers , egal wie geschickt er ist, besteht darin, Code zu schreiben und schließlich ein wenig über die verschiedenen Ansätze nachzudenken (dh das vorläufige Design).

  • Die Aufgabe eines Entwicklers ist es, in der Lage zu sein, ein kleines oder mittelgroßes Projekt durchzuführen , das ein viel breiteres (und damit gleichzeitig flacheres) Wissen erfordert.

Um die Tatsache zu überwinden, dass ein einzelner Entwickler nicht so viel wissen könnte wie eine einzelne Person, die jahrelang nur eines gelernt hat, werden Projekte von einem Team durchgeführt. So sind Projekte organisiert (oder sollten es zumindest sein). In den meisten Fällen erfordert ein kleines Projekt in keinem Bereich zu viele Fähigkeiten, während dies bei größeren Projekten der Fall ist.

  • Wenn ich als Entwickler die Sicherheit einer E-Commerce-Website eines winzigen Unternehmens vermassle, ist das schlecht, weil das Unternehmen möglicherweise ein paar Hundert oder selten Tausende von Dollar verliert, aber nicht kritisch. Wenn ich es mit der Sicherheit oder einem System vermassele, das den Flugverkehr kontrolliert, ist das wirklich schlimm.
  • Auch wenn das Interaktionsdesign des internen Buchhaltungssoftwareprodukts für ein kleines Unternehmen durchgeführt und nur von zwei Buchhaltern verwendet wird, die dort arbeiten, ist dies nicht allzu schädlich. Wenn das Interaktionsdesign eines neuen Apple-Produkts schlecht ist, kann dies erhebliche Auswirkungen auf den Umsatz und das Ansehen des Unternehmens haben.
  • etc.

Das bedeutet, dass Sie bei der Arbeit in kleinen Unternehmen an kleinen Projekten oft viele Dinge tun . Diese Unternehmen können es sich nicht leisten, Spezialisten in den Hunderten von IT-Sektoren zu finden, und suchen stattdessen nach einem Alleskönner .

Beginnen Sie mit der Arbeit an großen Projekten, und Sie werden feststellen, dass Ihre Rolle enger und gleichzeitig tiefer wird. Ihre ganze Arbeit mag darin bestehen, CSS-Code zu schreiben, aber Sie müssen alle CSS-Besonderheiten kennen und in der Lage sein, eine Webanwendung auf der Grundlage der Arbeit eines visuellen Designers sehr schnell zu gestalten. Sie hätten keine Entschuldigung, wenn Sie die Vorteile von Sass im Vergleich zu LESS nicht erklären können oder wenn Sie nicht wissen, was CSS-Sprites sind.

Es liegt an Ihnen, auszuwählen, was Sie bevorzugen.

  • Es ist nicht schlecht, ein Alleskönner zu sein, zumal es Ihnen erlaubt, flexibel genug zu sein: Wenn ein Bedarf an Systemadministratoren besteht, verfügen Sie über die erforderlichen Fähigkeiten. Wenn ein paar Jahre später niemand Sysadmins benötigt, Webentwickler jetzt aber gut bezahlt werden, können Sie sich ebenfalls bewerben.
  • Es ist auch nichts Schlimmes, sich auf ein enges Feld zu konzentrieren. Wenn Sie über fundierte Fachkenntnisse verfügen, können große Unternehmen mit viel Geld daran interessiert sein, Sie einzustellen, da es nur wenige Spezialisten mit Ihrem Fachwissen gibt.
Arseni Mourzenko
quelle