Web Developer Roadmap, brauche ich das alles?
Also, ich würde gerne Projekte aufbauen und mir ein einkommen generieren, Passiv oder auch mit Homeoffice Jobs, wo ich dann Weltweit dran Arbeiten kann.
Roadmap: https://roadmap.sh/frontend
Mal ne frage zu der Roadmap....muss ich das echt alles lernen um an Jobs zu kommen, es ist echt viel und echt anstrengend, immer nur lesen, Zahlen, code, boar strengt an und ich weiß echt nciht ob ich das durchhalte, ich mache es um an eventuelles gutes Geld zu kommen um endlich meine wahren Träume Leben zu können.....aber die Zeit tickt mir davon und ich werde älter und irgendwie komme ich nur im Schneckentempo vorran.
Vielleicht sollte ich es sein lassen?
Danke Leute.
MFG
5 Antworten
Definitiv muss man davon nicht alles können, generell ist dieses Diagramm gar nicht schlecht, aber viele der Blöcke zeigen verschiedene Alternativen, von denen man sich eine aussuchen sollte.
Ich arbeite seit einigen Jahren als Webentwickler, wenn ich das Diagramm mal so durchgehe, kann ich folgende Dinge abhaken:
Das erste Drittel sind tatsächlich Basics, die sollte man alle drauf haben (oder bei den Netzwerk-Sachen zumindest wissen, was es bedeutet).
Privat benutze ich npm, in der Firma benutzen wir yarn als Package Manager, unterscheiden sich aber kaum.
Vue.js ist für mich das wichtigste Framework für Webapps.
Tailwind habe ich angeschaut und für doof befunden.
CSS schreibe ich meist entsprechend BEM und mit Sass.
Insbesondere in der Firma benutzen wir ESLint und Prettier, um den Code von verschiedenen Leuten einheitlicher zu machen.
Als Build Tool benutze ich Vite, das ist auch das Standard-Build-Tool für Vue.
Für normale Webseiten ist automatisiertes Testing nicht wirklich anwendbar, und bisher hatte ich noch keinen Bedarf, mich damit wirklich damit zu beschäftigen, steht aber auf der To-Do Liste.
Die Web-Security-Basics sollte man auf dem Schirm haben, aber vor allem sollte man Technologien einsetzen, die von sich aus sicher sind.
Den ganzen Block unter "Web Components" finde ich irrelevant, wenn man ein Framework wie Vue benutzt.
Mittlerweile benutze ich fast nur noch TypeScript anstelle von JavaScript, da man damit meiner Meinung nach stabileren und verständlicheren Code schreibt.
Server Side Rendering ist ein interessantes Thema, da z.B. Nuxt auf Vue basiert, war es auch nicht besonders schwer, sich damit vertraut zu machen.
Bei GraphQL verstehe ich nicht ganz, warum das in der Grafik so platziert ist. Hab ich noch nie gebraucht und hab auch wenig Interesse daran.
An sich mag ich das Konzept von Progressive Web Apps, aber teilweise ist der Browser Support hier so unterschiedlich, dass ich es selten benutze.
Die Browser-APIs setzen in der Regel alle auf JavaScript auf, d.h. es sind auch keine komplett anderen Technologien, man muss nur wissen, wie man sie anwendet. Davon habe ich z.B. schon Storage, Web Sockets und Service Workers verwendet.
Wenn man im Vue-Ökosystem ist, ist das Thema Static Site Generation auch nur einen Schritt entfernt. Geht auch mit Nuxt und damit mit Vue.
Aus Web Apps Mobile Apps oder Desktop-Apps zu machen ist auch ein interessantes Konzept, Electron habe ich mal ausprobiert, aber in vielen Fällen sehe ich keinen Vorteil gegenüber einer Webapp oder PWA.
Mit Node.js arbeite ich auch oft, aber da geht es dann Richtung Backend und Fullstack.
Was mir auf dem Diagramm noch fehlt, sind Content Management Systeme. Für Webapps ist das hier alles schön und gut, aber wenn eine etwas Content-lastigere Webseite gefordert wird, die auch von Nicht-Programmieren gepflegt werden können soll, braucht man in der Regel ein CMS. Ein bekanntes CMS, das ich aber absolut verachte, ist Wordpress. Ich benutze hier primär Typo3, oder Redaxo für einfachere Seiten.
Man braucht selten alle Technologien gleichzeitig für ein einzelnes Projekt, daher muss man auch nicht alles können, um mit einem Projekt starten zu können. Man sollte aber einen Überblick über die verfügbaren Technologien haben um abzuschätzen, welche man braucht.
Gerade beim Thema Frontend-Frameworks gehen die Meinungen teilweise stark auseinander. Ich bin offensichtlich sehr überzeugt von Vue. Es ist einfach zu erlernen, kann alles, was ein Frontend-Framework können muss, hat ein solides Ökosystem, und ich mag die Grundstruktur von Vue-Komponenten.
React ist ebenfalls an sich ein gutes Framework, ich persönlich mag es aber nicht. Es ist vor Vue erschienen und schnell viele Entwickler überzeugt, weshalb es rein zahlenmäßig mehr React-Entwickler und Webseiten gibt.
Dennoch hat auch Vue ein ordentliches Wachstum hingelegt und wird auch von großen Firmen eingesetzt. Auch wenn es nicht der "Marktführer" ist, ist es definitiv eins der wichtigsten und beliebtesten Frameworks, und ich finde es wie gesagt anfängerfreundlicher als React.
Die "Reise" als Webentwickler ist allerdings sehr individuell, es gibt viele verschiedene Technologien die man für verschiedene Arten von Projekten braucht. Am wichtigsten sind daher die Basics, denn wenn man die drauf hat, dann kann man sich auch relativ schnell in neue, darauf basierdende Technologien einarbeiten.
Die Web-Security-Basics sollte man auf dem Schirm haben, (...)
Dasselbe gilt gleichermaßen bzw. mehr noch für rechtliche Sachen, vor allem mit Blick auf den European Accessibility Act (EAA) der im Juni 2025 in Kraft tritt. Auch in Bezug auf NetzDG, DSGVO und Co. sollte man nicht blind unterwegs sein.
Gerade Quereinsteiger die vielleicht erst einmal so Kunden und Projekte suchen, damit ganz schnell auf die Schnauze fallen können. Also im Grunde alles was irgendwie mit Sicherheit, rechtlichen Vorgaben und der Gleichen zutun hat.
Ein bekanntes CMS, das ich aber absolut verachte, ist Wordpress.
Mir ist WordPress zwar vertraut, jedoch auch kein großer Fan davon. Was jedoch eine feine Sache ist, wenn man WordPress bloß über dessen REST-API einsetzt. Ich bin jedoch selber eher mit Django, Payload und Strapi unterwegs.
(...) sehe ich keinen Vorteil gegenüber einer Webapp oder PWA.
Electron macht eigentlich nur dann Sinn, wenn man den eigenen Kram isoliert laufen lassen möchte. Der größte Haken daran ist halt immer, dass man unnötig große Pakete ausrollen muss. Daher auch eher bei dir mit Webapp oder PWA.
Server Side Rendering ist ein interessantes Thema, da z.B. Nuxt auf Vue basiert, war es auch nicht besonders schwer, sich damit vertraut zu machen.
Ich würde eigentlich immer Nuxt anstelle von Vue vorziehen, sofern man sich das manuelle Routing sparen möchte. Muss aber jeder für sich selber wissen und hier nur kurz als ergänzende Zusatzinformation dazuschreiben wollte.
Bei GraphQL verstehe ich nicht ganz, (...)
GraphQL eignet sich vor allem für komplexe Projekte (SPAs, Microservices) mit mehreren Clients (Web, Mobile, IoT) und einer einzigen API-Route. Dadurch entsteht u.a. weder Over- noch Underfetching. Das ist aber nichts, was ich direkt am Anfang empfehlen würde, solange man noch nicht sicher im Sattel sitzt.
Dennoch hat auch Vue ein ordentliches Wachstum hingelegt
Ich finde Vue (Nuxt) ganz nett und habe auch schon öfters damit gearbeitet. Einem Quereinsteiger dennoch eher React oder Angular empfehlen würde. Zumindest mit Blick auf Jobaussichten und das Angebot an offenen Stellen. Eine Garantie gibt es zwar nie, erhöht aber ggf. die Chance etwas zu finden.
LG medmonk
Du brauchst definitiv nicht alles davon. Teilweise steht ja auch, dass du auswählen sollst ("pick a framework"). In der Praxis entscheidet es sich manchmal durch konkrete Anforderungen, also Learning on the Job.
Was du auf jeden Falls brauchst, sind HTML und CSS, auch ein wenig JavaScript (und/oder TypeScript) und ein Grundverständnis der Grundlagen des Internets (HTTP Requests, Fehlermeldungen) und üblicher Kollaborationswerkzeuge (Git und GitLab oder GitHub, alles andere wie BitBucket inzwischen eher die Ausnahme).
Vermeide die "Tutorial-Hölle" (zu lange lernen, anstelle mit praktischer Umsetzung zu beginnen) und denke dran, dass du nicht alles wissen musst (YAGNI - "you ain't gonna need it")
Hi, also HTML, CSS und JS kann ich schon einiger maßen. Okay dann mach ich mich mal an HTTP und GITHUB ran. Danke das motiviert mich! Hast du noch eine Idee, wo ich dann nach Jobs suchen kann?
Du musst nicht alles können und dennoch setzt der Beruf kontinuierliches Lernen voraus. Alleine schon deshalb, weil Anforderungen sowie Technologien im ständigen Wandel sind und man nur mit Grundlagenwissen nicht weit kommt. Du hast es als Quereinsteiger ohnehin schwerer, um dich gegenüber anderen behaupten zu können.
Es besteht zudem ein großer Unterschied darin, ob man sich in einzelne Sprachen und Frameworks zurechtfindet oder diese auch gescheit und sicher einsetzen kann. Ein paar Punkte wurden dir ja bereits vom User Ingosteinkeseo genannt. Was eine Option sein kann und ggf. die Chancen erhöht, wenn du gewisse Zertifizierung erwirbst.
Du solltest dir ein Portfolio mit realen Projekten aufbauen, damit man deine Arbeit nachvollziehen kann. Im besten Fall auch das ein oder andere Gruppenprojekte, damit man sieht, dass du auch im Team arbeiten kannst. Eine Garantie ist und gibt es nicht. Es sind jedoch Möglichkeiten und Wege, um mehr auf sich aufmerksam zu machen.
Die Projekte sollten zudem auf GitHub einsehbar sein und nicht aus irgendwelchen Tutorials bestehen, die du einfach mit „Copy & Paste” zusammenkopiert hast. Vertiefe dein theoretisches Wissen in dem du es immer wieder praktisch anwendest. All das braucht Zeit und dir ohne Anstrengung und Fleiß nichts in den Schoß fallen wird.
Hi Trismegisto,
die Roadmap ist nur ein Beispiel, wie man das Lernen organisiert. Ich finde es aber sehr irreführend und manche Abschnitte daraus hinterfrage ich. Nicht alle Technologien daraus solltest du oder musst du erlernen, wenn du Frontend-Entwicklung betreiben möchtest. Um ein gesichertes Nebeneinkommen indem Bereich zu erhalten, brauchst du fortgeschrittene Fachkenntnisse im Bereich HTML, CSS und JavaScript. Wörter wie IIFE, MVC, SPA oder Redux. Das sind alles Programmiertechniken, Softwarearchitekturen und Lösungsansätze die man von Grund auf kennen sollte.
Hier mein Roadmap:
- Arbeiten mit Daten und Dateien unter Windows/Linux/Mac
- Arbeiten mit einem IDE(VSCode)
- Grundlagen von HTML
- Grundlagen von CSS
- Grundlagen von JavaScript
- JS: DOM-Manipulation und Formular-Validierung
- JS: Objekte, Klassen und Array-Funktionen
- JavaScript: Arbeiten mit Async/Await
- JavaScript: Arbeiten mit Fetch und Ajax
- JS: Arbeiten mit Web Components
- SPA: SPA-Aufbau und JS-Router
- JS: Software-Architektur insbesondere verschiedene Modelle wie MVC-Modell
- Git, Gitlab, Github und wie man es selbst hosten kann
- JS: Arbeiten mit unterschiedlichen Frameworks wie React, Vue.js, Angular
Musst du alles lernen? Ne. Aber einiges davon.
Und vom nur vom Lesen lernst du nix. Lesen ist noch das einfachste vom Ganzen. 😂
Hör auf vom schnellen Geld zu träumen sonst wird das garantiert nix. Arbeite mal n paar Jahre damit, dann kannst du mal überlegen ob du das irgendwie machen kannst während du die Welt bereist.