Einstiegsgehalt als PHP-Entwickler mit abg. Informatikstudium

Die Frage ist wohl eher, was jeweils erwartet wird.

"Stupides" programmieren oder mitentwicklen von neuen Lösungen. Beim einen kann jeder, der sich mit der Sprache einigermassen auskennt mitwirken. Beim Anderen gibt es durchaus noch Wissen welches hilfreich sein kann. Wissen über MVC, Design Pattern etc...

Dieses Wissen lehrt man u.a. auch in einem Studium und dies kann auch von Vorteil sein. Wobei ich nicht sagen, will, das jemand ohne Studium dieses Wissen nicht haben kann. Aber dieses Wissen wird für alle Sprachen von Vorteil sein, von PHP über Java, Ruby, Python usw...
 
thecain schrieb:
Beim Anderen gibt es durchaus noch Wissen welches hilfreich sein kann. Wissen über MVC, Design Pattern etc...

Ich kann mir nicht vorstellen, dass man in einer Ausbildung zum FIAE nichts über Design Patterns lernt. Und das was wir diesbezüglich im Studium "gelernt" haben, waren 3-4 Design Patterns einmal copy & paste mäßig anwenden. Solch ein elementares Thema wurde bei uns so dermaßen im Studium "hingerotzt" und nur ganz nurz angeschnitten.
 
derdevil100 schrieb:
Gute Frage. Aber warum findet man beispielsweise für Java (= Java Enterprise Edition) ausschließlich Stellenausschreibungen, welche ein Studium vorraussetzen bzw. warum verdient man in diesem Bereich in etwa 40k€ Einstiegsgehalt?
Selbe Frage, andere Sprache. Das kannst du auf allerhand Sprachen adaptieren. Zu weiten Teilen ist es schlichtweg der fest sitzende Glaube, dass der "Zettel" etwas bedeutet. Da der Glaube an den Wisch im JEE-Umfeld viel tiefer sitzt als im PHP-Umfeld, sind da die Gehälter für Akademiker halt auch höher.

thecain schrieb:
"Stupides" programmieren oder mitentwicklen von neuen Lösungen.
Ein Entwickler mit praktischer Erfahrung kann beides. Informatik ist doch grundsätzlich die Frage nach dem passenden Algorithmus.

Beim Anderen gibt es durchaus noch Wissen welches hilfreich sein kann. Wissen über MVC, Design Pattern etc...
Und du meinst, ein FIAE hat nie was von MVC gehört? Du glaubst, ein Bachelor ist der einzige, der mal was von Prototyping oder dem Wasserfallmodell gehört hat?
Ich bin weder das eine noch das andere, und trotzdem musste ich mich mit MVC auseinander setzen. Die Aufgabe war: "Hier haste Magento, modifier mir mal Aspekt soundso." Tja... Magento basiert auf Zend, Zend ist ein MVC-Framework. Schon musst du dich mit MVC befassen.
Oder: Ich arbeite extrem viel mit Contao. Ohne jetzt zu wissen, was sich die Entwickler dabei ursprünglich gedacht haben, sieht das für mich am Ende arg nach Active Record aus.
PHP:
$objNews = \NewsModel::findByPk(5); 
$objNews->title="Ein Titel"; 
$objNews->save();

Aber dieses Wissen wird für alle Sprachen von Vorteil sein, von PHP über Java, Ruby, Python usw...
Eben, und über dieses Wissen verfügt ein Entwickler mit praktischer Ausbildung eben genauso wie so n blinder Theoretiker frisch von der Schulbank.
 
Bei PHP Entwicklung und Informatik-Studium bietet es sich doch insbesondere an, dass du dich auf Sicherheit spezialisierst. Du solltest doch mit Mathe gequält worden sein, also benutzt das auch. Ein Fachinformatiker, ohne Abitur, hat von Mathe keine Ahnung.

Schau dir AES,SHA,MD5,etc. an, implementiere es, versteh die Mathematik, finde Stärken/Schwächen.

Wenn dich jemand fragt: Sollte man mit PHP die Benutzerpasswörter als SHA-1 Hash abspeichern? Dann solltest du 3 Vorteile für SHA1 kennen und 3 Nachteile. Außerdem 3 Alternativen und Verbesserungsvorschläge, alles begründbar natürlich. Dadurch erkennt man Profis.

Das gleiche auch bei Angriffe... lerne SQL-Injections, XSS, etc. geh zum 31C3, der in wenigen Tagen startet, etc.

Dann bist du auch 70-100k EUR wert.
 
Valhal schrieb:
Schau dir AES,SHA,MD5,etc. an, implementiere es, versteh die Mathematik, finde Stärken/Schwächen.

