Guest blogger: Utilising artificial intelligence in the application process for ESCO competence



ESCO is the “European multilingual classification of Skills, Competences, Qualifications and Occupations”. The purpose of ESCO is to provide a description of various professions and the skills and competences needed in each profession.


When both the needs of employers and the competences of employees are defined in a language-independent manner, these different workplaces and employees can find one another across different borders. Gofore is involved in the development of Job Market Finland, which utilises the ESCO classification in, for example, the job search process.

Although such a classification is excellent in theory, its application can sometimes pose a challenge when it comes to classifying the skills of different individuals. For example, while a jobseeker may have a particularly versatile skillset, these specific areas of competence may have been left out of the ESCO classification or given names that are very difficult to find.

We decided to examine whether AI methods could be used to better find the skills that match the ones in the ESCO classification. In practice, this would mean using the text written by the user on their work history and competence to suggest the skills and competences included in the ESCO classification.

Starting off simple

When it comes to artificial intelligence applications, it usually pays off to start with something simple and then develop more complex models as you move along.

It should be noted here that the individual words in these texts are not treated as-is, but in shorter chunks. This is particularly important in Finnish, as the numerous inflections used in the language could otherwise have a noticeable impact on how the text is processed. In addition, it also helps reduce the effect that any random spelling errors could have on the success of the query process.

For example, we can provide the algorithm with some kind of input describing a particular competence and see what kinds of ESCO competences it finds (top three suggestions):

"Jakaa postia" (deliver mail)

  • kirjata postia (register mail)
  • käsitellä postia (handle mail)
  • hakea posti (collect mail)

So far, so good. Of course, the word “posti” (mail) helps point the algorithm in the right direction. Let’s try something different:

"Osaan auttaa pyörätuolin käytössä" (I can help people use a wheelchair)

  • neuvoa asiakkaita silmälasien käytössä (advise customers on maintaining optical products)
  • avustaa koneiden ja välineiden käytössä (assist equipment operation)
  • neuvoa asiakkaita uusien laitteiden käytössä (advise customers on new equipment)

In this case, the word “käytössä” (in the use of) now begins to dominate the search process, as the word “pyörätuoli” (wheelchair) does not appear in any ESCO competence.

More data with machine translation

Improving the search would be easy if the skills were described in a slightly more broad manner. In fact, each ESCO competence includes a short description that describes that particular competence. However, this information is only available in English and not in Finnish. Translating over 13,000 descriptive texts into Finnish would be a slow and expensive process, but perhaps an artificial intelligence solution could be of assistance in this case as well?

We ran a few experiments and found that Google’s popular automated translation service has become rather good at translating English text into Finnish:

Original description
Negotiate with the customers the precise terms at which the service will be sold
Machine translation
Neuvottele asiakkaiden kanssa tarkat ehdot, joilla palvelu myydään.

Original description
Various processing methods on precious metals such as gold, silver and platinum.
Machine translation
Eri jalometallien, kuten kullan, hopean ja platinan, käsittelymenetelmät.

Well, not every translation was absolutely perfect:

Original description
Put adhesive on plies by operating the cement stick on drum edge.
Machine translation
Pane liima kerroksiin käyttämällä sementtikeppää rummun reunalla. (Apply adhesive to the layers using a cement “keppä” on the edge of the drum.)

Original description
The joining of two pieces of metal together by deforming one or both so they fit into each other.
Machine translation
Kahden metallikappaleen liittäminen toisiinsa muuttamalla muotoaan yksi tai molemmat siten, että ne sopivat toisiinsa. (Joining two pieces of metal to each other by changing one’s shape or both so that they fit together.)

However, for our purposes, these little inaccuracies are of no concern since the machine-translated text is not displayed to the user and only used to help find the right skills and competences. Let’s run the previous example again and include the machine-translated descriptions in the AI’s teaching materials:

“Osaan auttaa pyörätuolin käytössä” (I can help people use a wheelchair)

  • neuvoa erikoisvälineiden käytössä päivittäisissä toimissa (instruct on the use of special equipment for daily activities)
  • antaa esteettömyysratkaisuihin liittyviä neuvoja (advise on environmental alterations)
  • erikoisvälineiden käyttö päivittäisissä toimissa (use of special equipment for daily activities)

Much better! Now the AI is able to link the word “pyörätuoli” (wheelchair) to special equipment and accessibility, as these words appear in the descriptions of the competences.

Would it help to include professions?

The aforementioned algorithm already works quite well in cases that focus on specific competences. However, if we input something more vague, like references to a person’s previous work experiences, the results become markedly worse:

“Olen ollut kirjakaupassa harjoittelijana” (I have worked as a trainee in a bookstore)

  • järjestää harjoitukset (organise training)
  • ottaa osaa harjoituksiin (participate in training sessions)
  • osallistua urheiluharjoituksiin (attend sports training)

As the descriptions of the competences and skills do not contain any references to bookstores, the algorithm focuses on the word “harjoittelija” (trainee) and provides its suggestions on the basis of it.

We pondered whether the problem could be solved by ignoring these competences and skills for a moment and focusing on finding a profession that corresponds to the input instead. In ESCO, each profession includes a set of associated competences, which means that we can generate a handy list of the competences associated with each profession.

We decided to solve the profession issue in two ways. Firstly, ESCO features a three-thousand-ish list of professions with descriptive texts for each (in English), much like with the competences included in the service.

We ran these through Google’s translation machine as well to generate the necessary data for the profession query process.

Secondly, Job Market Finland includes detailed descriptions of approximately six hundred different occupations. There is little point in combining these datasets, so we decided to perform a profession-oriented search on both datasets and combine the results. Now we can try searching for professions on the basis of a text-based input:

“Työskentelin ennen päiväkodissa, niin ja koulun keittiöllä.” (I used to work at a day care centre, and also in a school kitchen)

  • keittiöapulainen (kitchen porter)
  • keittiöpäällikkö (head chef)
  • lastenhoitaja (child care worker)

Not bad! And when we take into account the competences that are included in several occupations, the fact that the results may include a single bad suggestion will not affect the overall result in any significant way.

In the end, these occupational suggestions can help users discover the right angle for searching for one’s competences. Let’s try the previous example again:

“Olen ollut kirjakaupassa harjoittelijana” (I have worked as a trainee in a bookstore)

  • pysyä ajan tasalla viimeisimmistä kirjajulkaisuista (stay up-to-date with latest book releases)
  • myydä kirjoja (sell books)
  • suositella asiakkaille kirjoja (recommend books to customers)

Much better! When the search is done on the basis of just a profession, the results will include a number of relevant competences, but the individual competences related to each profession will be provided in random order. In practice, the best result is achieved by combining the results produced by the different algorithms with a suitable set of emphases.

 This type of combination algorithm also works when a profession cannot be defined; in this case, the search process focuses solely on the names and descriptions of the competences.


A “competence recommender” that utilises the principles described above is already in use in the Job Market Finland service, where it is used to help users fill in their profiles, and new application areas are constantly being discovered. In the end, a suitable input text can be anything from individual keywords to the presentation texts written by individual jobseekers and from CVs to job advertisements. Our development work continues on.

Heikki Niittylä

Data Scientist Gofore