Kann ich ein erfolgreicher Programmierer sein?

... komplette Frage anzeigen

12 Antworten

Das ein oder andere kleine Open-Source Projekt macht als Referenz normalerweise bei Bewerbungen einen ganz guten Eindruck. Aber um das beruflich zu machen gibt es auch diverse andere Anforderungen, die mehr auf Software-Engineering und auf das Entwickeln im Team abzielen. 

Tipp: Schau dir einfach mal Stellenanzeigen an (Stepstone/Indeed/Monster). Die schreiben teilweise sehr genau, was sie erwarten.

PHP und gerade auch JavaScript sind natürlich Skills die sehr gefragt sind, weil sie in schulischen und universitären Ausbildungsgängen oft ganz unter den Tisch fallen (weil das ja keine "echten" Programmiersprachen sind), aber in der Praxis oft gebraucht werden.

Meiner Meinung nach sollte man aber zumindest auch fundierte Kenntnisse in C++, Java und Python haben, wenn man beruflich flexibel sein will, egal auf welchem Gebiet du dich spezialisierst.

Weil du aber scheinbar Web-Entwicklung machst ist Javascript mit allem drum und dran (jQuery, AngularJS, node.js usw.) eigentlich Pflicht.  PHP, den ganzen Web-Service Kram, Ruby wäre nicht schlecht, und Techniken wie JSP, Django, Ruby on Rails usw. sind auch noch regelmäßig gefragt. Nicht zu vergessen den Umgang mit Web-Servern (apache, nginx) und den Tools aus der Branche wie grunt.

Wenn du mehr in Windows-Entwicklung machen willst, dann den .net-Kram inklusive C#. (Sorry, in der Branche kenne ich micht nicht so aus).

Wenn du mehr in die Java-Ecke gehen willst, dann halt den ganzen Application Server-Kram mit den entsprechenden Persistenz-Frameworks wie Spring usw. und natürlich diese ganzen Java-spezifischen Tools wie maven, jenkins usw.

Wenn du wissenschaftliche Software Entwickeln willst: Fortran, Matlab/Octave, C, C++, Python, wenn es in Richtung Statistik geht kommt auf jeden Fall noch R dazu. Manchmal OpenCL und CUDA. Je nach Gebiet diverse Bibliotheken.

Im embeded Bereich (C, C++, Assembler). Oft tiefgehende Linux-Kentnisse, Kenntnisse in der Kernel-/Treiberentwicklung, je nach dem noch VHDL und Verilog-Kentnisse.

Einstiegsgehalt zwischen 39-45K im Jahr. Je nach Region und Erfahrung langfristig bis 70K, manchmal auch mehr. 

Manche Firmen legen auch Wert auf gute Deutsch-Kentnisse (diese meide ich aber normaleweise) ;)

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von fluffiknuffi2
25.05.2016, 13:02

Einstiegsgehalt zwischen 39-45K im Jahr.

Leider nein. Als durchschnittlicher PHP-Entwickler bekommst du das sicher nicht überall. 39k ist da vermutlich eher schon sehr gut bezahlt. Natürlich nicht in München und natürlich nicht wenn man ein Überflieger ist. Aber ich denke das erste Gehalt für Einsteiger liegt im Schnitt eher bei 35-37k. Sicher bin ich mir da nicht, es gibt halt viele Einflussfaktoren und leider habe ich noch nie eine wirklich vertrauenerweckende Quelle für einen Wert gesehen, aber das ist, was ich mir so aus unzähligen Zahlen, die ich in den letzten Monaten/Jahren gesehen habe, zusammenreime.

0

Es ist schon möglich als Entwickler eine Zeit lang ganz gut zu verdienen wenn man aktuell am Markt gefragtes KnowHow hat. 

Das Wissen kann man z.B. durch eine Zertifizierung nachweisen, was sich in der Bewerbung gut macht. 

