---
Uruchomienie AI-wyszukiwania ofert pracy na Laravel i MySQL
Niedawno w naszej drużynie odbyła się dyskusja na Slacku na temat tego, jak uczynić wyszukiwanie ofert pracy bardziej trafnym dla kandydatów. Jeden z programistów zaproponował wykorzystanie AI do poprawy dokładności dopasowań, i postanowiliśmy, że to właśnie to, czego potrzebujemy. To rozwiązanie miało być zrealizowane na Laravel z użyciem MySQL jako bazy danych.
Dlaczego to było ważne
Istniejący mechanizm wyszukiwania nie spełniał potrzeb użytkowników: kandydaci często nie znajdowali odpowiednich ofert lub otrzymywali wyniki, które były nieadekwatne. To wywoływało niezadowolenie i obniżało zaufanie do naszej platformy. Skutki były poważne — spadek liczby odpowiedzi na oferty pracy i, w konsekwencji, zmniejszenie napływu kandydatów na strony /jobs i /for-candidates. Musieliśmy zrozumieć, jak wykorzystać AI, aby zmienić tę sytuację.
Problem w szczegółach
Wyszukiwanie ofert pracy często zwracało wyniki, które nie odpowiadały ani doświadczeniu kandydata, ani jego preferencjom. Na przykład jeden z użytkowników, mający doświadczenie w marketingu, otrzymywał oferty dla specjalistów technicznych. To nie tylko wywoływało niezadowolenie, ale także obniżało efektywność wyszukiwania. Naszym zadaniem było znaleźć sposób, aby uczynić wyszukiwanie bardziej inteligentnym i dostosowanym do potrzeb użytkowników.
Pierwsze próby
Zaczęliśmy od prostego podejścia — próbowaliśmy poprawić istniejący algorytm wyszukiwania, dodając kilka filtrów. Jednak to rozwiązanie nie przyniosło znaczących rezultatów. Szybko zrozumieliśmy, że nie wystarczy tylko poprawić filtrację. Nasz zespół zdecydował, że potrzebujemy więcej danych i bardziej złożonych algorytmów do przetwarzania zapytań.
Techniczne podejście
Ostatecznie wybraliśmy podejście oparte na uczeniu maszynowym, które pozwoliło nam wykorzystać dane o wcześniejszych interakcjach użytkowników z platformą do tworzenia bardziej trafnych rekomendacji. Zintegrowaliśmy bibliotekę do przetwarzania języka naturalnego (NLP), która analizowała CV i dopasowywała je do ofert pracy.
// Przykład kodu do przetwarzania zapytań
public function searchJobs($query) {
$results = Job::where('title', 'LIKE', '%' . $query . '%')
->orWhere('description', 'LIKE', '%' . $query . '%')
->get();
return $results;
}
Ten kod stał się częścią bardziej złożonego systemu, który brał pod uwagę nie tylko dopasowania tekstowe, ale także dane kontekstowe, takie jak preferencje kandydatów i aktywność na platformie.
Zmiany w produkcie
Po wdrożeniu nowego wyszukiwania zauważyliśmy wyraźne zmiany w doświadczeniu użytkowników. Kandydaci zaczęli otrzymywać bardziej trafne oferty pracy, co doprowadziło do zwiększenia liczby odpowiedzi na propozycje. Co więcej, otrzymaliśmy pozytywne opinie na stronach /for-candidates i /companies, gdzie użytkownicy zauważali, że teraz znajdują dokładnie to, czego szukali. Ta poprawa przyczyniła się także do zwiększenia liczby subskrypcji płatnych usług na stronie /pricing.
Czego się nauczyliśmy
- Prosta poprawa istniejącego algorytmu nie zawsze prowadzi do oczekiwanych rezultatów.
- Wykorzystanie danych o zachowaniach użytkowników pozwala stworzyć bardziej trafne algorytmy.
- Integracja NLP może znacznie poprawić jakość wyszukiwania.
- Ważne jest testowanie różnych podejść i nie bać się rezygnować z początkowych pomysłów, jeśli nie działają.
- Informacje zwrotne od użytkowników są kluczem do zrozumienia skuteczności zmian.
Co to oznacza dla kandydatów
Dla kandydatów oznacza to, że proces wyszukiwania ofert pracy stał się bardziej intuicyjny i efektywny. Możecie oczekiwać, że system wyszukiwania uwzględni wasze umiejętności i preferencje, proponując bardziej odpowiednie oferty. To znacznie skróci czas poświęcany na poszukiwanie pracy i zwiększy prawdopodobieństwo znalezienia idealnej propozycji.
Co to oznacza dla rekruterów
Rekruterzy zyskują nowe możliwości przyciągania odpowiednich kandydatów. Bardziej precyzyjne wyszukiwanie pozwoli im szybciej znajdować specjalistów, którzy spełniają ich wymagania. To oznacza, że będą mogli skuteczniej zapełniać oferty pracy i skracać czas potrzebny na znalezienie odpowiednich pracowników.
Następne kroki
Mimo osiągniętych sukcesów, nadal monitorujemy działanie nowego algorytmu. W przyszłości planujemy dodać więcej parametrów do analizy i poprawić przetwarzanie danych. Gdybyśmy mieli cofnąć się w czasie, poświęcilibyśmy więcej uwagi testowaniu w wczesnych etapach, aby uniknąć niektórych błędów. Jesteśmy pewni, że dalsze ulepszenia doprowadzą do jeszcze wyższego poziomu satysfakcji użytkowników i rekruterów. ---