How We Designed Candidate Profile Hiding from Specific Companies

We implemented a mechanism that allows candidates to hide their profiles from specific companies, enhancing privacy and data control.

---

Meeting with a Candidate: The First Step Towards Change

Recently, we had a one-on-one meeting with a candidate who expressed concerns about the privacy of their profile. They shared that they did not want their data to be accessible to all the companies they were in contact with. This conversation became a catalyst for discussing a new feature that would enable candidates to control the visibility of their profiles.

Why This Matters

The issue of privacy in the employment sector is becoming increasingly relevant. Candidates want to manage who can see their profiles and information. We realized that for many applicants, this is not just a matter of convenience—it is about safety and control over their careers. If we do not address this issue, we risk losing user trust, which is critical for our platform.

A Specific Example of the Problem

During one of our testing phases, we encountered a situation where a candidate received an offer from one company but did not want other employers to see their profile. When they attempted to hide this information, the system did not allow it, which caused frustration. This case clearly demonstrated that existing mechanisms did not provide the necessary flexibility and control.

Initial Attempts at a Solution

We began by discussing a simple approach—adding a customizable setting to the candidate's profile. However, it turned out that this solution did not account for complex situations where the same candidate might interact with multiple companies and not want to be visible to others. As a result, we abandoned this idea, realizing it did not address the core problem.

Technical Approach

After several iterations and discussions, we arrived at a solution that involved using a “blacklist” mechanism for companies. Candidates can add companies from which they want to hide their profile, and this information is stored in the database. When a profile is requested, the system checks if the company is on the blacklist and does not display the profile if it is.

class CandidateProfile:
    def __init__(self, candidate_id):
        self.candidate_id = candidate_id
        self.blacklist = []

    def add_to_blacklist(self, company_id):
        self.blacklist.append(company_id)

    def is_visible_to(self, company_id):
        return company_id not in self.blacklist

This implementation allows for easy management of profile visibility and ensures the necessary privacy.

Product Changes

With the introduction of this new feature, candidates can now manage access to their profiles independently. We added a section in the profile interface where users can edit their company blacklist. This change significantly improved the interaction with /for-candidates, as users now feel more secure and in control of their data.

What We Learned

  • Flexibility is more important than simplicity. Initial ideas about a simple parameter were not sufficiently universal.
  • Understanding the user. Communicating with users is key to identifying real needs.
  • Testing hypotheses. Do not hesitate to abandon ideas that do not work in practice.
  • Data and privacy. Data protection should be a priority at all stages of development.

What This Means for Candidates

Candidates can now be assured that their profiles will not be accessible to all employers. They can choose who sees their information, allowing them to focus on the opportunities that truly interest them.

What This Means for Recruiters

Recruiters now need to consider that not all candidates will be available for viewing. This may require additional efforts to find suitable specialists, but it also opens up opportunities for more targeted interactions with candidates.

Next Steps

We continue to monitor how users interact with the new feature. It is important to identify any issues related to using the blacklist and to keep improving the interface. If we had to start over, we would pay more attention to the initial analysis of user needs to avoid unnecessary iterations. ---

Related materials

  • Architecture diagram plannedАрхитектура скрытия профиля
    Схема, отображающая новый механизм управления видимостью профиля кандидата.
  • Chart plannedАнализ использования функции
    График, показывающий, как изменилось использование функции скрытия профиля с момента её внедрения.

Also on Fitlane AI

Topics: скрытие профиля кандидата, конфиденциальность, управление данными, разработка, инженерия, Fitlane AI, профили кандидатов