Auch wenn's etwas spät kommt...
Ist eine Programmierer-Spezialisierung nur auf HTML sinnvoll und gefragt?
Nein. HTML ist wie bereits gesagt keine Programmiersprache und reicht in allen Fällen nicht aus, um moderne Websites oder -applikationen zu erstellen. Zudem ist reines HTML-Wissen keine Kunst, das kann man auch per Baukasten-Prinzip zusammenklatschen. Kritisch wirds dann erst bei den relevanten Themen...
Es gäbe da ja sicher gefragte Bereiche wie responsive HTML (welche gäbs eigentlich noch?).
...wie Responsive Design, Barrierefreiheit, Validität/Crossbrowserkompatibilität etc. Da du nach "gefragter" Spezialisierung fragst, geh ich davon aus, dass es um einen Job geht. Die gewünschten Berufsbilder seitens der Unternehmen sind gerade in diesem Bereich nicht so genau abgesteckt, da kommt's dann letzten Endes auf die Stellenbeschreibung an. Es können Designer gefragt sein, die Layouts und Grafiken erstellen und auch in der Lage sein müssen, es in HTML & CSS herunterzuschreiben. Üblicherweise ist aber mehr der Frontendentwickler gefragt. Der muss die o. g. Punkte umsetzen und dazu im Mindesten programmieren können (es muss nicht genau einer der üblichen Verdächtigen wie Javascript oder PHP sein. Wichtig ist, dass du die Grundlagen beherrschst und dich in neue Sprachen reinfinden kannst. Websites können ja auch per asp oder sonstewas umgesetzt sein. Oder es werden Templatesprachen wie smarty oder twig eingesetzt, mit denen du arbeiten musst - in allen Fällen musst du grundsätzlich mit der Ausgabensteuerung und Schleifen klarkommen, in den Rest kann man sich einarbeiten). Daneben sind auch oft Kenntnisse in bestimmten CMS wie Typo3 gefragt oder in Frameworks wie jQuery, Bootstrap usw. Es kommt nur noch selten vor, dass Websites plain heruntergescriptet werden.
C++ und Konsorten brauchst du in dem Fall nicht. Es schadet wie gesagt nicht, überhaupt programmieren zu können. Wenn die Kenntnisse mit C++ gesammelt wurden, okay. Dann solltest du mit PHP keine eklatanten Schwierigkeiten haben.
Wie sind bei Aufträgen in der Richtung meistens die Anforderungen?
Dazu müsste erstmal "die Richtung" definiert sein. Ich kann mal einen Beispielauftrag beschreiben, den meine Kollegin meistens kriegt, die wohl irgendwie in die Ecke Frontentprogrammiererin gestellt werden könnte.
Ziel: Kunde möchte eine neue Website, technische Details werden von anderen/uns geklärt. Domain registrieren und System (z. B. Wordpress) sowie Datenbank aufsetzen macht meistens jemand anderes. Nicht immer.
PSD-Layout liegt vor. An guten Tagen gibt es auch Infos darüber, wie zum Beispiel eine Slideshow im Header aufgebaut werden soll; in den meisten Fällen eher nicht. Da spielt man dann ein paar Tage Pingpong mit dem Kunden/Designer oder macht es erstmal irgendwie und hofft, dass es am Ende gefällt (klingt ernüchternd? ha...).
Kollegin setzt also das Layout um. Bei Drittsystemen wie Wordpress ist dann oftmals die Entscheidung zu treffen, ob man ein bestehendes Theme nachinstalliert und bearbeitet (damit man nicht bei 0 starten muss) oder ein neues erstellt. Grundlegende Kenntnisse in Wordpressthemes sind also in dem Fall unerlässlich; wenn sie noch nicht vorliegen, muss man zusehen.
Bei der Umsetzung ist darauf zu achten, dass der Quelltext valide ist. Das wird also mindestens einmal am Ende geprüft.
Weiterhin werden bekannte Best Practises beachtet, zum Beispiel ein bestimmter Aufbau der CSS-Datei, bestimmte Klassennamen etc. Ziel ist hierbei, Lesbarkeit (irgendwann wird jemand anderes an den Quellcode ranmüssen), Wartbarkeit und möglichste Bugfreiheit zu gewährleisten. Firmeninterne Standards, sofern vorhanden, müssen natürlich ohnehin eingehalten werden.
Damit ein bisschen Performance gutgemacht wird, werden vorliegende Grafiken hinsichtlich Dateigröße optimiert.
Spielereien wie Slideshows und Lightboxes werden überwiegend per jQuery realisiert.
Ein umfassender Browser/Devices-Test wird durchgeführt (responsive Design, läuft die Slideshow auch auf dem Handy und sieht dabei noch gut aus...).
Möglich, dass ich jetzt was vergessen habe.
Alternativ soll sie z. B. das Frontend für eine Eigenentwicklung umsetzen, die im Symfony2-Framework geschrieben ist. Hierfür muss sie also die Struktur von Symfon2 kennen und mit der Templatesprache twig zurechtkommen. Daneben ist auch ein, zwei Mal ein Befehl auf der Konsole nötig.
wie z.B. Bezahlabläufe in einem Shop macht ein anderer. Oder MUSS man sowas meist auch liefern?
Also die Kollegin nicht. Das würden wir dann machen. Das kommt aber letzten Endes auf die Aufgabenbeschreibung im Arbeitsvertrag an. Wenn man wie ich Mädchen für alles ist, dann setzt man den Server auf, installiert sein Zeug, entwickelt die Anwendung und macht dazu noch die Frontendumsetzung.
Deine Fragen (bis auf HTML) kann man also pauschal nicht beantworten, das hängt von dem Unternehmen und deren Nachfrage ab. Es gibt nicht DEN Baukasten, den man mitbringen muss, um eine Stelle in dem Bereich zu bekommen. Was halt allgemein zu empfehlen ist: Grundlagen der Programmierung, etwas Erfahrung in populären Systemen (CMS genauso wie Frameworks) und den Bock, sich in neue Sprachen/Systeme einzuarbeiten. Letzteres halte ich fast für das Wichtigste, aber damit allein kannste bei Bewerbungen nicht so punkten...
Sehe jetzt erst, dass du explizit Freelancer angesprochen hast. Da ich jetzt nicht einsehe, meinen Text zu löschen, werfe ich mal in den Raum, dass Freelancer sich ebenso (oder gar mehr) flexibel zeigen und ähnliche Voraussetzungen erfüllen müssen.