Skip to main content

Talent Notes

The TalentNote system allows users to add internal notes directly to talent profiles, independent of any job candidacy. While the platform already supports Candidate Notes (attached to a talent-job pairing), TalentNotes fill the gap for notes that belong to the talent profile itself.

Why TalentNotes?

Previously, notes could only be attached to candidates -- meaning a talent had to be linked to a specific job before a recruiter could write anything about them. This created a friction point in common sourcing workflows:

  • A recruiter reviews a CV in a talent pool but has no job to apply them to yet
  • A hiring manager wants to capture general impressions after an informal conversation
  • A sourcing specialist wants to tag a talent with context for future reference

TalentNotes solve this by providing a dedicated, job-independent note system on talent profiles.

FeatureCandidateNoteTalentNote
Attached toCandidate (talent + job)Talent (profile)
Requires job linkYesNo
When to useDuring recruitment pipelineBefore or independent of job applications
Visible inCandidate detail pageTalent profile page
Author restrictionEdit/delete by author onlyEdit/delete by author only

Data Model

The TalentNote model stores notes linked to a Talent record, authored by a User.

FieldTypeDescription
idString (UUID)Primary key
talentIdString (FK)Reference to the talent profile
authorIdString (FK)Reference to the user who created the note
titleString?Optional title for the note
contentStringNote body (required)
createdAtDateTimeTimestamp of creation
updatedAtDateTimeTimestamp of last update

Relations:

  • Talent -- a talent can have many notes (1:N)
  • User as Author -- each note has exactly one author

GraphQL API

Mutations

Create a Note

mutation {
createTalentNote(input: {
talentId: "talent-uuid"
title: "Initial screening impressions"
content: "Strong backend skills, 5+ years NestJS. Good communicator."
}) {
id
title
content
author { firstName lastName }
createdAt
}
}

Input fields:

  • talentId (required) -- the talent to attach the note to
  • title (optional) -- a short title or subject line
  • content (required) -- the note body

Auth: JWT required. The authenticated user is automatically set as the author.

Update a Note

mutation {
updateTalentNote(input: {
id: "note-uuid"
title: "Updated title"
content: "Updated content with more detail."
}) {
id
title
content
updatedAt
}
}

Input fields:

  • id (required) -- the note to update
  • title (optional) -- new title, or omit to keep unchanged
  • content (optional) -- new content, or omit to keep unchanged

Auth: JWT required. Only the original author can update their note.

Delete a Note

mutation {
deleteTalentNote(id: "note-uuid") {
id
}
}

Auth: JWT required. Only the original author can delete their note.

Queries

List Notes for a Talent

query {
talentNotes(talentId: "talent-uuid") {
id
title
content
author {
id
firstName
lastName
}
createdAt
updatedAt
}
}

Returns all notes for the specified talent, ordered by createdAt DESC (newest first).

Auth: JWT required. The user must have access to the talent (through talent pool membership or sharing).

Frontend Integration

The TalentNote system integrates into the talent profile view through a shared NotesSection component that adapts based on context.

Resume Mode vs. Candidate Mode

When a user views a talent profile, the frontend determines which note system to use:

  • Resume mode (viewing a talent profile directly) -- uses TalentNotes via createTalentNote, updateTalentNote, deleteTalentNote
  • Candidate mode (viewing a talent as a candidate for a job) -- uses CandidateNotes via createCandidateNote, updateCandidateNote, deleteCandidateNote

The NotesSection component handles this mode switching internally, so the user experience is consistent regardless of context.

info

The "Internal Notes" tab appears in the talent profile sidebar. Notes from all company members with access to the talent are displayed together, giving the team a shared view of observations and context.

Access Control

ActionWho Can Perform
Create a noteAny authenticated user with access to the talent
View notesAny authenticated user with access to the talent
Update a noteOriginal author only
Delete a noteOriginal author only

Notes are scoped to the talent. All company members who have access to the talent (through pool membership, sharing, or collaboration) can view all notes on that talent. However, editing and deletion are restricted to the note's author.

warning

TalentNotes are internal to the platform. They are never visible to the talent themselves (the job seeker). Only users with access to the talent profile through company membership or sharing can see notes.

Use Cases

Sourcing & talent pool curation: A sourcing specialist reviews CVs in a talent pool and adds notes like "Strong React + TypeScript, 3 YOE at fintech startups. Ideal for frontend roles." -- before any job is posted.

Post-conversation notes: After an informal phone screen or networking event, a recruiter captures impressions: "Spoke at React conference. Interested in remote roles. Available from Q2."

Cross-team context sharing: A hiring manager adds context that helps other recruiters: "Previously interviewed in 2024 for Senior role -- strong technically but wanted higher comp. May reconsider now."

Pre-application intelligence: Before adding a talent as a candidate to a specific job, a recruiter checks existing TalentNotes from colleagues to understand prior interactions and impressions.