Im aktuellen KnowHow liegt aber auch das Problem. Ein Entwickler muss immer am Ball bleiben und sich mit den Neuerungen beschäftigen. Bei den Administratoren ist dieses Problem nicht ganz so umfangreich.

Natürlich ist die IT auch viel Projektgeschäft, d.h. Projekt verwalten, aufsetzen etc. Hier ist man mit einem Studium gut unterwegs.

Ganz allgemein kann man sagen die Tätigkeit als Entwickler muss einem liegen...

Antwort bewerten Vielen Dank für Deine Bewertung

Also nur mit den genannten Punkten wird das schwierig, da gerade diese von so ziemlich jedem Entwickler auf dem Gebiet erwartet werden und es kaum jemanden in dem Bereich geben dürfte, der davon noch nie etwas gehört hat. :)

Außerdem sagt Code mehr als tausend Worte. Schon 10 bis 30 Zeilen deines Codes würde vermutlich für eine sehr grobe Einschätzung reichen, aber nur an deiner Fragestellung wird niemand erkennen können, auf welchem Niveau du programmierst.

Falls du Lust hast, beantworte mal folgende paar Fragen mithilfe von PHP Ein-, Zwei- oder Dreizeilern (dann könnte man zunächst wenigstens abschätzen, in welche Richtung sich deine Fähigkeiten bewegen):

  1. Anhängen eines Elements an ein Array
  2. Ausgabe einer Textdatei innerhalb einer HTML Seite mit PHP
  3. Verbindung zu einer Datenbank aufbauen
  4. Über alle Elemente eines Arrays iterieren

Das ist alles bewusst triviales Zeug. Jede der Aufgaben kann man aber auf gute und weniger gute Arten Lösen. Versuch dich mal nicht selbst zu betrügen, und schreibe ruhig mal zu jeder Frage eine kurze PHP-Zeile, ohne Google zu befragen.

Das sagt dann im Endeffekt zwar genauso wenig aus, wie Bewerbungstests, aber dann kann man immerhin schon mal weiter sehen. :)

An die Mitleser: Ich weiß, dass die meisten hier die obigen Dinge mit Links erledigen, aber auch wenn es euch in den Fingern juckt, bitte nicht spoilern!

Ansonsten guck dir die bisherigen Antworten an ... die sehen - zumindest grob überflogen - ganz gut aus.

Viel Spaß! :)

PS: Ehrlich gesagt denke ich, dass du dich ganz gewaltig überschätzt. Aber das ist bei fast allen Leuten so, die weniger als 10 Jahre programmieren. :)

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Gruffalo
25.05.2016, 15:41

Das ist nun wirklich nicht schwer.

1.

$array[] = 'test';

2.

echo file_get_contents($filename);

3.

$db = new PDO($dsn, $username, $password, $options);

4.

foreach ($array as $key => $value) { }

1

Eine Programmiersprache zu beherrschen (Syntax) macht keinen guten Programmierer aus. Zum "erfolgreichen" Programmieren gehören noch viele weitere Sachen dazu.

Hier einige Stichpunkte:

- Arbeiten nach bestimmten Design Patterns
- OOP (Klassen und Vererbung)
- Unit Testing
- Namespaces
- Lambda Funktionen
- Closures
- PHP Frameworks
- Interfaces

Wenn du mit diesen Begriffen was anfangen kannst und damit auch schon gearbeitet hast, bist du auf dem besten Weg.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von mrhashpipeotto
25.05.2016, 13:26

Das alles sind immer noch Basics

0

Naja, was verstehst du unter erfolgreich ? Privat ein paar nette Projekte entwickeln ? Als Programmierer arbeiten ? Eine große Firma gründen ?

Jetzt mal von einem normalen IT Job ausgehend : 

