Skip to main content

How Jobs Get Saved

Jobs enter your collection automatically through the search process. When you create a search and it completes processing, all matching results are saved as jobs linked to that search. There is no manual “save” step for search results — they are part of your collection from the moment the search finishes. You can also add jobs to your collection from:
  • Client company pages — When viewing a company’s active job listings, you can save individual listings to your collection
  • Search monitoring — When a monitored search finds new matching jobs, they are automatically added to the search’s result set and flagged as “New” (is_new = true)
Jobs are personal records. Even when two recruiters on the same agency team have the same underlying job listing, their personal metadata (tags, notes, favorites, outreach status) is independent. The shared ScrapedJob data (title, description, company info, contacts) is the same for everyone.

The All-Jobs List View

The Jobs page provides a comprehensive view of all jobs across all your searches. This unified view is your primary workspace for managing your entire job pipeline.

Table Layout

The all-jobs table displays one row per job with the following information:
ColumnDetails
CheckboxFor selecting jobs for batch operations
TitleThe job title, clickable to open the detail page
CompanyHiring company name with favicon
LocationCity/region where the job is based
Match ScoreRelevance percentage from the search (30-99% scale)
DateWhen the job was posted or first discovered
TagsColor-coded tag chips applied to the job
StatusBadges for “New,” “Expired,” “Via Agency,” “Geen Acquisitie”

Sorting

Click any column header to sort the table by that column. Click again to toggle between ascending and descending order. The default sort is by creation date (newest first). Common sorting strategies:
  • By match score — Focus on the highest-relevance jobs first
  • By date — See the most recently posted or discovered jobs
  • By company — Group jobs from the same company together for efficient batch outreach
Sorting by company name is a powerful tactic for agency work. When you see multiple jobs at the same company, it often indicates they are actively expanding — a strong signal for outreach. Contact the company once about multiple relevant positions rather than reaching out separately for each listing.

Filtering Your Jobs

The all-jobs view provides several filtering mechanisms to help you find specific jobs in your collection.

By Tags

If you have tagged your jobs (see Tagging Jobs), you can filter by one or more tags:
  1. Click the Tag Filter dropdown above the table
  2. Select one or more tags from the list
  3. The table updates to show only jobs with the selected tags
This is the most common way to work through your pipeline — tag jobs during review, then filter by tag to focus on specific categories.

By Attributes

Use the attribute filter dropdowns to narrow by job characteristics:
  • Experience level — Junior, medior, senior, lead
  • Job type — Full-time, part-time, contract, temporary, internship
  • Flexibility — Remote, hybrid, on-site
  • Match type — Excellent match, good match, poor match

By Search Origin

Filter to see only jobs from a specific search:
  1. Click the Search Filter dropdown
  2. Select a search from your saved searches list
  3. The table shows only jobs associated with that search
This is equivalent to opening the search detail page, but within the all-jobs context where you can also combine with tag and attribute filters.

By Active Status

Toggle the Active Only filter to hide expired jobs and focus exclusively on positions that are still available. This is particularly useful when preparing outreach — there is no point in contacting a company about a job that has already been filled.

Hide Geen Acquisitie

Click the Hide Geen Acquisitie button in the filter bar to remove all jobs that have the “geen acquisitie” (no acquisition) flag from your view. Companies that include this notice in their listings have explicitly stated they do not want recruiter outreach. Hiding these jobs lets you focus exclusively on companies that are open to working with recruitment agencies.
Combine multiple filters to create precise views. For example, filter by “Priority” tag + “Senior” experience level + “Active only” + “Hide Geen Acquisitie” to see exactly the high-priority senior roles that are still open and receptive to recruiter outreach. This combination is the most common “outreach-ready” view for experienced recruiters.

Batch Operations

Batch operations let you act on multiple jobs at once, saving significant time when managing a large collection.

Enabling Batch Mode

To access batch operations, click the Batch Actions toggle button above the table. This activates batch mode, which adds checkboxes to each job row and reveals the batch action toolbar. Click the toggle again to exit batch mode and return to the standard view.

Selecting Jobs

  • Individual selection — Click the checkbox on each job row
  • Select all visible — Click the checkbox in the table header to select all jobs currently visible on the page (after filters are applied)
“Select all visible” selects only the jobs on the current page. If your filtered view spans multiple pages, you need to process each page separately. Apply filters first to narrow down to the jobs you want to act on, then use select-all on the filtered view.

Available Batch Actions

Once you have selected one or more jobs, a batch action toolbar appears:
1

Batch Tagging

Apply a tag to all selected jobs at once. Select the tag from the dropdown in the batch toolbar. This is the fastest way to organize a large set of results after an initial review.For example, after scanning through 50 search results, select the 15 most promising ones and apply a “Shortlist” tag in a single action.
2

Batch Deletion

Remove all selected jobs from your collection. This is a soft delete — the jobs are marked as deleted but the underlying ScrapedJob data is preserved. Use this to clean up poor matches or irrelevant results.
Batch deletion cannot be undone from the UI. Be careful when selecting jobs with “Select All” — make sure your filters are set correctly so you do not accidentally delete jobs you want to keep.

