Warum Java?

Unsere Experten verraten es Ihnen

Frank Köhne: Java ist nicht nur Programmiersprache, sondern ein Ökosystem, wenn nicht das größte Software-Ökosystem. viadee agiert zwar undogmatisch und unabhängig mit verschiedenen Technologien, aber die Java-Welt ist sehr oft die Grundlage der individuellen Software-Entwicklung bei unseren Kunden. Darauf gehen wir ein, um unsere Kunden sinnvoll unterstützen zu können.

Tobias Voß: Java ist gleichzeitig modern und etabliert. Aktuelle Trends werden laufend von der Java-Community aufgegriffen und in Frameworks für die breite Masse zur Verfügung gestellt, sodass Java den technologischen Wandel ermöglicht. Auf der anderen Seite sind Sprache, Tools und die Entwicklungsprozesse ausgereift und unternehmenstauglich.

Individuelle Java-Entwicklung – braucht man das noch?

Frank Köhne: Das ist eine Frage aus dem letzten Jahrzehnt. Grundsätzlich beobachte ich, dass HBR 2016 im Wesentlichen Recht hatte mit der Aussage, dass jedes Unternehmen, willentlich oder nicht, Wettbewerb mit Software-Mitteln austrägt. Häufig sind die Werkzeuge dabei sowohl das Customizing von Standardsoftware als auch das Entwickeln auf Java-Basis. Damit ist heute aber ein Entwicklungsprozess gemeint, der eher der Fertigbauweise von Immobilien ähnelt. Die Anzahl und Qualität von frei verfügbaren, ausgereiften Open-Source-Komponenten im Java-Ökosystem ist überwältigend.

Spätestens, wenn es darum geht, mehrere existierende Softwarekomponenten interagieren zu lassen, ist man schnell in der Java-Welt angekommen. Ich halte also die Frage für falsch – es geht nicht um ja oder nein, sondern um top-down vs. bottom-up und das Maß an Flexibilität und Sicherheit, das ein Unternehmen braucht.

Auch hier kann man aber ins Nachdenken kommen, ob nicht vielleicht etablierte Open-Source-Communities, an deren Stabilität auch viele Unternehmen ein Interesse haben, ein geringeres Risiko darstellen als die Abhängigkeit von einzelnen Software-Herstellern und den passenden Skills dazu auf dem Markt.

Tobias Voß: Unbedingt. Die Herausforderungen an Unternehmen steigen, sich den Kundenbedürfnissen anzupassen und insbesondere sich vom Markt abzuheben. Die Digitalisierung ist ein gutes Beispiel, die Unternehmen dazu zwingt, ihre Anwendungen zu modernisieren und ihren Kunden neue digitale Möglichkeiten und Kanäle anzubieten. Individuelle Java-Entwicklung ist eine gute Möglichkeit, schnell auf die Herausforderungen zu reagieren und individuelle Lösungen bereitzustellen. Nur wer besser und schneller als der Standard ist, hat hierbei einen Wettbewerbsvorteil.

Frank Köhne: Das Java-Ökosystem ist auch Grundlage für alle modernen BigData-Werkzeuge rund um Hadoop und Data-Mining. KI-Werkzeuge wie h2o.ai spielen die Vorteile der Java-Plattform sehr gut aus.

Was macht denn einen guten Java-Entwickler aus?

Frank Köhne: Der viadee-Stil setzt eine sehr breite Perspektive, einen gewissen Anspruch voraus. Wichtig ist das Interesse an einer guten Lösung, was das Interesse an den fachlichen Zusammenhängen und produktive Zusammenarbeit mit den Stakeholdern voraussetzt. Nur so funktionieren moderne Scrum-Teams gut.

Erst dann sind wir auf der technischen Ebene, die sehr schön von der Clean-Code-Bewegung beschrieben wird.

