All Collections
General
How developer search works
How developer search works

How the Moonlight algorithm sorts developers when searching by skills

Philip Thomas avatar
Written by Philip Thomas
Updated over a week ago

Clients are able to search Moonlight developers based on their skills in the Moonlight app. This article describes how the system works so companies know how to search for their requirements, and developers can optimize their profiles. (Note that the search algorithm may change at any time.)

Skill-based search index: Developers can add three featured skills to the top of their profile, skills to the main body of their profile, and experience skills to each of their experience sections on their profile. The search system indexes all three of these sections. So, a developer will show up in a search if they have a skill listed in any of those places on their profile. 

Order of search results: When clients search for developers based on their skills, we prioritize sorting based on these criteria, in this order:

  1. Exact matches - Companies can search multiple different skills at the same time (e.g. for "Go" and "Clearbit"). Developers with all of the required skills are at the top of the list. 

  2. Featured skills - Developers who have all or some of the search terms in their featured skills get priority, sorted by how many skills they have that match the search terms. 

  3. Experience Skills - Developers who have the search terms in their experience sections get priority, based on how many times the search queries appear in their experience. So, if the search term is "ReactJS" and you have 3 experiences listed on your profile with that skill, then you will be above other developers who add it fewer (or zero) times to their Experience sections.

  4. Last update time - Ties are broken by the last time the developer's profile was updated, favoring those with more recent profiles.

Did this answer your question?