Wie gut muss man Programmieren können?

Senku

Cadet 4th Year
Registriert
Apr. 2013
Beiträge
104
Hallo,

ich habe eine Frage. Und zwar habe ich Informatik studiert und dort auch Programmieren gelernt z.B. C,C++,Python. Ich habe dort auch vermittelt bekommen wie Agile Softwareentwicklung funktioniert mit z.B. Scrum. Als ich jedoch mit meinem Studium fertig war und ich mich bei Firmen beworben habe wurde mir sehr oft gesagt, das die Programmierfähigkeiten nicht ausreichend sind die man vermittelt bekommt und das man mehr können muss. Könnt ihr mir daher sagen was man können muss wenn man sich auf eine Stelle als z.B. Python Programmierer bewerben möchte?

Oder wie man diese Fähigkeiten am besten bekommen kann wenn man wie schon gesagt im Studium das zwar gelernt hat aber nur immer in kleinen privaten IoT Projekten anwenden konnte?

Zu mir ich habe wie gesagt, Informatik Studiert arbeite jetzt als IT Administrator bei einer Stadt und denke über einen Wechsel in die Privatwirtschaft nach und da bei vielen Jobs hier in der Nähe nach Programmieren gefragt wird wollte ich mich mal informieren was man da können muss bzw. wie man das lernen kann.

Und ja das die Ansprüche von Job zu Job unterschiedlich sind kann ich mir denken. Nur geht es mir hier um die Grundlagen die man können sollte wenn nichts spezifisches dabei steht.
 
Wenn du bisher nicht wirklich Praxis Erfahrungen hast, dann kommen für dich die Junior-Positionen in Frage.

Auf was für Positionen hast du dich bisher beworben? Wie viel Berufserfahrung war da gefragt?
 
Senku schrieb:
Nur geht es mir hier um die Grundlagen die man können sollte wenn nichts spezifisches dabei steht.
Die Grundlagen hat man doch im Studium? Oder was verstehst du unter "Programmieren gelernt"?

Ich hab mit Java6 angefangen und neben dem Studium fürs Fraunhofer verteilte Systeme in Java entwickelt die Text-Mining betrieben haben. Da ging es um Netzwerk-fähig, Thread-Mgmt, Ram-Mgmt, verschiedene Patterns etc. Ich hab das 1 Jahr quasi Vollzeit gemacht und würde dennoch sagen, dass ich kein guter Entwickler war.

Ich finde, man muss als Entwickler die Sprache selbst komplett/zum Großteil beherrschen, also die Semantik und Syntax. Das ist die Grundlage bevor man sich Junior-Entwickler nennen kann. Und dann gehts an den Aufbau von komplexen Systemen. Das würde ich sagen, lernt man und muss man nicht beherrschen.
 
@_killy_ da das ganze schon so 4 bis 5 Jahr her war weiß ich nicht mehr was genau gefragt war aber ich weiß noch das dort meist nie Junior dranstand sondern immer nur z.B. Programmierer oder Entwickler. Auf Jobs wo gezielt nach Berufserfahung gefragt wurde hatte ich mich damals nie beworben weil ich wusste das ich die nicht habe. Aber manchmal waren das auch keine Entwickler/Programmierer Jobs sondern Sachen wo dann Berater oder was anderes dranstand und nur Sprache XY als Skill den man haben sollte erwähnt wurde.

@fishraven danke für die Infos das bestärkt mich darin mir einfach mal nochmal ein paar Youtube Tutorials durchzuarbeiten und mich dann vielleicht als Junior Entwickler zu versuchen.
 
@Senku
wenn Du die Fähigkeiten erlernen und vertiefen möchtest: suche Dir etwas bei inbs. bei kleinen und sehr kleinen Unternehmen.
Achte (leider) für die ersten 2-4 Jahre nicht auf das Gehalt, sei ehrlich mit dem was Du kannst und was Du möchtest. Du findest häufig insb. bei kleinen Unternehmen Menschen, die Dir gegenüber sitzen, die diese Ehrlichkeit bei entsprechender Bescheidenheit belohnen werden.
Python wird eher selten bei kleinen Unternehmen der Fall sein, häufig ist das Typescript/Java/PHP und co., sei Dir nicht zu schade Frontend (typischerweise React) machen zu wollen, das wird stark nachgefragt auch für die nächsten Jahre.
Häufig wirst Du mit Legacy-Kram (also Altprojekten) konfrontiert, beiss Dich einfach durch, das Lernen kommt nur durch die Anwendung Deiner Fähigkeiten. Das Profitieren davon kommt erst Jahre später.

Aber ich gebe Dir einen Tipp: überlege Dir wirklich, ob Du Entwickler sein möchtest, oder nur das Geld verdienen möchtest als Entwickler, in 20+ Jahren musst Du es immer noch wirklich möchten.
 
Zuletzt bearbeitet:
fishraven schrieb:
Ich finde, man muss als Entwickler die Sprache selbst komplett/zum Großteil beherrschen, also die Semantik und Syntax. Das ist die Grundlage bevor man sich Junior-Entwickler nennen kann.
full ack
fishraven schrieb:
Und dann gehts an den Aufbau von komplexen Systemen. Das würde ich sagen, lernt man und muss man nicht beherrschen.
diese System unterschieden sich so sehr, wie die Anforderungen auch, lerne einfach, wie man etwas baut, und insb. warum man das so baut, das wichtigste ist: frage die erfahrenen Kollegen, wenn es Dir etwas unklar ist
die Kommunikation ist der wichtigste Skill eines Entwicklers in einem Unternehmen, leider haben manche Entwickler schon mit sehr jungen Jahren die meisten Probleme damit, es beisst niemand (Ausnahmen gibts :) )
 
  • Gefällt mir
