Individuelle Softwareentwicklung
Unsere agilen Entwicklungsteams sind darauf spezialisiert, in einem komplexen Umfeld anspruchsvolle IT-Systeme zu realisieren. In enger Zusammenarbeit mit dem Kunden entstehen in kurzen Zyklen Systeme, die leistungsfähig, verlässlich, flexibel und sicher sind. Die Grundlage sind durchdachte Software-Architekturen und eine passend ausgestaltete Infrastruktur.
Agile Entwicklungsprozesse à la SCRUM erfordern nicht nur eine ausgereifte Build- und Deployment-Infrastruktur sondern auch das passende “Mindset” und die nötigen “Skills” im gesamten Entwicklungsteam.
Um die Effizienz und die Qualität der Entwickungsteams zu maximieren und die Abstimmung mit unseren Kunden zu optimieren, verzichten wir grundsätzlich auf “Outsourcing” oder “Nearshoring”.
Wir sind überzeugt davon, dass Entwicklerstundensätze bei den Gesamtkosten einer Individual-Softwareentwicklung nur eine sehr untergeordnete Rolle spielen. Viel entscheidender ist, wie schnell und vor allem zielsicher eine produktionstaugliche Lösung tatsächlich entsteht. Nach unseren Erfahrungen trennt sich hier sehr schnell die Spreu vom Weizen.
- Für die Zusammenarbeit im Team setzen wir auf einen Git-Workflow mit Merge Requests und Peer Reviews.
- Die einzelnen Entwickler haben Vorgaben wie “SOLID”, “Clean Code” und “Test Driven Development” längst verinnerlicht.
- Bei Continuous Integration und Deployment arbeiten wir mit GitLab CI bzw. Jenkins. Aufgrund vielfäliger Zielumgebungen für unsere Softwaresysteme setzen wir hierbei zunehmend auch Docker-Lösungen ein.
- Für statische Code Analyse verwenden wir Tools wie SonarQube.
Obwohl unsere erfahrenen Entwickler in der Regel ein sehr breites Spektrum an Programmiersprachen, Frameworks und Tools beherrschen, haben sich bei 4Soft nicht zuletzt aufgrund der langjährigen Erfahrungen im wesentlichen folgende Schwerpunkte herausgebildet:
Java & Friends
Java und seine Frameworks beherrschen wir seit der ersten Stunde. In Projekten setzen wir Java überwiegend im Backend für die Entwicklung nachhaltiger Informationssysteme ein. Neue Java UIs gestalten wir fast ausschließlich mit JavaFX.
Als Experten kennen wir uns insbesondere mit folgenden Frameworks und Technologien bestens aus:
- Java-Basis-APIs (inkl. JAXB, NIO sowie alle neuen Java8-Features)
- Spring (inkl. Spring Boot)
- JPA-Implementierungen (u.a. Hibernate, EclipseLink)
- UI-Frameworks (insb. Swing, Eclipse-SWT, JavaFX)
- XML-Technologien (XSL, XQuery, Formatting Objects)
- Datenbanken (insb. Oracle, MySQL, PostgreSQL)
- Build-Systeme (insb. Maven, Gradle)
C# & .NET
Auch in der Windows-Welt fühlen wir uns seit Jahren zuhause.
Wie im Java-Umfeld liegt auch hier unser Schwerpunkt eher auf der Entwicklung leistungsfähiger und zuverlässiger Server-Anwendungen, die vom Microsoft IIS gehostet werden.
Vor allem in folgenden Frameworks und Technologien können wir mit unserem Expertenwissen unterstützen:
- .NET-Framework (inkl. ASP.NET MVC, LINQ & Entity Framework, WPF)
- Verarbeitung von MS-Office-Dokumenten (Open XML SDK)
- IoC Container (Castle Windsor)
- Datenbanken (insb. SQL Server, Oracle)
- _Build-Systeme (insb. MSBuild, NuGet)
HTML5 & Mobile
In fast allen aktuellen Projekten realisieren wir das User Interface mittlerweile durch moderne Web-Technologien. Das sieht nicht nur fantastisch aus und fühlt sich intuitiv an sondern ist, dank Responsive Design, auch für alle Gerätegattungen dynamisch anpassbar und in höchstem Maß portabel.
Gerne untersützen unsere Experten Ihre Organisation insbesondere in folgenden Technologien: