Story 1.4.1.2. CRM. Talent Profile list filters

Content

General info

The profile list filters provide CRM users with the ability to narrow down the list of profiles based on various criteria. Users can apply filters to view profiles that match specific qualifications, locations, and other attributes, making it easier to find relevant profiles for different vacancies or tasks.

User story

As a CRM user
I want to filter the list of profiles based on specific criteria
So that I can quickly find the most relevant profiles for a given requirement

Visual design:

https://www.figma.com/design/I5CXH7H3ICD0vfA1kPbcVf/Rocken-Design?node-id=58504-73952&t=DCeSSybdAo4tf7Lf-4

Acceptance criteria

01

Scenario: Opening the Filters panel
Given I am on the Profile List page
When I click on the "Filters" link
Then the filters panel should open on the right side of the screen, displaying filter options such as

  1. Title / Titel

  2. Keyword / Keyword

  3. Status / Status

  4. Search status / Status der Suche

  5. Last status change / Letzte Statusänderung

  6. Industry / Branchen

  7. Category / Kategorien

  8. Skill / Skill

  9. Desired Salary (CHF / Year) / Gewünschtes Gehalt (CHF / Jahr)

  10. Responsible / Verantwortlich

  11. Location / Standort

  12. Search radius / Suchradius

  13. Language / Sprachen

  14. Application Source / Bewerbungsquelle

  15. Employment type / Art der Beschäftigung

  16. Experience / Erfahrung

  17. Workload / Arbeitspensum

  18. Leading experience / Führungserfahrung NEW

  19. Education / Ausbildung

  20. Show profiles / Profile anzeigen

  21. Market / Markt

image-20241122-123538.png

02

Scenario: User interact with the filter panel
Given user in filter panel,
When clear/add/search some items
Then have common behaviour of the field described here: Story 1.0.12.5. CRM. Filter panel

#

Filter Field

Acceptance Criteria

Query

https://api.staging.rockengroup.com/api-documentation-2000#/Profile/get_api_v1_profiles

01

Title

 

Scenario: User interact with the field
Given user in filter panel,
When search some items (role of candidate)
Then have common behaviour of the field described here: Story 1.0.12.6. CRM. Title field filter

titles[]

02

Keyword (moved to the list page)

Scenario: User applies a keyword filter.
Given the user enters a custom keyword,
When it is find info in any profile fields without suggestions
AND data matches with keyword ,
Then relevant results are displayed

Select type:

  • multi select OOS

  • multi tags

  • search OOS

  • suggestions OOS

  • custom tags

keywords[]

Search by fields:

  • profession' => 1.8,

  • 'experience_titles',

  • 'slug' => 2,

  • 'phone' => 2,

  • 'email' => 2,

  • 'name' => 2,

  • 'profession' => 1.8,

  • 'experience_titles' => 1,

  • 'experience_descriptions' => 1,

  • 'experience_companies' => 1,

  • 'interview_core_questions' => 1,

  • 'industries_text' => 1,

  • 'locations_text' => 1,

  • 'skills_text' => 1.5,

  • 'categories_text' => 1.3,

  • 'responsible_text' => 1,

  • 'responsible_unit_text' => 1,

02a

Scenario: Search for exactly matching keywords

Given the user is on the filter panel and enters the keyword “Some tags”

When the user submits custom tag

Then only results containing the exact phrase “Some tags” should be displayed, excluding partial matches or variations like “some” or “tags.”

02b

Scenario: Case-insensitive search

Given the user enters the keyword “Some tags” in any case (e.g., “some tags” or “SOME TAGS”)

When the search is performed

Then the results should include matches for the exact phrase “Some tags” regardless of letter casing.

03

Status

Scenario: User applies a status filter.
Given the user selects a status,
When the selection is made,
Then the results reflect the selected status.

Select type:

  • multi select

  • multi tags

  • search OOS

  • suggestions OOS

  • custom tags OOS

statuses[]

Available values:

  • Unfinished / Unfinished

  • New / New

  • In Progress / In Progress

  • Interview / Interview

  • Rejection / Rejection

  • Profile Creation: rejection / Profil Creation: rejection

  • Rejection (Deletion) / Rejection (Deletion)

  • Active / Active

  • Offline / Offline

  • Reapplied / Reapplied

04

Search Status

Scenario: User filters by Search status.
Given Search status exist,
When one is selected,
Then results match the selection.

Select type:

  • multi select

  • multi tags

  • search OOS

  • suggestions OOS

  • custom tags OOS

search_statuses[]

Available values:
Active Search / Aktive Suche
Passive Search / Passive Suche
Offline / Nicht auf der Suche

05

Last Status Change

Scenario: User applies a Last status change filter.
Given Last status field,
When select range of dates From-To,
Then results show last updated profiles in that range.

should be added to API by backend developer

06

Industry

Scenario: User applies an industry filter.
Given the user types an industry,
When matches exist,
Then suggestions are displayed.