Eine Ausbildung als Fachinformatiker ist das Mindeste, ein Informatik Studium sogar noch besser. Programmieren an sich ist ja nur die Spitze des Eisbergs; wenn man Code für kommerzielle Anwendungen schreibt, muss dieser möglichst sauber sein (damit andere ihn später nachvollziehen, erweitern, testen können). Außerdem besteht die Hauptaufgabe eines Software Entwicklers darin, Lösungsideen für Problemstellungen zu entwickeln (den eigentlichen Code zu schreiben ist ja nicht sonderlich anspruchsvoll). Dazu kommt dann noch viel Arbeit im Team und so (Projekt Managment Fähigkeiten). Die Programmiersprachen die du kannst sind dem AG letztendlich recht egal, da du dich auf lange Sicht eh selbstständig fortbilden musst.

Also falls du Programmierer werden willst, kann ich echt nur zur Ausbildung/Studium raten, da du ansonsten Probleme haben wirst, deine Fähigkeiten nachzuweisen.

Wie gut du programmierst, weis ich nicht. Ich hab deinen Code nicht gelesen.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von fluffiknuffi2
25.05.2016, 13:06

den eigentlichen Code zu schreiben ist ja nicht sonderlich anspruchsvoll

Das kommt immer darauf an. Klar für die Website von Fridas Friseursalon wird das wohl gelten. Für die KI für autonomes Fahren nicht unbedingt.

0
Kommentar von fluffiknuffi2
25.05.2016, 13:09

Die Programmiersprachen die du kannst sind dem AG letztendlich recht egal, da du dich auf lange Sicht eh selbstständig fortbilden musst.

Nein, das ist nicht richtig. Klar das mag für einige AG / Stellen gelten, das bezweifle ich nicht. Aber als allgemeingültige Aussage stimmt das sicher nicht. Wenn du einen JavaScript-Profi für eine Webapplikation wie sagen wir den Spotify Web-Player entwickeln lassen möchtest, dann wirst du sicherlich darin erfahrene Entwickler bevorzugen vor C-Entwicklern die bisher Industrieroboter programmiert haben. Denn die müssten sehr viel Zeit investieren um sich mit der Sprache und vor allem dem Ökosystem vertraut zu machen. Da gibt man dann eher demjenigen den Vorzug, der das schon kann.

0

Es kommt nicht drauf an ob du gut Coden kannst, wenn du viel Geld damit verdienen willst. Es kommt darauf an, dass du Ideen hast, diese umsetzen kannst und ein Team um dich bilden kannst. Nr dann gelingt ein großes Projekt und nur dann kannst du wirklich viem verdienen.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Gruffalo
25.05.2016, 01:11

Ich kann doch auch für andere mit guten Ideen arbeiten, oder?

0
Kommentar von fluffiknuffi2
25.05.2016, 13:11

@JanyoOoO: Zum richtig reich werden ja sicher, aber man kann auch als Angestellter sehr gut verdienen. Gehälter um die 100.000 € brutto/Jahr sind jedenfalls grundsätzlich möglich und ich würde das schon als "viel Geld" bezeichnen. Je nach Lebensstil ist der Porsche jedenfalls machbar. 

Der durchschnittliche Angestellte Software-Entwickler verdient aber natürlich weniger. Aber immer noch durchaus ordentlich.

0

Heutzutage sollte man das zumindest an einer Fachhochschule studiert haben, um das ganze Leben lang damit über die Runden zu kommen. Sonst ist man bei dem schnellen Wandel der Branche ganz schnell weg vom Fenster.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Gruffalo
25.05.2016, 01:10

Wieso?

0

Ich würde gerne wissen ob ich ein guter Programmierer bin

Das können wir dir nicht sagen. Wäre das hier eine seriöse Plattform würde ich sagen: Link zum XING-Profil dann wissen wir mehr. Aber das lass besser bleiben. Die offensichtliche Frage ist: Was kannst du? Deine Aussage

Im Moment beschäftige ich mich am meisten mit PHP, MySQL und Javascript

ist sehr vage. Das kann alles und nichts heißen. Da brauchen wir schon mehr Details um eine Beurteilung abgeben zu können.

