Hot Take: Die Trennung von UI-Stack und Backend-Stack ist ein großer Grund, warum Softwarequalität die letzten Jahre abnimmt.

Gerade wieder eine Ausschreibung gesehen: Gesucht wird jemand mit Spring Boot Erfahrung, Angular / Typescript und Flutter.

Vielleicht bin ich ja auch ein bisschen langsam, aber Java, Spring Boot und das ganze Ökosystem sind komplex. Ich kann mir einfach nicht vorstellen, diese drei Technologien ähnlich tief zu verstehen und bei den Entwicklungen mitzuhalten

@javahippie Ist das nicht eher konsequent der völlig widersinnigen Entscheidung, diese Teams zu trennen?
@odrotbohm Da würde ich nachfragen wollen, was "Teams zu trennen" bedeutet. Front- und Backenddevs in zwei verschiedenen organisatorischen Einheiten? Oder die Skills in einem Team klar aufzutrennen?
@javahippie Siehe die andere Antwort an Nils und dich. Man will eigentlich keine separaten Teams, sondern Entwickelnde mit unterschiedlichen Expertisen. Als ich jung war ging das unter Schlagwort „Crossfunktionale Teams“ durch.

@odrotbohm @javahippie Das sehe ich tatsächlich anders. Für mich ist das UI Nutzer eines wohldefinierten Dienstes, der vom Back-End erbracht wird. Die Trennung finde ich nicht nur nicht problematisch, sondern extrem vorteilhaft für die Architektur.

Die Front- und Backend-Entwickler sollten organisatorisch trotzdem Teil eines crossfunktionalen Konstrukts sein, aber innerhalb dieses Konstrukts finde ich getrennte Entwicklung der Komponenten sehr vorteilhaft.

@zappes @odrotbohm @javahippie das man das aufteilt selbstverständlich sonnig, gerade im Sinne der Modularisierung. Will man ein völlig neues Frontend bauen, so braucht man nur dieses ändern. Geht ja darum, ob eine Person beide Bereiche entwickeln können sollte.

Dummer Vergleich: ein LKW-Mechaniker kann bestimmt auch PKW reparieren, aber ob das sinnvoll ist und dessen Expertise nutzt?

@comrad @zappes @javahippie Sorry, aber das hat absolut nichts mit Modularität zu tun. Wenn dein Business ist, jede zweite Woche das Frontend zu wechseln, bitte. Das JS Ökosystem hat da sicher seinen Beitrag zu dem Mindset beigetragen. Gern nochmal: *niemanden*, absolut *niemanden* außer Softwareenwicklende interessiert, mit welchem Stack irgendein Front- oder Backend gebaut wurde. Siehe dazu: https://www.youtube.com/watch?v=co3acmgP2Ng
Domain centric? Why Hexagonal, Onion and Clean architecture are answers to the wrong question by Oli

YouTube
@odrotbohm @zappes @javahippie den Enduser interessiert das natürlich nicht. Aber sich als Techniker muss die Wartbarkeit interessieren. Und da ist Modularisierung ein essentielles Tool.
@comrad @zappes @javahippie Richtig. Aber Layering ist das Gegenteil von Modularisierung. 🤷‍♂️