Reaktionen: Skysnake
@whtjimbo Danke für die Informationen und danke für den Hinweiß mit den kleinen Unternehmen.

Im Prinzip geht es mir aktuell darum, das ich nicht mehr IT Admin bei einer Stadtverwaltung sein möchte.
Ob ich dann IT-Berater werde Entwickler oder was auch immer ist mir aktuell relativ egal.
Wenn ich ehrlich bin würde ich auch lieber Berater oder IT-Admin als Entwickler werden aber ich hab einfach keinen Bock mehr auf öffentlichen Dienst von daher wollte ich einfach schauen das ich meine Programmierkenntnisse vorher aufpoliere damit ich mehr Möglichkeiten habe.
 
"Programmieren gelernt"... was hast du den im Studium gelernt? Die Syntax auswendig? Programmieren ist nur ein Werkzeug... die Berufsbezeichnung heißt "Softwareentwickler" und da hängt viel mehr dran als nur das "programmieren"

Ein Handwerker sagt ja auch nicht ich bin "Hämmerer" weil ich einen Hammer verwende... ein Hammer ist auch nur ein Werkzeug.
 
  • Gefällt mir
Reaktionen: Zerstoerer, Skysnake und p0wnd
Genau, wobei es schon einen gewissen Unterschied macht, ob ich jetzt PHP, Java, Abab oder Fortran60 programmiere.

Ob ich jetzt aber Bash, Python oder Perl nutze macht jetzt eher nicht mehr DEN Unterschied.

Es kommt halt am Ende vom Tag auch ganz klar darauf an, wie man selbst damit umgeht, was man kann und was man NICHT kann.

Ich habe z.b. in folgenden Sprachen produktiv gearbeitet, Bash, C, C++, Fortran, Java, Python CUDA, OpenCL, inline Assembler, OpenGL, R, Verilog und noch mehr.

Das ist sehr viel und natürlich kann ich keine dieser Sprachen perfekt. Das ist aber an dich ziemlich egal, da ich in jeder der Sprachen innerhalb von nem Tag oder zwei wieder so weit drin bin das ich Code refaktorisieren kann bzw sogar Bugs fixen kann. Auch ne neue Sprache lerne ich binnen Tagen/Wochen so weit das ich eben Code verstehen kann.

Da bin ich auch total ehrlich. Wenn die nen absoluten Spezialisten wollen dann sollen Sie jemand anderen suchen. Ich bin kein Programmieraffe, der alle Spezialfälle kennt usw. Wenn Sie mir aber etwas Zeit geben können die mir vorsetzen was Sie wollen ich arbeite damit. Daher auch meine Antwort auf die beliebte Frage, welche Sprache mir von all diesen am ehesten liegt und ich am liebsten verwende, ist meine Antwort: die, die das Problem am besten löst.

Wenn ich nur nen one time use Skript bauen muss ist bash toll. Wenn ich ne Simulation machen muss ist Fortran ganz schick. Wenn ich Datenanalyse machen muss mit schönen Graphen nehme ich gerne R.

Das kann man aber nur, wenn man keine Probleme mit unterschiedlichen Sprachen hat. Wenn man aber nur eine Sprache kann egal wie gut, und damit nur nen Hammer hat, dann sieht halt JEDES Problem aus wie nen Nagel ;)

Du musst dich halt klar fragen, WARUM will ich programmieren. Ohne die richtige intrinsische Motivation wird das nichts und diese intrinsische Motivation sieht man auch schnell in einem Bewerbungsgespräch.

Eigentlich lieber Admin seien zu wollen ist da ne GANZ schlechte Voraussetzung.

Vor allem heute macht man eher DevOps. Du hast mit Ansible etc also eigentlich mehr als genug Möglichkeiten in deiner täglichen Arbeit zu programmieren. Da stellt sich mir die Frage, warum machst du das nicht? Also was sind deine Aufgaben?

Wenn du keine Chance hast im Beruf aber es wirklich willst, wäre z.b. ein Commit für den Linux Kernel eine Aufgabe oder für ein andere großes Projekt mit ein paar 100k+ Zeilen Code. Wenn du das schaffst, dann sieht man, dass du dich da einarbeiten kannst wenn du willst.

Aber man muss wirklich sehen, dass du es willst und da habe ich so meine Zweifel nach dem was du schreibst
 
Skysnake schrieb:
Du musst dich halt klar fragen, WARUM will ich programmieren. Ohne die richtige intrinsische Motivation wird das nichts und diese intrinsische Motivation sieht man auch schnell in einem Bewerbungsgespräch.

Eigentlich lieber Admin seien zu wollen ist da ne GANZ schlechte Voraussetzung.
ja, ein Entwickler muss langfristig es schon wollen, und man kann als Entwickler ganz schlecht nach 20 Jahren sagen was anderes auszuprobieren für zwischendurch, man kommt danach kaum noch wieder rein

Skysnake schrieb:
Vor allem heute macht man eher DevOps. Du hast mit Ansible etc also eigentlich mehr als genug Möglichkeiten in deiner täglichen Arbeit zu programmieren. Da stellt sich mir die Frage, warum machst du das nicht? Also was sind deine Aufgaben?
DevOps haben den gleichen Stellenwert wie Entwickler, ohne DevOps müsste man sich als Entwickler den A*sch so aufreissen, dass sich dann noch mehr die Frage stellt, warum man das noch macht
das einzige Problem bei DevOp ist, dass häufig ganz starke Konkurrenz aus dem weltweiten und damit auch billigen Ausland herrscht, gerade DevOps kann man eher billig zukaufen
 
Zurück
Oben