Beispiele:

- Welche Frameworks (Angular JS, Laravel, etc.) kennst du und wie gut?

- Welche CMS (WordPress etc.) ?

- Hervorzuhebende Erfahrung mit irgendwelchen Bibliotheken? (z. B. jQuery)

- Schon mit Node.js beschäftigt?

- Erfahrungen mit welchen Tools? (NPM, Composer, Grunt, ...)

- Erfahrungen mit CSS-"Erweiterungen" wie LESS/SASS etc.?

- Bist du up-to-date? PHP 7? ECMAScript 6?

- Erfahrung mit Server-Administration?

- Schon mal was von Agilen Methoden gehört?

- OOP?

- Design Patterns? Allgemein, wie schaut es mit deinem Wissen bezüglich Architektur/Design aus?

- und so weiter.


wie viel ich so verdienen könnte

Kommt darauf an. Als PHP-, als JS- oder als Webentwickler? (Bzw. Frontend vs Backend). Ist leider schwer zu sagen. Ich glaube man fängt als PHP-Entwickler mit durchschnittlich 35.000-37.000 € Brutto/Jahr an (als Angestellter). Es gibt aber viele Einflussfaktoren. Kann daher für das Individuum auch mehr oder weniger sein. Auch wichtig: Strebst du eine Ausbildung oder ein Studium an? Nach oben ist dann vieles möglich... 40-50k oder natürlich auch mehr... Bis zu 60k sind sicherlich machbar nach entsprechend vielen Jahren Berufserfahrung. Aber da wird es dann individuell. Und vielleicht arbeitest du irgendwann auch als Freelancer statt als Angestellter?

Und: Möchtest du erst mal einen Nebenjob auf 450 Euro Basis? Oder direkt Vollzeit? Und möchtest du als Junior einsteigen oder ohne diese Einschränkung? Die Anforderungen sind natürlich dementsprechend unterschiedlich, die Chancen auf einen Job aber auch.

Also ich kann programmieren

Ja nur auf welchem Level? Ein paar Basics zu lernen ist nicht schwer. Sich mit all den (historischen und aktuellen) Architekturfragen auseinanderzusetzen und mit den Hintergründen der Programmiersprachen ist etwas anderes. Da hat man als Durchschnittsmensch immer was, das man noch nicht gelernt hat.


ich würde gerne wissen wie ich im Vergleich zu anderen dastehe

