Ein brandneues Jobportal mit Jobsuchmaschine für Visidarbi.lv

Aivis Brodins
Aivis Brodins
Geschäftsführer bei CV-Online Latvia GmbH
„Wir arbeiten seit 2016 mit Arkbauer zusammen. Für eine der Websites der CV-Online-Gruppe ist Arkbauer seit 2017 unser einziger IT-Anbieter: das Jobportal mit Jobsuchmaschine Visidarbi.lv. Wir wollten für Visidarbi.lv ein neues System entwickeln, das reibungsloser und stabiler läuft, sicherer ist und die flexible Einbindung neuer Funktionen ermöglicht, wenn unser Unternehmen wächst. Das Team von Arkbauer verfügt über ein breites Know-how und umfassende Erfahrung bei der Entwicklung derartiger Systeme und konnte unsere Anforderungen und Geschäftsziele genau nachvollziehen. Wir haben vollstes Vertrauen in ihre Arbeit und wussten gleich, dass wir mit ihnen den richtigen Partner für dieses Projekt gefunden haben. Das neue System wurde pünktlich zur anfangs vereinbarten Zeit fertiggestellt. Das Stellenportal ging auch in Litauen online, dort unter dem Namen Dirbam.lt. Die Kommunikation mit dem Arkbauer-Team während und nach dem zentralen Entwicklungsprozess – insbesondere mit Janis Sakars – verlief völlig reibungslos und effektiv. Wenn ein Problem auftrat, wurde es umgehend gelöst. Wir sind mit dem Ergebnis sehr zufrieden und können Arkbauer als Partner für die IT-Entwicklung definitiv weiterempfehlen.“

Das Portal Visidarbi.lv lief schon einige Zeit auf veralteter Software und hat die ursprünglichen Anforderungen aufgrund von Mängeln beim technischen Design und der Implementierung nie ganz erfüllt. Wir haben das Projekt vom vorherigen Anbieter übernommen und eine komplett neue, moderne und effektive Lösung geschaffen.

Über Visidarbi

Visidarbi.lv ist seit 2008 aktiv und wird vom führenden Online-Recruitment-Dienstleister Lettlands, CV-Online Latvia, betrieben. Es ist eines der beliebtesten und am schnellsten wachsenden Jobportale in Lettland und bietet täglich Zugriff auf Tausende Stellenangebote, die von den beliebtesten Job- und Karriereportalen, Anzeigenportalen und großen Unternehmenswebsites stammen.

Die meisten der Besucher von Visidarbi.lv suchen nach Stellenangeboten für Fachkräfte, Assistenten, Kundendienstpersonal oder niedrig qualifizierte Arbeitskräfte in Riga, bedeutenden Städten und Regionen in Lettland oder im Ausland. Abhängig von der jeweiligen Stadt oder Region bietet Visidarbi.lv die meisten Stellenangebote.

Die Herausforderung

Eine der wichtigsten Anforderungen des Kunden lautete: Wir sollten mehr als nur Programmierer sein – unsere Aufgabe war es, gleichzeitig als Innovatoren die Führung in der Projektentwicklung zu übernehmen. Zum Glück ist es genau das, was wir tagtäglich für all unsere Kunden und Partner tun.

Die Haupterwartungen des Kunden waren eine herausragende Performance und ein komplett responsives und anpassungsfähiges Design für die wachsende Zahl mobiler Nutzer. Die UIX sollte unkompliziert und intuitiv sein, tägliche manuelle Datenmapping-Arbeiten vermieden werden und die Lösung sollte auch in anderen Ländern einfach angepasst und implementiert werden können.

Außerdem mussten wir den Großteil der Daten aus dem alten System migrieren und den Übergang auf das neue System so reibungslos wie möglich gestalten.

Die Lösung

Wir beschlossen, das System auf Grundlage von Microservices zu entwickeln, um seine zukünftige Flexibilität zu gewährleisten und für jede Komponente die bestmöglichen Technologien zu nutzen. Im Kern beruht es auf einem Symfony-Framework, einem der beliebtesten PHP-Frameworks, das häufig für webbasierte Anwendungen genutzt wird. Außerdem setzten wir das schnelle und leistungsfähige Python-Framework Scrapy ein, um Daten aus den externen Stellenanzeigenportalen zu extrahieren.

Scrapy hat sich als sehr zuverlässig und flexibel erwiesen und ermöglicht die sehr schnelle Extraktion großer Datenmengen. Somit können unsere Parser die Daten nahezu in Echtzeit liefern.

Die Jobsuche ist fraglos das wichtigste und meistgenutzte Feature des ganzen Systems und muss somit schnell, effizient und intuitiv funktionieren. Reine SQL-Abfragen an die Datenbank würden diese Anforderung nicht erfüllen und so suchten wir nach einer Lösung genau für diesen Zweck: einer Suchmaschine. Die Hauptanforderung an diese Suchmaschine war die inkrementelle Datenindizierung – die Möglichkeit, einen einzelnen Datensatz zu indizieren, wenn er verändert wurde, anstatt wiederholt alle Daten erneut zu indizieren. Wir haben unsere Auswahl zunächst auf Algolia und Elasticsearch eingeschränkt, die beiden beliebtesten und funktionsreichsten Systeme auf dem Markt. Schließlich entschieden wir uns für die selbst gehostete Lösung Elasticsearch, um gegenüber der cloudbasierten Lösung Algolia zusätzliche Kosten zu sparen.

Um den manuellen Arbeitsaufwand bei der Zuordnung von externen Stellenanzeigen zu den Ländern und Städten im System zu vermeiden, haben wir einen automatischen Mapping-Mechanismus implementiert. Dieser Mechanismus basiert darauf, dass Regionen als geometrische Formen, als Polygone, dargestellt werden. Ein Land wird so in eine Vielzahl von Polygonen eingeteilt, die jeweils als geographische Koordinaten dargestellt werden.

Mithilfe der Geocoding-API von Google wandelten wir in Textform vorliegende Adressen in geografische Koordinaten um, indem wir ihnen Breiten- und Längengrad zuwiesen. Geo-Koordinaten sind genaugenommen Punkte auf einer Landkarte. In Kombination mit Polygonen können wir also feststellen, wohin ein Punkt gehört. Hierzu nutzen wir den Punkt-in-Polygon-Algorithmus.

Technologien

PHP7, Symfony, Python, Scrapy, Elasticsearch, MariaDB, Redis, Nginx, REST

Die Ergebnisse

Die bisher vorhandene Altsoftware wurde durch eine brandneue, moderne und stabile Lösung ersetzt, die den Anforderungen des Kunden sehr viel besser entsprach. Damit kann Visidarbi sowohl Jobsuchenden als auch Arbeitgebern einen deutlich verbesserten Service bieten. Das neue System läuft im Tagesgeschäft völlig ohne händisches Eingreifen.

Schon kurz nach Inbetriebnahme führten wir dasselbe System unter Dirbam.lt auf dem litauischen Markt sowie unter Otsintood.ee in Estland ein.

Screenshots

Sprechen Sie uns an!
Vorname
Nachname
Telefon
Die eingegebene Telefonnummer ist ungültig.
Botschaft*
Dieses Feld ist erforderlich.
preloader