Select type:

  • multi select

  • multi tags

  • search

  • suggestions

  • custom tags OOS

should be added to API by backend developer

07

Category

Scenario: User applies a category filter.
Given the user types a category,
When matches exist,
Then suggestions are displayed.

Select type:

  • multi select

  • multi tags

  • search

  • suggestions

  • custom tags OOS

categories[]

08

Skill

Scenario: User applies a skill filter.
Given the user enters a skill,
When matches exist,
Then suggestions are displayed.

Select type:

  • multi select

  • multi tags

  • search

  • suggestions

  • custom tags OOS

skills[]

09

Desired Salary (CHF / Year)

Scenario: User filters by desired salary.
Given the user inputs "From" and "To" values,
When valid,
Then results show jobs in the range.

salary[]

10

Responsible

Scenario: User applies a Responsible filter.
Given responsible options exist for this profile,
When one is selected,
Then results show jobs managed by the responsible.

Select type:

  • multi select

  • multi tags

  • search

  • suggestions

  • custom tags OOS

responsible[]

11

Location

Scenario: User applies a location filter.
Given the user enters a location (city),
When matched cities exist,
Then suggestions are displayed.

Select type:

  • single select

  • single tags

  • search

  • suggestions

  • custom tags OOS

location

12

Search Radius

Scenario: User filters by search radius.
Given a numeric input field,
When a radius is entered,
Then results match the specified area that related to selected “Location“.

should be added to API by backend developer

13

Language

Scenario: User filters by language.
Given language options exist,
When one is selected
AND the order of languages should follow the specified sequence: Deutsch, Englisch, Französisch, Italienisch, and others alphabetically.
Then results reflect vacancies requiring that language.

Select type:

  • multi select

  • multi tags

  • search

  • suggestions

  • custom tags OOS

should be added to API by backend developer

14

Application Source

Scenario: User applies a Application source filter.
Given application source options exist,
When several can be selected,
Then results show jobs based on selected application source.

Select type:

  • multi select

  • multi tags

  • search

  • suggestions

  • custom tags OOS

should be added to API by backend developer

There is no specific list of sources, generated dynamically

15

Employment Type

Scenario: User filters by employment type.
Given available options,
When a type is selected,
Then results reflect the chosen type.

Select type:

  • multi select

  • multi tags

  • search

  • suggestions

  • custom tags OOS

should be added to API by backend developer

16

Experience

Scenario: User filters by experience level.
Given experience levels,
When one or more levels are selected,
Then results show matching requirements.

Select type:

  • multi select

  • multi tags

  • search

  • suggestions

  • custom tags OOS

should be added to API by backend developer

17

Workload

Scenario: User filters by workload.
Given "From" and "To" inputs exist,
When valid values are entered,
Then results match the range.

workload[]

18

Leading experience NEW

Scenario: User applies a leadership experience filter.
Given experience levels exist,
When one is selected,
Then relevant jobs are displayed.

Select type:

  • single select

  • single tag

  • search OOS

  • suggestions OOS

  • custom tags OOS

There is API: leading_experience
BUT using: Front Enum options

Options:

  • None / Keine

  • Professional guidance of employees / Fachliche Führung von Mitarbeitenden

  • Management of project teams / Führung von Projektteams

  • Personal leadership experience / Personelle Führungserfahrung

19

Education

Scenario: User applies a Education filter.
Given education options exist,
When several options can be selected,
Then results show jobs based on selected educations.

Select type:

  • multi select

  • multi tags

  • search

  • suggestions

  • custom tags OOS

should be added to API by backend developer

Options:

  • Master / Master (Hochschule)

  • Bachelor / Bachelor (Hochschule)

  • Diploma DAS / Diploma of Advanced Studies DAS

  • Gymnasium / Gymnasium

  • Federal Professional Certificate / Eidg. Fachausweis

  • Certificate CAS / Certificate of Advanced Studies CAS

  • Master MAS / Master of Advanced Studies MAS

  • Doctorate / Doktorat

  • Secondary technical school / Fachmittelschule

  • Basic vocational training (apprenticeship) EFZ / Berufliche Grundbildung (Lehre) EFZ

  • Higher technical college HF / Höhere Fachschule HF

  • Federal Diploma / Eidg. Diplom

  • Vocational Baccalaureate / Berufsmaturität

  • MBA / MBA

20

Show profiles

Scenario: User applies profiles without processes.
Given dropdown “Show profiles“,
When select “without processes”, (by default)
Then results show profiles without processes

Scenario: User applies all profiles
Given dropdown “Show profiles“,
When select “All profiles”,
Then results show all profiles

should be added to API by backend developer

Options:

  • with processes / Mit Prozessen

  • without processes / Ohne Prozesse

21

Market

Scenario: User filters by country.
Given country options exist,
When one is selected,
Then only profiles that are open to work in that market (country).

Select type:

  • multiple select

  • multi tags

  • search OOS

  • suggestions OOS

  • custom tags OOS

should be added to API by backend developer

Comments

Leave a Reply