Contents

Chapter 1

Customization Guide — Developer Job Search Tracker

Adapt this system to your specific job search situation, whether you're casually browsing or in an active search sprint.


Search Mode Configurations

  • Use "Interested" status heavily — bookmark roles without applying
  • Check the board weekly, not daily
  • Focus on the Companies database — build your target list over time
  • Disable notifications on the Contacts database

Active Search Sprint (Full-Time Job Hunting)

  • Daily standup with yourself: review the pipeline board, check follow-ups
  • Set Follow Up Date on every contact after each interaction
  • Use the Interview Calendar as your primary view
  • Track time invested per application in the Notes field
  • Simplify the pipeline: Interested → Applied → Interview → Offer → Accepted
  • Replace "Company" with "Team/Department"
  • Remove salary negotiation fields (or keep for internal equity discussions)
  • Add "Current Manager Informed" checkbox

Customizing the Status Pipeline

For Entry-Level / New Grad

Bookmarked → Applied → OA (Online Assessment) → Phone Screen → Technical → Final Round → Offer → Accepted / Rejected

Add an "Online Assessment" status for companies that use HackerRank/CodeSignal screening.

For Senior / Staff Level

Interested → Intro Call → Technical Deep Dive → System Design → Team Interviews → Hiring Committee → Offer → Negotiating → Accepted

Add "Hiring Committee" for companies with committee-based decisions.

For Contract / Freelance

Lead → Proposal Sent → Interview → Negotiating Rate → Contract Signed → Active → Completed

Replace salary fields with: Hourly Rate, Weekly Hours, Contract Duration, Total Contract Value.


Adding Custom Properties

Useful for Tracking Patterns

PropertyTypePurpose
Response Time (days)FormulaHow long from application to first response
Resume VersionSelectWhich resume variant you used
Cover Letter?CheckboxWhether you wrote a custom cover letter
Referral?CheckboxWhether you had an internal referral
Technical Assessment?CheckboxWhether the process included a coding test
YOE RequiredNumberYears of experience listed in the JD
Rejection ReasonSelectWhy you were rejected (feedback-based)

Useful for Multi-Offer Decisions

PropertyTypePurpose
Offer DeadlineDateWhen you need to decide by
Decision ScoreNumberScore from the decision matrix (see salary-comparison.md)
Gut FeelingSelectExcited / Positive / Neutral / Hesitant
Partner/Family OpinionTextInput from people whose opinion matters to you

Privacy & Sharing

