Всё завистит от количества работников.
Если помещаются в память, то попробуйте
java-string-similarity иначе поисковый сервер.
И вообще, все метрики основанны на сравенении 1:1. Тоесть если у вас есть 1К работников, это 1К проверок.
Для скорости нужен поисковый индекс, он не обязательно должен быть полноценным поисковым движком, но принцыпы
Inverted_index должен реализовывать (Example:
Inverted_index#Java).
Так как вы ищете не по словам, а в словах, то нужна более точная единица, чем слово, а именно
N-gram.