100% remote ganz Deutschlandmöglich
Connection4You ist eine junges Startup, dass mithilfe eines Persönlichkeitstests besser passende Jobangebote vermitteln möchte.
Gegenstand des Projektes ist die Entwicklung der Softwarekomponente, die sich um die Berechnung eines Scores für die Kompatibilität von Bewerbern zu Jobangeboten kümmert. Dabei haben verschiedene Faktoren einen Einfluss auf den Score, z.B. die Entfernung, die Übereinstimmung der Skills und auch die Ergebnisse des Persönlichkeitstests.
Da mit dem Wachstum der Plattform eine hohe Zahl an Bewerbern mit einer hohen Zahl an Inseraten gematcht werden muss, wird das Projekt von Anfang an mit hohen Anforderungen an die Performance und Skalierbarkeit entwickelt
BCasted ist eine Modelagentur mit Sitz in Tübingen, die in Baden-Württemberg und ganz Deutschland Models und Schauspieler vermittelt.
Aufgrund gravierender Performance und Stabilitätsproblemen und nicht stemmbarer, individueller, neuer Softwareanforderungen an die alte Joomla Webseite, sollte diese durch eine neu entwickelte Anwendung ersetzt werden.
Hauptanforderungen an die neue Seite sind:
Die neue Anwendung besteht aus einem Kotlin EE Backend mit einer MongoDB Datenbank und einem Vue3 Frontend. Diese laufen alle containerisiert mit Docker. Die alte Seite war eine Joomla Seite mit Sobipro Plugin für die Datenverwaltung sowie MySQL als Datenbank.
Aufbau einer CI/CD Serverlandschaft.
Dazu wird ein privates Netzwerk an Servern beim Serveranbieter Hetzner verwendet. Die privaten Server sind nicht im öffentlichen Netzwerk erreichbar, können jedoch über einen öffentlichen Jumpserver erreicht werden. Der Jumpserver ist per Wireguard VPN erreichbar und mit einem DNS Server ausgestattet, sodass dadurch die privaten Server nur für berechtigte erreicht werden können.
Es werden vor allem Kotlin EE und Laravel Backends und Vue3 Frontend Docker Container gebaut und deployet werden in verschiedene Umgebungen (Dev, Integration und Live). Weiterhin noch die Überwachung des Betriebs, sowie Logs anschauen über Jenkins
Verwendetes Tooling:
Jenkins
Bitbucket
Docker
Verdaccio
Projekt in Vollzeitanstellung
Entwicklung einer Architektur und Implementation für eine komplexe Engine zur Ausführung von Regeln die durch Events getriggert werden. Events kommen dabei von außen durch Message Driven Beans, jedoch gibt es auch zeitbasierte Regeln und Kombinationen aus beiden. Z.B. ändert sich ein Feld per Event, die Actions soll jedoch erst 2 Stunden nach einem anderen Feld ausgeführt werden, welches sich jedoch auch dynamisch ändern kann. Damit die Erweiterbarkeit gewährleistet ist, wurden Felder per Java Reflection gelesen und geschrieben, sodass die Codebasis mit kaum Anpassungen auch für andere fachliche Bereiche angewendet werden kann.
Die Regeln (Bedingung, Parameter und Actions) werden mit EasyRules definiert und in einer Datenbank gespeichert, die vom Backend geladen werden, somit können Regeln verändert werden, ohne das ein Backend deploy nötig ist
Projekt in Vollzeitanstellung
Refactoring von Bestandscode und Erhöhung der Code Qualität mithilfe von Sonar Lint und Sonar Qube. Entfernen von Code Duplikaten und Verbesserung der Architektur in eine leicht erweiterbare und zukunftsfähige Form, durch zusammenfassen von ähnlichen Bestandsklassen unter Verwendung moderner Java Features wie Generics und Lambdas. Code Basis konnte dadurch trotz großen Erweiterungen in der Funktionalität ca. halbiert werden und die Deploy Rate deutlich erhöht werden
Senior Software Engineer
100% remote ganz Deutschlandmöglich
Connection4You ist eine junges Startup, dass mithilfe eines Persönlichkeitstests besser passende Jobangebote vermitteln möchte.
Gegenstand des Projektes ist die Entwicklung der Softwarekomponente, die sich um die Berechnung eines Scores für die Kompatibilität von Bewerbern zu Jobangeboten kümmert. Dabei haben verschiedene Faktoren einen Einfluss auf den Score, z.B. die Entfernung, die Übereinstimmung der Skills und auch die Ergebnisse des Persönlichkeitstests.
Da mit dem Wachstum der Plattform eine hohe Zahl an Bewerbern mit einer hohen Zahl an Inseraten gematcht werden muss, wird das Projekt von Anfang an mit hohen Anforderungen an die Performance und Skalierbarkeit entwickelt
BCasted ist eine Modelagentur mit Sitz in Tübingen, die in Baden-Württemberg und ganz Deutschland Models und Schauspieler vermittelt.
Aufgrund gravierender Performance und Stabilitätsproblemen und nicht stemmbarer, individueller, neuer Softwareanforderungen an die alte Joomla Webseite, sollte diese durch eine neu entwickelte Anwendung ersetzt werden.
Hauptanforderungen an die neue Seite sind:
Die neue Anwendung besteht aus einem Kotlin EE Backend mit einer MongoDB Datenbank und einem Vue3 Frontend. Diese laufen alle containerisiert mit Docker. Die alte Seite war eine Joomla Seite mit Sobipro Plugin für die Datenverwaltung sowie MySQL als Datenbank.
Aufbau einer CI/CD Serverlandschaft.
Dazu wird ein privates Netzwerk an Servern beim Serveranbieter Hetzner verwendet. Die privaten Server sind nicht im öffentlichen Netzwerk erreichbar, können jedoch über einen öffentlichen Jumpserver erreicht werden. Der Jumpserver ist per Wireguard VPN erreichbar und mit einem DNS Server ausgestattet, sodass dadurch die privaten Server nur für berechtigte erreicht werden können.
Es werden vor allem Kotlin EE und Laravel Backends und Vue3 Frontend Docker Container gebaut und deployet werden in verschiedene Umgebungen (Dev, Integration und Live). Weiterhin noch die Überwachung des Betriebs, sowie Logs anschauen über Jenkins
Verwendetes Tooling:
Jenkins
Bitbucket
Docker
Verdaccio
Projekt in Vollzeitanstellung
Entwicklung einer Architektur und Implementation für eine komplexe Engine zur Ausführung von Regeln die durch Events getriggert werden. Events kommen dabei von außen durch Message Driven Beans, jedoch gibt es auch zeitbasierte Regeln und Kombinationen aus beiden. Z.B. ändert sich ein Feld per Event, die Actions soll jedoch erst 2 Stunden nach einem anderen Feld ausgeführt werden, welches sich jedoch auch dynamisch ändern kann. Damit die Erweiterbarkeit gewährleistet ist, wurden Felder per Java Reflection gelesen und geschrieben, sodass die Codebasis mit kaum Anpassungen auch für andere fachliche Bereiche angewendet werden kann.
Die Regeln (Bedingung, Parameter und Actions) werden mit EasyRules definiert und in einer Datenbank gespeichert, die vom Backend geladen werden, somit können Regeln verändert werden, ohne das ein Backend deploy nötig ist
Projekt in Vollzeitanstellung
Refactoring von Bestandscode und Erhöhung der Code Qualität mithilfe von Sonar Lint und Sonar Qube. Entfernen von Code Duplikaten und Verbesserung der Architektur in eine leicht erweiterbare und zukunftsfähige Form, durch zusammenfassen von ähnlichen Bestandsklassen unter Verwendung moderner Java Features wie Generics und Lambdas. Code Basis konnte dadurch trotz großen Erweiterungen in der Funktionalität ca. halbiert werden und die Deploy Rate deutlich erhöht werden
Senior Software Engineer