Tobias Voß: Der Begriff Entwickler greift mir hier zu kurz. Es geht heutzutage nicht mehr darum, fertige Konzepte umzusetzen, sondern mit breitgestreutem Fachwissen in der Lage zu sein, die fachlichen Anforderungen in interdisziplinären Teams mit der passenden Architektur und den richtigen Technologien in Software zu gießen. Dafür ist wesentlich mehr notwendig als das reine Programmiersprachenwissen. Diese Herausforderung reizt mich an der täglichen Projektarbeit, verlangt aber auch die Offenheit für neue Technologien und die Bereitschaft, sich ständig weiterzubilden.

Ansprechpartner

Dr. Frank Köhne

Dr. Frank Köhne

Tel: +49 251 777 77 0

Twitter: @viadeeJava

Tobias Voß

Tobias Voß

Tel: +49 251 777 77 0

Twitter: @tobiaslvoss

Wie viel davon bekommen Studenten in den Hochschulen vermittelt?

Frank Köhne: Die Hochschulen fokussieren natürlich zunächst die Grundlagen und die Arbeit allein. Wozu Design Patterns wirklich nützlich sind, was eine Build Pipeline ist und wie kritisch Methoden und Softskills später für den Erfolg sind, das erfahren Absolventen oft erst beim Berufseinstieg. Erfahrung machen bedeutet dann oft, die eigene „Trickkiste“ zu vergrößern, also für mehr typische Probleme typische Lösungen oder Fertigkomponenten zu kennen.

Tobias Voß: Die Grundlagen sind sicherlich vorhanden, aber das Wissen über die passende Architektur und Technologie lässt sich nicht theoretisch vermitteln, sondern die Erfahrungen dazu muss man in der Praxis machen. Unsere Arbeit ähnelt häufig der eines Übersetzers, der die fachliche Domäne verstehen muss, um sie technisch abzubilden. Das dazu notwendige Fachwissen kann man erst im Unternehmensalltag erwerben.

Wofür nutzen Sie Java?

Das Spektrum ist beeindruckend breit.

Wir transformieren die Verwaltungssoftware eines Versorgungswerks in eine moderne Anwendung, die eine umfangreiche Beratung der Versicherten ermöglicht, eine durchgängige Unterstützung der Prozesse bietet und so den Weg in das papierlose Büro ebnet.
[Technologie: Spring (Core, Data, Boot, Batch), vaadin, JasperReports, MS SQL Server, Tomcat]

Wir testen Migrationsprogramme in Host-Architekturen auf Basis EBCDIC durch Excel-Tabellen. Der Prozess – vom Upload der Testdaten bis zum Vergleich der Ergebnisse – ist vollständig automatisiert.
[Technologie: JRecord, Apache POI]

Wir bauen ESB-Architekturen auf, die viele einzelne RFID-bezogene Warenbewegungen zwischen fünf Systemen vermitteln.
[Technologie: IBM Websphere, JMS, Lobster, Oracle, Apache JMeter]

Wir (teil-)automatisieren Geschäftsprozesse über die gesamte Anwendungslandschaft eines Versicherungskonzerns und binden auch externe B2B-Partner in diese Geschäftsprozesse ein.
[Apache Camel, camunda BPM]

Wir dokumentieren die Performance einer Anwendung, ohne deren Source zu verändern.
[Autohotkey, Spring, Hibernate, MySQL]

Wir sorgen dafür, dass der Kunde im Supermarkt sehen kann, woher Fleisch stammt und wie es verarbeitet wurde.
[Technologie: JBoss AS, Seam, Angular, Hibernate, IBM Informix, Elasticsearch, MongoDB]

Wir testen automatisiert Prozesse über Anwendungsgrenzen hinweg, wie ein Mensch sie testen würde.
[Technologie: Spring, Tomcat, Sikuli, Selenium, Autohotkey]

Wir führen 1000 Testfälle in einer Stunde durch und dokumentieren die auch noch.
[Technologie: JUnit, Selenium, Autohotkey]

Wir haben SEPA bei einer Bank mit eingeführt, um den regulatorischen Anforderungen termingetreu gerecht zu werden.
[Technologie: JSF, Spring Web Flow, EJB, Apache, Axis2, WebSphere Portal Server]

Wir stellen eine Selfservice Plattform für die Schichtplanung von Callcenter-Agenten bereit. Auf Basis von gesetzlichen und fachlichen Regeln wird die optimale Schichtverteilung ermittelt.
[Technologie: SmartGWT, JBoss Drools, JBoss OptaPlaner]

Wir unterstützen das unternehmensweite Identitätsmangement durch die voll automatische Accountverwaltung innerhalb einer Callcenter Plattform.
[Technologie: Quartz Scheduler, Genesys SDK, Avaya System Management Service SDK]

Wir leisten Architekturberatung, wählen Komponenten aus und zeigen im Proof-of-Concept, wie sich heterogene IT-Landschaften per Messaging integrieren und unter Prozesskontrolle integrieren lassen.
[Technologie: Apache Camel, Camunda BPM]

Wir lösen Host-Nachtverarbeitungsprozesse durch moderne Lösungen ab, die sich leichter mit den modernen Teilen der Anwendungslandschaft verbinden lassen und pro CPU-Zyklus/Megabyte deutlich günstiger sind – auch Mitarbeiter mit den dafür notwendigen Kenntnissen lassen sich im Anschluss leichter finden.
[Technologie: Spring-Batch, Websphere, MQ-Series, DB2, Stonebranch]

Wir bewerten, wie ‚wohl sich einzelne Artikel in Filialen fühlen‘ und schlagen automatisch Umlagerungen vor, damit die Ware möglichst ohne Abschriften verkauft werden kann und dieser Prozess trotz Expansion kein größeres Team braucht.
[Technologie: JFuzzyLogic, Oracle DB, Spring, Apache Camel, vaadin]

Wir entscheiden, welcher Callcenter-Agent einen Anruf entgegennehmen sollte, damit der Kunde am Telefon direkt mit einer für sein Problem kompetenten Person sprechen kann.
[Technologie: BlazeAdvisor]

Wir stellen eine Plattform bereit, auf welcher der dezentrale Vertrieb seine Umsatzplanung machen kann, damit dies überall methodisch konsistent geschieht und ein automatischer Abgleich mit den späteren Ist-Werten einfach möglich ist (Limit-Controlling).
[Technologie: GWT, Oracle DB, Spring, Tomcat, Jasper]

Wir prognostizieren täglich, welche Warengruppen in welchem Shop wann in den kommenden drei Monaten verkauft werden, damit rechtzeitig nachgeordert werden kann – Feiertage und Co. werden einzeln berücksichtigt.
[Technologie: Rapid Miner, Apache Camel, Oracle DB]

Wir bauen mit an einem konfigurierbaren und integrierbaren CMS-System eines Online-Dienstleisters, der über Transaktionen durch sein CMS fast seinen gesamten Umsatz macht.
[Technologie: Jboss, DB2, MySQL, Spring, Hibernate, vaadin]

Wir stellen ein API Gateway zur Verfügung, um verschiedene Nutzergruppen und Kanäle einer Versicherung anzubinden. Das Gateway dient dazu, das interne Domänenmodell nutzergruppengerecht zu transformieren, eine Protokollübersetzung durchzuführen und den Querschnittsaspekt Authentifizierung/Autorisierung einheitlich zu lösen.
[Technologie:REST, JSON, JAX-RS, SOAP-Webservices, JAX-WS]

Aktuelle Blogbeiträge

Schon sehr viele IT-Projekte haben wir auf Basis der Java-Technologie erfolgreich realisiert. Und so große Expertise angesammelt. Das spiegelt sich auch im viadee-Blog wieder. Im Java-Blog finden Sie außerdem spannende Beiträge zu Themen wie „Clean Code“, JUnit oder Scrum.

zum Blog #Java

Unsere Lösungen,
ob Start-Up oder etabliertes Unternehmen

Business Process Management

Java

Testautomatisierung

Agile Methoden

Mobile- und Weblösungen

Business Intelligence