Die Sache ist doch relativ einfach: es gilt Angebot und Nachfrage. Eine Firma sucht Personal für einen bestimmten Zweck, mit dem gewisse Anforderungen an den Arbeitnehmer einhergehen. Ganz grundsätzlich kann man sagen, dass man attraktiver für eine Firma ist, je besser man diese Anforderungen erfüllt. Andererseits mangelt es in diesem Bereich am Angebot, d. h. a) viele Firmen können es sich nicht leisten, wählerisch zu sein und b) Firmen konkurrieren untereinander um die Gunst des Personals. Gute Ausgangslage also.
Mit "Java auf dem Desktop" ist man für viele Firmen nicht die Traumbesetzung, weil man in Dich investieren werden muss. Trotzdem kann (bzw. muss) man davon ausgehen, dass Du die erforderlichen Konzepte (OO, funktionale Programmierung, deklarative Programmierung) beherrschst (oder zumindest halbwegs kannst) und das ist doch schon mal was. Gefragt sind auch bestimmte Soft-Skills, schließlich musst Du über Anforderungen sprechen können, sie verstehen, analysieren und umsetzen, Du musst mit anderen Leuten zusammenarbeiten können usw.
Für Web-Anwendungen sollte man weitere Kenntnisse haben. Das sind nicht nur die APIs wie Spring Boot oder Java/Jakarta EE. Eine Web-Anwendung ist anders als eine simple Desktop-Anwendung: das fängt schon mit der Architektur an. Außerdem musst Du im Web ggf. viele User parallel bedienen können, möglicherweise weißt Du im Voraus nicht, wie viele User an der Anwendung hängen werden. Auch etwas anders ist, dass man es mit Request-Response-Cycles zu tun hat. Plötzlich spielen Dinge wie Encoding, Netzwerk, Security eine weit größere Rolle als das auf dem Desktop der Fall ist (es gibt z. B. im Bereich der WaWis Leute, die haben bis heute nichts von Zeichensätzen gehört und dieses "Jott-Son" (Originalton) muss man sich auch erstmal im Detail ansehen....)
Was Backend/Frontend betrifft: das bezieht sich auf unterschiedliche Bereiche einer Anwendung. Analog dazu präzisieren Begriffe wie "Backend-Entwickler" lediglich den (primären) Aufgabenbereich eines Entwicklers.