Wie gesagt we need more infos. (Btw wie schaut's mit deinen Englischkenntnissen aus?) Außerdem auch auf welchem Level du dich vergleichen willst. Was bist du derzeit? Schüler, Auszubildender, Student, berufstätig aber nicht als Programmierer? Und in welchen Bereichen. Ich z. B. kann ein wenig JS aber mir ist absolut klar, dass ich da ziemlich limitiert bin. Ist aber okay denn mein Schwerpunkt liegt nun mal auf PHP / Backend. Mich mit professionellen JS-Frontend-Entwicklern zu vergleichen wäre daher ein Vergleich von Apfel & Birne.


Antwort bewerten Vielen Dank für Deine Bewertung

Du MUSST C# und/oder C++ beherrschen. Sonst kannst du das vergessen. Aber PHP ist doch schon ganz gut. wenn du unter GNU/Linux programmieren willst MUSST du bash beherrschen und viele Befehle für die Konsole auswendig wissen.


Visual Studio ist ein sehr gutes (und kostenloses) Tool um unter Windows zu programmieren. Du darfst aber kein Geld für deine Werke verlangen, wenn du dies benutzt. Dann musst du bestimmte Lizenzen kaufen, und die kosten ca. 5000€ aufwärts.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Stunter
25.05.2016, 00:42

Programmieren muss nicht nur für Desktop-PCs sein. Man kann auch mit PHP und JS sehr weit kommen.

0
Kommentar von Stunter
25.05.2016, 00:44

Außerdem ist Visual Studio nicht kostenlos. Es gibt eine Express Version, diese ist sozusagen eine Demo. Die Vollversionen kosten allerdings bis zu 16 000€.

0
Kommentar von Gruffalo
25.05.2016, 00:46

SharpDevelop ist kostenlos für C# und mit C# hab ich auch schon gearbeitet ist aber schon etwas her.

0
Kommentar von fluffiknuffi2
25.05.2016, 13:14



Du MUSST C# und/oder C++ beherrschen



Wie kommst du denn auf die Idee? Das ist nicht richtig. PHP/JS/Webentwickler sind ganz normale Berufe mit guten Jobchancen und ordentlichen Einkommensmöglichkeiten, auch wenn sicherlich andere Programmiersprachen mehr Gehalt versprechen. Und um diese Berufe gut auszuführen musst man weder C# noch C noch C++ beherrschen.

0
Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von grtgrt
26.05.2016, 12:35

Wer ein guter Software-Entwickler werden möchte, der sollte wissen:

Es komplett im Selbststudium zu schaffen, ist extrem schwierig. Man sollte wirklich mit einem Studium der Informatik beginnen, denn nur hierdurch wird man "richtig eingenordet" und nur so ist die Einstiegsschwelle in den Beruf (wenn man dort gut bezahlt werden möchte) relativ einfach zu überwinden.

Danach sollte man einige Jahre in einen Softwarehaus arbeiten mit dem Ziel, als Programmierer in unterschiedlichen Projekten die typischen Schwierigkeiten der Software-Entwicklung und geeignete Methoden, ihnen zu begegnen, kennen zu lernen.

Schon in dieser zweiten Phase - d.h. schon sehr früh - gilt dann aber ganz grundsätzlich, was sehr schön und absolut zutreffend auf Seite http://blog.cindypotvin.com/every-programmer-is-self-taught/ gesagt wird: Every Programmer is self-taught (in dem Sinne, dass er sich ständig selbst weiterzubilden hat).

WICHTIG auch:

Software-Entwickler zu sein (z.B. Anwendungsentwickler) bedeutet weit mehr, als nur Code zu schreiben oder zu testen: Man muss dann schon auch in der Lage sein, große Anwendungssysteme zu konzipieren, zu spezifizieren und zu dokumentieren. 

Nur etwa 15% aller Arbeiten, die notwendig sind, eine neue Anwendung (für jemand anders) zu entwickeln, sind reine Programmierarbeit.

Aus Sicht des Auftraggebers ist dieser Prozentsatz noch deutlich kleiner, denn zu dem Zeitpunkt, zu dem er neue Software erstmals zu verwenden sucht, finden sich darin meist noch zahlreiche, bislang unentdeckte Fehler und Schwächen. Bis die meisten davon behoben sind, kann Monate dauern und bei allen Beteiligten viel Ärger verursachen.

Mit der Größe einer (wirklich umfangreichen) Anwendung steigt schnell die Wahrscheinlichkeit, dass sie selbst nach dem ursprünglich geplanten Projektende noch scheitert.

0

Baue eine künstliche Intelligenz mit oben genannten Sprachen, dann wirst du erfolgreich. (Ironie off)

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Stunter
25.05.2016, 00:43

Warum scheint niemand zu verstehen, dass man auch mit PHP und JS erfolgreich sein kann? Im Ernst Leute, Antworten wie diese könnt ihr euch auch gleich sparen.

2

Das kommt natürlich darauf an, wie gut du bist. Sprich: wie gut verstehst du die Programmiersprache? Wie gut kannst du sie? Wie gut/schön ist dein Code? Und so weiter...

Du könntest ja mal ein Beispiel schicken, dann kann ich dir mehr sagen. :)

 ~ Stunter

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Gruffalo
25.05.2016, 00:44

Was willst du denn haben?

0

Was möchtest Du wissen?