If You're Currently Employed

  • Keep this workspace private (don't share with anyone)
  • Use Notion's "Lock page" feature on sensitive pages
  • Don't access your job search tracker on work devices/network
  • Use generic calendar event names for interviews ("Personal appointment")

If You Want an Accountability Partner

  • Share the pipeline board view only (not salary details)
  • Use Notion's "Share" feature with "Can view" permission
  • Create a separate "Public Pipeline" view that hides compensation data

When you've accepted an offer:

1. Move all non-accepted applications to "Rejected" or "Withdrawn"

2. Export your data: Notion → ... menu → Export → CSV (for your records)

3. Create an "Archive" section and move all databases under it

4. Keep the Company Research — it's valuable for future searches

5. Write a final journal entry reflecting on what you learned


*Your job search system should reduce stress, not add to it. Customize until it feels natural.*

Chapter 2

Import Guide — Developer Job Search Tracker

Step-by-step instructions for setting up your job search system in Notion.


Prerequisites

  • A Notion account (works on the free plan)
  • Downloaded product files unzipped on your computer

Step 1: Import Databases (in this order)

1.1 Companies Database

1. Create a new Notion page named "Companies"

2. Add a full-page Table database

3. Click "...""Merge with CSV" → select databases/companies.csv

4. Configure column types:

  • Company Name → Title
  • Industry → Select
  • Size → Select
  • Stage → Select
  • Founded → Number
  • Headquarters → Text
  • Remote Policy → Select
  • Tech Stack → Text (or Multi-select with semicolons split)
  • Engineering Team Size → Number
  • Glassdoor Rating → Number
  • Culture Notes → Text
  • Green Flags → Text
  • Red Flags → Text
  • Website → URL
  • Research Status → Select (Not Started, In Progress, Complete)

1.2 Contacts Database

1. Create page "Contacts"

2. Full-page Table → Merge with databases/contacts.csv

3. Column types:

  • Name → Title
  • Title → Text
  • Company → Text (will become a Relation)
  • Email → Email
  • Phone → Phone
  • LinkedIn → URL
  • Relationship → Select (Recruiter, Interviewer, Referral Contact, Hiring Manager, Conference Contact, Meetup Contact)
  • Last Contact → Date
  • Follow Up Date → Date
  • Notes → Text

1.3 Applications Database

1. Create page "Applications"

2. Full-page Table → Merge with databases/applications.csv

3. Column types:

  • Company → Text (will become a Relation to Companies)
  • Role → Title
  • Status → Select (Interested, Applied, Phone Screen, Technical Interview, Onsite, Offer, Negotiating, Accepted, Rejected, Withdrawn)
  • Applied Date → Date
  • Source → Select
  • Base Salary → Number (format as currency)
  • Equity Annual → Number (format as currency)
  • Signing Bonus → Number (format as currency)
  • Bonus Percent → Number
  • Remote Policy → Select
  • Location → Text
  • Tech Stack → Text
  • Job Link → URL
  • Referral → Select (Yes, No)
  • Priority → Select (High, Medium, Low)
  • Notes → Text

1.4 Interviews Database

1. Create page "Interviews"

2. Full-page Table → Merge with databases/interviews.csv

3. Column types:

  • Application → Text (will become a Relation)
  • Interview Type → Select (Recruiter Screen, Technical Phone Screen, Take-Home Project, System Design, Behavioral, Hiring Manager, Onsite, Culture Fit)
  • Round → Number
  • Date → Date
  • Time → Text
  • Duration Minutes → Number
  • Interviewer Name → Text
  • Interviewer Title → Text
  • Format → Select (Video Call, Phone, In Person, Async)
  • Status → Select (Scheduled, Completed, Cancelled, No-Show)
  • Prep Notes → Text
  • Performance Rating → Number (1-5)
  • Debrief Notes → Text

Step 2: Create Relations

Applications → Companies

1. Open Applications database

2. Add new property → Relation → Select "Companies"

3. Name it "Company (linked)"

4. Link each application to its company

5. Optionally hide/delete the original text "Company" column

Contacts → Companies

1. Open Contacts database

2. Add Relation to "Companies"

3. Link each contact to their company

Interviews → Applications

1. Open Interviews database

2. Add Relation to "Applications"

3. Link each interview to its application


Step 3: Create Views

Application Pipeline (Board)

1. Open Applications → Add view → Board

2. Group by: Status

3. Column order: Interested → Applied → Phone Screen → Technical Interview → Onsite → Offer → Negotiating → Accepted

4. Hide: Rejected, Withdrawn (create separate view for these)

5. Properties: Role, Base Salary, Priority

Interview Calendar

1. Open Interviews → Add view → Calendar

2. Date property: Date

3. Filter: Status = Scheduled

4. Show: Application, Interview Type, Time, Format

Active Pipeline Table

1. Applications → Add view → Table

2. Filter: Status ≠ Rejected AND Status ≠ Withdrawn AND Status ≠ Accepted

3. Sort: Applied Date descending

Rejected/Withdrawn Archive

1. Applications → Add view → Table

2. Filter: Status = Rejected OR Status = Withdrawn

3. Sort: Applied Date descending

Salary Comparison

1. Applications → Add view → Table

2. Filter: Status is any of (Offer, Negotiating, Onsite, Technical Interview)

3. Sort: Base Salary descending

4. Show: Company, Role, Base Salary, Equity Annual, Signing Bonus, Bonus Percent, Total Comp (formula)

Follow-Up Due (Contacts)

1. Contacts → Add view → Table

2. Filter: Follow Up Date ≤ Today

3. Sort: Follow Up Date ascending


Step 4: Add Formula Properties

See formulas/FORMULAS.md for all formula code. Key formulas to add:

1. Total Compensation on Applications

2. Days Since Applied on Applications

3. Response Rate (calculate manually or use rollups)


Step 5: Build the Job Search Hub

1. Create a new page: "Job Search Hub"

2. Copy content from pages/job-search-hub.md

3. Add linked database views for each section

4. Arrange in a dashboard layout using Notion columns


Step 6: Set Up Templates

1. In Applications: New → New template → paste content from templates/application-entry.md

2. In Interviews: New → New template → paste content from templates/interview-debrief.md


Troubleshooting

Salary shows as text instead of currency?

Click the column header → Edit property → Change type to Number → Format as "US Dollar" (or your local currency).

CSV import creates duplicate columns?

This can happen if column headers have trailing spaces. Edit the CSV in a text editor to trim whitespace from headers before re-importing.

Relations not linking correctly?

Ensure the Title property in the target database exactly matches the text in the relation column. Watch for trailing spaces or different capitalization.

Developer Job Search Tracker v1.0.0 — Free Preview