Wenn dich jemand fragt: Sollte man mit PHP die Benutzerpasswörter als SHA-1 Hash abspeichern? Dann solltest du 3 Vorteile für SHA1 kennen und 3 Nachteile. Außerdem 3 Alternativen und Verbesserungsvorschläge, alles begründbar natürlich. Dadurch erkennt man Profis.

dafür musst du keine Krypto-Vorlesungen besucht haben, dafür reicht google...
Und es ist verdammt vermessen anzunehmen, man würde selbst Krypto-Schwächen in MD5/SHA1 erkennen. Da haben viel klügere Köpfe als man selbst Jahre daran gearbeitet um mal (halbwegs) brauchbare Wege zu finden um diese Algorithmen etwas zu schwächen.

Ne Security-Spezialisierung hat so gut wie gar nichts mit Krypto zu tun, da gibts vllt 1-2 solche Vorlesungen. Der Rest ist mehr so BSI Grundschutz, ISO 27000er Reihe und viele weitere Theorie.
SQL-Injection, XSS und Co. wirst du da auch nur am Rande hören, das ganze ist in 10min erklärt da kein Stück schwer/komplex, nur wird eben heute immernoch soviel gefuscht, dass es immernoch Relevanz hat obwohl beides total einfach zu vermeiden ist.
 
@ice-breaker
Hier geht es um Software Entwicklung und nicht um Security Consulting oder ähnliches. Lerne den Unterschied. Die meisten wissen eben nicht wie man sicher PHP entwickelt und genau deswegen gibt es ja die Sicherheitslücken. Übrigens ist es sehr schwer sicher PHP zu entwickeln.

SQL-Injection und Co lernt man leider nicht in 10min. Auch nicht in einem Monat... so billige Beispiele wie bei Wikipedia sind nicht das Maß der Dinge. Leute die es richtig drauf haben können jeden kleinen Programmierfehler als Tür benutzen und z.B. WAF/IDS umgehen.

Sowas lernt man sowieso nicht in Vorlesungen.

Man soll auch nicht Fehler in Algorithmen, die es seit 10 Jahren gibt, finden, sondern nur den Algorithmus verstehen. Nur dann findet man Vor- und Nachteile...
 
Valhal schrieb:
Wenn dich jemand fragt: Sollte man mit PHP die Benutzerpasswörter als SHA-1 Hash abspeichern? Dann solltest du 3 Vorteile für SHA1 kennen und 3 Nachteile.
Wozu? Der clevere PHP-Entwickler nimmt die Crypt-API und lässt das Ding machen. Jeder, der halbwegs aktiv in der Szene ist, weiß, dass das in 99% der Fälle der sicherste Weg ist.

Das gleiche auch bei Angriffe... lerne SQL-Injections, XSS, etc.
Weder XSS noch SQL Injection sind ein spezifisches PHP-Problem. Den Bullshit kannst du in jeder Sprache verzapfen. Und in jeder Sprache lautet die lapidare Lösung dafür: Escapen, escapen, escapen!

Valhal schrieb:
Die meisten wissen eben nicht wie man sicher PHP entwickelt und genau deswegen gibt es ja die Sicherheitslücken. Übrigens ist es sehr schwer sicher PHP zu entwickeln.
Ach Mumpitz. Ein Techn. Assistent, der frisch aus der Schule kommt, kennt die Probleme vielleicht noch nicht. Aber spätestens nachdem man 1-2 Foren durchgeblättert oder GUTE/AKTUELLE Tutorials gelesen hat, wird das alles überbewertet.
Ja, Lücken passieren. Siehe die Drupal-Lücke im Herbst. Aber nein, da waren keine Idioten dran. Das Ding war einfach so tief versumpft, dass es erst beim 1000sten Blick aufgefallen ist.

SQL-Injection und Co lernt man leider nicht in 10min. Auch nicht in einem Monat...
Man lernt aber in wenigen Minuten, wie man sie vermeidet.
Triviale Möglichkeit A: mysql_real_escape_string(). Hilft gegen fast alles.
Optimale Möglichkeit B: Prepared Statements. Hilft garantiert.

Ich muss, als Entwickler, nicht wissen, wie genau SQL Injection funktioniert und wie man unter welchen Umständen welche Strings konkatenieren muss, um evtl. zum Erfolg zu kommen. Ich muss nur wissen, dass mich der konsequente Einsatz von PDOs mit Prepared Statements zuverlässiger schützen als eine Lümmeltüte vor Tripper.
Und auch PHP Object Injection lässt sich leicht vermeiden, wenn man sich der Problematik einmal bewusst geworden ist und bei der Verwendung von unserialize() Vorsicht walten lässt oder für die Übertragung/Speicherung von komplexen Datentypen gar nicht erst mit Serialisierung arbeitet, sondern mit JSON.
 
Zurück
Oben