Pagination

The jobs table supports pagination for large collections. Controls at the bottom of the table let you:
  • Navigate between pages (previous, next, specific page number)
  • See the total number of jobs in your current filtered view
The default page size displays enough jobs to fill the screen. Pagination is applied after all filters, so the page count reflects the filtered result set, not your total collection.

Favoriting Individual Jobs

Each job row has a favorite toggle (star icon). Favoriting a job marks it for quick reference. You can filter your view to show only favorited jobs when you want to focus on your top picks. Favorites are personal — your favorited jobs are visible only to you, even in an agency context. The favorited field on the Job entity controls this.

Deleting Individual Jobs

To remove a single job from your collection:
  1. Open the job’s detail page or find it in the table
  2. Click the Delete button (trash icon)
  3. Confirm the deletion
The job is soft-deleted: the deleted flag is set to true, removing it from your view, but the underlying ScrapedJob data remains in the system. Other users who have the same job in their collection are not affected.
Deleting a job from a search reduces the search’s job count. If you delete all jobs from a search, the search itself remains in your saved searches list with a count of zero. The search can still be monitored for new matches.

Managing a Growing Collection

As you create more searches and accumulate more jobs, keeping your collection organized becomes essential. Here are proven strategies:
  • Tag early, tag often — Apply tags during your first review pass so you can filter efficiently later
  • Remove poor matches — After reviewing a search’s results, batch-delete the poor matches to keep your collection focused
  • Use the active filter — Regularly toggle “Active Only” to avoid spending time on expired listings
  • Review by search — Use the search origin filter to work through results systematically, one search at a time
  • Archive completed opportunities — Tag jobs where outreach is complete with an “Archived” tag, then filter them out of your daily view
  • Monitor new jobs count — Check your monitored searches regularly for new matches that need review

Advanced

Job Record Lifecycle

Understanding the lifecycle of a Job record helps you manage your collection effectively:
  1. Creation — A Job record is created when:
    • A search completes and results are saved (most common)
    • A monitored search finds a new matching job
    • You manually save a listing from a client page
  2. Active use — During its active life, a Job record accumulates:
    • Tags (shared with agency team)
    • Internal notes (shared with agency team)
    • Favorite status (personal)
    • Outreach flow progress
    • View history (last_viewed_at)
  3. State changes — A Job’s state can change when:
    • The underlying ScrapedJob expires (is_expired becomes true)
    • You mark it as favorited/unfavorited
    • Tags are added or removed
    • The is_new flag is cleared when you view the search
  4. Deletion — Soft delete sets the deleted flag. The Job record persists in the database but is excluded from all queries and views.

How Jobs from Different Sources Interact

When the same ScrapedJob appears in your collection from multiple sources (e.g., from two different searches, or from a search and a client page save), each source creates a separate Job record:
  • Same ScrapedJob, different searches: You see the job in both search result views. Each Job record has its own tags, notes, and match score (which may differ because the searches had different criteria).
  • Same ScrapedJob, search + client save: The job appears both in the search results and in any client-page views. Again, separate Job records with independent metadata.
This is by design — each context (search, client page) may warrant different tags, notes, and outreach strategies for the same underlying listing.

Soft Deletion Details

When you delete a job (individually or in batch):
  • The Job entity’s deleted field is set to true
  • The Job is excluded from all list views and filter queries
  • The associated ScrapedJob is not affected
  • Other users’ Job records for the same ScrapedJob are not affected
  • The search’s active job count is decremented
  • Contact details associated with the Job remain in the database but are no longer accessible through the deleted Job

Power-User Tips

The most efficient workflow for processing a new search with many results:
  1. Sort by match score (highest first)
  2. Quick-scan the top 20-30 results
  3. Select the best ones and batch-tag as “Shortlist”
  4. Select borderline ones and batch-tag as “Review Later”
  5. Filter to show only poor matches
  6. Select all and batch-delete
  7. Your collection is now clean and organized for focused work
When you have many active searches, the all-jobs view can become overwhelming. Use the search origin filter to isolate one search at a time. This mimics the experience of opening the search detail page but with the added benefit of the all-jobs filter toolbar (tag filters, attribute filters) available alongside.
Create a tag-based pipeline that mirrors your recruitment workflow:
  • “Shortlist” (green) — jobs worth pursuing
  • “Contacted” (blue) — outreach sent
  • “Waiting” (yellow) — awaiting response
  • “Interview” (purple) — interview scheduled or in progress
  • “Placed” (dark green) — successful placement
Then use the tag filter to view each stage independently. Combined with “Active only,” this gives you a real-time pipeline view of your active placements.

Business Rules

  • Job ownership: Jobs belong to the user who created them (via search or manual save). Agency teammates can see shared notes but cannot modify another user’s job records.
  • Cascading deletion: When a search is deleted, all its Job records are also soft-deleted.
  • New job flag: The is_new flag is set when a monitored search finds a new match. It is cleared when the user opens the search detail page, indicating they have reviewed the new additions.
  • Match score immutability: Once a job is scored during the search, its match score does not change. If you want to see how the same jobs would score with different criteria, clone the search and modify the clone.