How to get things done in Hitt HR
Step-by-step guides for every workflow, from posting your first position to running a DCAA-aligned labor distribution report.
Getting started
2 guidesHow to manage users and roles
Admins control who has access and what role each person holds, and can fill in missing profile details for any user.
- 1Go to Admin in the sidebar, then open the User Management card (or go straight to /admin/users).
- 2Search by name or email, or filter by role. You can save a filter combination as a named view and re-apply it later.
- 3To change a role, pick the new role in the row's role dropdown and confirm the prompt. Changing your own admin role asks for an extra confirmation, since you would lose access to the page.
- 4To edit a user's details, click the pencil ("Edit user details") button on their row. The "Edit user" dialog lets you fill in first name, last name, title, location, and phone (useful when a promoted applicant arrived with only an email).
- 5Click Save to apply the changes.
Positions & careers site
3 guidesHow to create a position
Positions are the anchor for applications, matching, offers, and your org chart.
- 1Go to Positions in the sidebar and click New Position.
- 2Fill in the title, department, seniority level (Entry-level through Executive), and, if relevant, the required clearance level (Public Trust through TS/SCI).
- 3Add the salary band (minimum / maximum). This same band later powers the pay-band guardrails on offers.
- 4Click Create Position. The new position starts in draft status.
- 5From the positions list you can Publish a draft, Close an open position, or Reopen a closed one using the status action on each row.
How to publish a position to your public careers page
Public positions appear on your careers site at /careers, where candidates apply directly.
- 1Open the position from Positions and switch to edit mode.
- 2Check "Publish to public careers page".
- 3Optionally set a public slug (e.g. "senior-cloud-engineer-dhs"). The page shows you the resulting public URL, like /careers/senior-cloud-engineer-dhs.
- 4Save. The position now appears on /careers and its detail page is crawlable by search engines.
- 5Uncheck the box any time to take the listing down without closing the position.
Tip: Roles can stay internal-only, or you can share the direct public URL without listing the role on the index.
How to add screening and knockout questions
Per-position screening questions run on every application, and knockout questions auto-reject hard-fail answers like a missing clearance.
- 1Open the position and switch to edit mode, then scroll to the Screening questions section.
- 2Click "+ Add question" and write the question. Choose the answer type (e.g. yes/no).
- 3To make it a hard requirement, check the Knockout box and select the expected answer.
- 4Optionally set a knockout message shown to auto-rejected applicants.
- 5Save the position. Applicants answer the questions inside the careers-page application form; a knockout mismatch rejects the application automatically.
Tip: Use knockout questions for objective, non-negotiable requirements only: clearance held, citizenship, work authorization.
Applications & screening
2 guidesHow to review applications and change status
All inbound applications from your careers page land in one queue with statuses you control end to end.
- 1Go to Applications in the sidebar. The list shows every inbound application with its position, source, and current status.
- 2Click an application to open the detail page: applicant contact info, cover letter, résumé link, and screening answers are all there.
- 3Change the status with the status dropdown: new, reviewing, shortlisted, rejected, withdrawn, or hired.
- 4Use the Edit button on the applicant card to correct contact details, and the email button in the header to message the applicant without leaving the page.
- 5On Pro and GovCon plans, applications arrive pre-scored against the position requirements, which helps you triage the queue faster.
How to promote an applicant into your talent pool
Turn a strong applicant into a full candidate record: individually, in bulk, or from the application detail page.
- 1From the list: on Applications, click Promote on the applicant's row. A candidate profile is created from the application and linked to it.
- 2In bulk: select multiple applications with the row checkboxes, then click "Promote selected". Already-linked applications and rows without an email are skipped automatically.
- 3From the detail page: open the application and, in the Candidate panel, click "Add to talent pool".
- 4Once linked, the panel shows a View candidate link to the new profile in Talent Pool.
Tip: Promotion needs an applicant email; the candidate can later claim the profile by signing up with that address.
Talent pool & matching
4 guidesHow to add a candidate to your talent pool
The Talent Pool is your searchable candidate database: add people one at a time or promote them from applications.
- 1Go to Talent Pool in the sidebar and click Add candidate.
- 2Enter at least the email address (required), plus name and any details you have.
- 3Submit. The candidate appears in the pool immediately and can claim the profile later by signing up with that email.
- 4Open the profile any time to add skills, clearances, certifications, and work history.
Tip: For many candidates at once, use Import (bulk CSV) instead; the button is right next to Add candidate.
How to upload and parse a résumé onto a candidate
Upload a résumé file on any candidate profile and the parser fills in their structured profile for you.
- 1Open the candidate from Talent Pool.
- 2Click "Upload résumé" in the profile header and pick a .pdf, .txt, or .md file (up to 10 MB; DOCX/RTF are not supported).
- 3Wait a moment while it parses. Contact details, work experience, skills, certifications, and clearance mentions are extracted into the profile.
- 4Review the toast summary of what was added, then spot-check the profile fields and adjust anything the parser got wrong.
Tip: Newly detected skills are added to your master skills catalog and tagged to the candidate automatically.
How to bulk-import candidates from CSV
Load an existing candidate database in one pass with column mapping and a downloadable template.
- 1Go to Talent Pool and click Import (or open /import). Download the Sample CSV if you want the expected shape.
- 2Click to upload your CSV in step 1.
- 3In step 2, map each Hitt HR field to a column from your file; likely matches are auto-detected. Email is the only required mapping.
- 4Run the import. Up to 500 records import per file, and the run is recorded in the audit log.
- 5Open Talent Pool to see the imported candidates.
How to run talent matching against a position
Score your whole talent pool against an open position in one click, with per-dimension breakdowns and an explanation for every match.
- 1Go to Talent Matching in the sidebar.
- 2Pick the position in the "Select position..." dropdown.
- 3Click Run AI Match. Every candidate in your pool is scored; the toast tells you how many matches were created.
- 4Open a match to see sub-scores for clearance, skills, experience, location, and certifications, plus a short written rationale.
- 5Update match statuses from the list as you work through them, or use Export to take the results to CSV.
Tip: Match weighting is tunable in admin settings, and rediscovery surfaces silver-medalist candidates from earlier pipelines for new roles.
Interviews & offers
5 guidesHow to build interview kits
Kits are reusable question banks that attach to interviews so every candidate gets the same structured loop.
- 1Go to Interview Kits in the sidebar and click New kit.
- 2Name the kit and click "+ Add question" for each question in the bank.
- 3Click Save. The kit shows its question count on the list.
- 4When scheduling an interview, attach the kit; it prefills the interview's question bank for the interviewer.
How to schedule an interview and send a calendar invite
Schedule from the application and the candidate gets a branded email with a one-click calendar (.ics) attachment.
- 1Open the application and find the Interviews panel.
- 2Click "+ Schedule", fill in the time, location/link, and interviewer, and click Schedule interview.
- 3Click Send invite on the scheduled interview. The candidate is emailed a calendar invitation, and the panel shows "Invite sent" with the timestamp.
- 4Need to change details? Update the interview and resend; the panel offers a resend action.
Tip: Recruiters also get a daily 7am digest email listing their interviews in the next 36 hours.
How to create an offer with pay-band guardrails
Offers pull the position's salary band in as a guardrail: in-band offers sail through, out-of-band offers need a logged justification.
- 1Go to Offers in the sidebar and click New Offer.
- 2Pick the candidate (search existing, or enter a name and email manually) and the position.
- 3Enter the salary. The position's pay band shows directly under the field (e.g. "$120,000–$150,000"), and an empty salary pre-fills to the band midpoint.
- 4If the salary is outside the band, the form flags it and requires an "Out-of-band justification" before you can save; the justification is enforced server-side and recorded in the audit log.
- 5Set the start date, offer expiration, and the letter body, then save the offer as a draft.
How to generate an offer letter draft
One click drafts a professional offer letter from the fields you have already filled in.
- 1In the New Offer form, fill in the candidate, position, salary, start date, and expiration first.
- 2Click Generate letter next to the "Offer letter body" label.
- 3A complete canned draft is written into the body: greeting, terms, expiration, next steps.
- 4Edit the draft to taste. If the body already has text, generating asks before replacing it.
How to send an offer for eSignature and track it
Every offer gets a unique tokenized signing link. Candidates accept or decline with a typed legal name, no third-party tool needed.
- 1Send the offer to move it from draft to sent.
- 2Click the "Copy sign link" icon on the offer row and share the /sign/[token] URL with the candidate (candidates with accounts also see it under My Offers).
- 3The candidate types their full legal name and clicks Accept Offer (or Decline). The signature is timestamped and legally binding language is shown at signing.
- 4Track status on the Offers page: draft, sent, accepted, declined, expired, rescinded; each transition is timestamped in the audit log.
- 5Download the branded PDF from the row any time; on acceptance, onboarding kicks off automatically with the default checklist.
Tip: A daily sweep auto-expires offers past their deadline so your acceptance analytics stay honest.
Onboarding & offboarding
5 guidesHow to run an onboarding checklist
Every new hire gets a task checklist grouped by category, with role-based assignees and automatic status rollups.
- 1Go to Onboarding in the sidebar and click Start Onboarding (accepted offers start one automatically).
- 2Pick the person and start date, then click Start Onboarding in the dialog.
- 3Pick the checklist. Leave it on "Automatic" and we use the template that matches this hire (or the built-in 12-task standard list: I-9, W-4, direct deposit, NDA, SF-86 for cleared roles, background check, equipment, accounts, and security training), grouped by Paperwork / Clearance / Equipment / Access / Training. The line under the picker tells you how many tasks will be created and from which list.
- 4Open the workflow to tick off tasks. Each task has an assignee role (candidate, IT, security, hiring manager) so the right person gets notified.
- 5Progress bars track each category; the workflow completes automatically when all required tasks are done.
How to run an offboarding checklist
Departures get the same checklist treatment, including the cleared-staffing steps that are easy to miss.
- 1Go to Offboarding in the sidebar and create a workflow for the departing person, choosing one of the six exit reasons (voluntary, involuntary, contract end, reduction in force, retirement, other).
- 2Work the 10-task seeded checklist: revoke access, collect equipment, schedule the exit interview, process the final paycheck — and for cleared roles, "notify clearance FSO" and "collect CAC / smart card / tokens".
- 3Statuses move automatically: the first completed task flips the workflow to in-progress; completing all tasks flips it to completed.
- 4Finalize the workflow to capture would-rehire, exit interview notes, and knowledge-transfer notes; these feed the Quality of Hire numbers on Reports.
How to build your own onboarding / offboarding checklist templates
Stop hand-editing the same tasks on every hire. Build the in-processing and out-processing lists your facility actually uses and scope each one to an employment type or a department.
- 1Press Cmd+K (Ctrl+K on Windows) and pick "Onboarding & offboarding checklist templates", or go to /settings/checklists.
- 2Choose the Onboarding or Offboarding tab, then click "Start from standard" to copy the built-in list and edit it, or "New template" to begin from an empty one.
- 3Name the template (e.g. "Cleared in-processing"), and optionally set an Employment type and/or a Department. Leave either on "Any" and it will not narrow the template.
- 4Tick "Use this as the default …" to make this the fallback for that kind. Only one template per kind can be the default; setting a new one clears the old.
- 5Build the task list: click "Add task", type the task, pick a category, and set the owner (onboarding) or a due-date offset in days from the exit date (offboarding). Use the up/down arrows to reorder and "Required" to mark a task optional.
- 6Click "Create template". On the next onboarding, the Checklist picker shows it — leave it on "Automatic" to let the scope rules choose, or pick a template outright.
Tip: Resolution order is: the template you picked, then the most specific match for the hire's employment type and department, then your org default, then the built-in standard list. So you can leave this page empty and nothing changes. Deleting a template never touches checklists already created from it — the tasks are copied at create time, not linked.
How to add, assign, and edit offboarding tasks
The 10 seeded tasks are a starting point: you can add one-off tasks to a specific exit, set who owns each task, change due dates, or remove tasks that do not apply.
- 1Open Offboarding and select the person's workflow so the Checklist panel is showing.
- 2To add a task, click "Add task" at the top of the Checklist. Enter the task (e.g. "Return the GFE laptop to the program office"), pick a category (equipment, access, compliance, knowledge, other), and optionally set a due date and an assignee, then click "Add task".
- 3To change a task's due date or assignee, click the pencil icon on that task row. Set the date and/or search for a teammate in the "Assign to" picker, then click Save. The assignee's name appears under the task label.
- 4To remove a task, click the trash icon on its row and confirm. Deleting the last remaining open task can complete the workflow, just like checking it off would.
- 5Assigning a task records who owns it. For example, route "collect CAC / smart card" to security and "process final paycheck" to finance.
Tip: These controls are hidden once a workflow is completed or cancelled; reopen it first if you need to change its tasks. Assignment records the owner today; automatic notification to the assignee is not sent yet.
How to read the Attrition & Retention report
Turnover rate, the voluntary vs involuntary split, tenure at exit, and regretted attrition — all computed from offboarding workflows you have already recorded. Nothing new to enter.
- 1Go to Reports, then open Attrition & retention (or go to /reports/attrition). It defaults to the trailing 12 months; change the two date boxes in the header to pick another range.
- 2Read the four headline tiles: annualised turnover, the raw rate for the period, regretted attrition, and median tenure at exit.
- 3Check "How the rate was computed" underneath — it shows headcount at the start and end of the range, the average of the two, the exits counted, and the roll-offs excluded, so you can verify the percentage by hand.
- 4Use "Voluntary vs involuntary" and "Exits by reason" to see which of the six exit reasons is driving the number. Retirement rolls up as voluntary and reduction in force as involuntary.
- 5"Regretted vs non-regretted" splits exits by the would-rehire answer captured when the workflow was finalized. Exits where it was never asked appear in their own "Not asked" bucket.
- 6"Tenure at exit" buckets exits into 0–3, 3–6, 6–12, 12–24 and 24+ months. If any exit had no linked assignment, the line above the chart says how many were excluded from tenure.
- 7Click "Export CSV" in the header for one row per exit with reason, exit date, tenure in months, and the would-rehire answer.
Tip: Contract roll-offs (the contract_end reason) are counted and shown separately but are deliberately left OUT of the headline turnover rate — a normal end of period of performance is not attrition, and including it would overstate the number. The report is read-only and admin-gated, and needs the Pro or GovCon plan.
Timesheets & DCAA-aligned timekeeping
11 guidesHow to enter and submit a timesheet
Weekly timesheets with per-day buckets, project/contract tagging, and a mandatory certification at submit, built to support DCAA compliance readiness.
- 1Go to Timesheets in the sidebar and click the button for the current week to open (or create) the period.
- 2Click a day in the grid to focus the entry form on it, fill in hours, project, and contract, and click Add.
- 3Repeat until every workday in the period is accounted for; the grid flags gaps live as you go.
- 4Click "Submit for approval". A certification dialog shows the attestation statement ("I certify that the hours recorded are true, complete, and accurately reflect the time I worked...").
- 5Check the certification box and click "Certify & submit". Who certified and when is stored on the period and shown read-only to approvers.
Tip: Approved periods are locked from edits; a rejection reopens the period and clears the certification so a re-submit forces a fresh attestation.
How to satisfy the total-time completeness gate
Hitt HR blocks a timesheet from being submitted until every scheduled workday in the period is accounted for, supporting total-time-accounting readiness.
- 1Open your period on Timesheets. Days that are unaccounted, short of expected hours, or over expected hours are flagged per-day right in the grid.
- 2Expected hours default to 8 per weekday; weekends and org holidays are never required workdays.
- 3Fill the gaps until the grid shows the period complete; the Submit button stays disabled (and the server rejects submits) until it is.
- 4For part-time or exempt staff, the expected daily hours can be overridden per period.
- 5Managers can force-submit an incomplete period in an exception: the confirmation warns that the override is recorded in the audit log.
How to approve a timesheet and certify it as a supervisor
DCAA total-time-accounting wants two attestations on every period: the employee certifies their hours, and the supervisor independently certifies they reviewed and approve them. Approving is now a certified action, not a silent status flip.
- 1Open Timesheets → Approvals (client/admin only). Submitted periods appear in the approval queue with each employee's certification shown read-only.
- 2Review the hours, then click Approve on the row.
- 3A "Certify this approval" dialog shows the supervisory statement ("I certify that I have reviewed this timesheet as the employee's supervisor...").
- 4Tick the box and click "Certify & approve". The exact statement, your identity, and the timestamp are stored on the period alongside the employee's certification.
- 5To reject instead, click Reject and give a reason; that clears any prior approval certification so a later re-approval forces a fresh one.
Tip: The approve button won't complete until you certify. Reopening or rejecting a period clears the supervisor certification, so a re-approval always captures a fresh attestation. The statement text is a per-org configurable default (hr_settings key timesheet_approval_certification_statement).
How to set up authorized charge codes and enforce them
Restrict time charging to valid, active, assigned contract/CLIN numbers, closing the mischarging gap that worries auditors.
- 1Open /settings/charge-codes (press Cmd+K and pick "New charge code (DCAA catalog)").
- 2Add each authorized code with its contract number, optional CLIN, description, and period-of-performance window.
- 3Grant each employee the specific codes they may book, using the per-code grant picker.
- 4Turn on "Enforce the catalog on timesheets". The timesheet's free-text project/contract boxes become a dropdown of each employee's authorized, currently-active codes.
- 5The server rejects any unauthorized or out-of-window code and snapshots the contract/CLIN onto each entry for the audit trail.
Tip: Enforcement is opt-in per org: non-GovCon teams keep the simple free-text timesheet. Deactivating a code never orphans historical entries.
How to publish a timekeeping policy and track acknowledgments
DCAA reviews expect a written timekeeping policy plus proof every employee has read and acknowledged it. Publish yours and see who is outstanding: the floor-check artifact auditors ask for.
- 1Open /settings/timekeeping-policy (press Cmd+K and pick "Timekeeping policy (DCAA acknowledgment)"). Client/admin only.
- 2Paste your written policy text, set an effective date, and choose a re-acknowledge interval (default 365 days). Click Publish.
- 3Employees see a "Review & acknowledge" banner on their Timesheets page: they read the policy and tick "I have read and understand", recording who, when, the policy version, and the exact affirmation text.
- 4Open the Compliance dashboard (/admin/compliance) to see the "Outstanding timekeeping-policy acknowledgments" list: everyone who has never signed or is overdue for re-acknowledgment.
- 5When your policy changes, publish a new version. That marks every prior acknowledgment stale, so the whole workforce is prompted to re-sign.
Tip: This is separate from the per-period "I certify these hours" attestation at submit: one proves the hours are accurate, this proves the employee read the standing procedures. Submitting a timesheet while unacknowledged still works; it just shows a non-blocking reminder.
How to correct a timesheet entry with an audit trail
Corrections are made in place with a required reason: the original hours, the change, who made it, and why are all preserved.
- 1Open the period on Timesheets and edit the entry inline (or delete it).
- 2Once a period has left draft, a reason is required: a prompt asks why the recorded charge is changing before the correction saves.
- 3The correction keeps the original values alongside the change; nothing is erased silently, and corrections are never delete-and-re-add.
- 4Managers can review every correction in the correction ledger on Timesheet approvals.
How to export a timecard of record for an auditor
When an auditor asks "show me Jane's certified timecard for the week of 6/2 and every change made to it", this is the one document that answers it.
- 1Open Timesheets and select the pay period you need (managers can pick any employee's period from the list).
- 2In the period header, under "Timecard of record", click PDF for the document or CSV for the same data in a spreadsheet.
- 3The PDF has four sections: the daily entries as booked (date, charge code, contract, project, category, hours); a total-time-accounting summary of direct / indirect / leave / uncompensated overtime that reconciles to the entry grid; the complete correction trail, each change shown as prior -> new with its reason, who made it and when; and the employee certification plus supervisor approval.
- 4Hand the PDF over as-is, or open the CSV in Excel to filter and reconcile.
Tip: Nothing is hidden: an uncertified or unapproved period prints an explicit "NOT CERTIFIED" / "NOT APPROVED" rather than a blank, a corrected entry always shows its original value alongside the change, and a period that was force-submitted past the completeness check is flagged on the document. Requires the GovCon plan; you can export your own periods, and managers can export anyone in their organization.
How to approve timesheets as a manager
A rollup view aggregates every contractor: an approval inbox, missing submissions, billable hours by contract, and a CSV export for billing.
- 1Go to "Timesheet approvals" in the sidebar.
- 2The "Awaiting your approval" queue lists every submitted period waiting on you, alongside KPIs for billable hours and missing submissions.
- 3Click Approve to lock a period, or Reject with a reason to reopen it for the employee.
- 4Review the employee's certification, submission, and correction history on the period; every state transition is timestamped.
- 5Use the CSV export to hand approved billable hours by contract to billing.
How to monitor daily time-entry delinquency
A daily sweep flags employees who have fallen behind on contemporaneous entry and nudges them automatically — before an auditor would.
- 1Nothing to trigger manually: the sweep runs daily and detects elapsed workdays with zero recorded hours in an open period.
- 2Behind employees get an in-app and email nudge automatically, deduped so each person is nudged at most once per day.
- 3On Timesheet approvals, check the "Behind on daily entry" panel to see who is behind and on which dates.
- 4Wire the timesheet.delinquent webhook (Admin → Webhooks) to your Slack/Teams/Discord compliance channel to hear about it there too.
Tip: The monitor respects your configured workweek (default Mon–Fri), skips holidays, and applies a grace window so today is never flagged.
How to set up the holiday calendar
Mark paid holidays once and both the completeness gate and the delinquency monitor treat them like weekends. No more blocked submits on Thanksgiving.
- 1Open /settings/holidays (press Cmd+K and pick "Holiday calendar (federal + company)").
- 2Click "Seed U.S. federal holidays", pick the year, and click Seed. The 11 OPM federal holidays are filled in with observed-day shifting (a Saturday July 4th is observed the preceding Friday).
- 3Click Add holiday to add company-specific days alongside the federal ones.
- 4Every date on the calendar stops being a required workday for the completeness gate and is skipped by the daily delinquency monitor.
Tip: Seeding is idempotent per year: re-seeding never duplicates a date. The calendar is per-org and opt-in.
How to run the labor distribution & uncompensated-OT report
See how each employee's recorded time splits across charge codes and contracts, with an uncompensated-overtime dilution factor for exempt staff.
- 1Go to Reports, then open Labor Distribution (or go to /reports/labor-distribution).
- 2Pick the period range. For each employee, recorded hours are grouped by authorized charge code (falling back to the project/contract snapshot) with each code's share of total recorded hours.
- 3Check the uncompensated-overtime section: anyone who recorded more than the standard workweek shows a dilution factor (standard ÷ recorded; e.g. 40/50 = 0.80) reflecting how their effective per-hour cost spreads across codes.
- 4Click Export CSV for the org/period-range rollup.
Tip: The report is read-only and computed entirely from hours already recorded. The dilution factor is a planning estimate, not a certified rate.
Leave & PTO
2 guidesHow to request leave
Anyone can request their own leave; managers can request on behalf of others.
- 1Go to Leave in the sidebar and click Request leave.
- 2Pick the leave type, dates, and hours, then submit.
- 3If teammates on the same active assignment already have overlapping approved or pending leave, you get an advisory heads-up; the request still goes through so managers can plan coverage.
- 4Track the request's status on the page; you are notified when it is decided.
How to manage balances and approve leave
Per-person balances by leave type, automatic accrual, and an auto-deducting approval flow with a full decision audit trail.
- 1On Leave, managers see the pending queue with a count; click Approve or reject on each request.
- 2Approving deducts the hours from the matching balance automatically; cancelling restores them.
- 3Set a person's balance, accrual rate, accrual period, and balance cap in the balance form; PTO then accrues automatically every cycle with a full audit trail.
- 4Approved leave appears as a layer on the planning Calendar; toggle the "Leave / PTO" filter chip.
Tip: Wire the leave.requested and leave.decided webhooks to hear about requests and decisions in your team channel.
GovCon: clearances, proposals & opportunities
12 guidesHow to track clearances and reinvestigation dates
Record each clearance once and Hitt HR derives the two dates FSOs care about (inactivity lapse and reinvestigation due), with staged reminders for both.
- 1Open the candidate or employee in Talent Pool and add a clearance in the credentials section.
- 2Fill in the level (Public Trust through TS/SCI), status, granted date, expiry date, last-in-access date, investigation type (e.g. T5), and polygraph type.
- 3Leave "Reinvest. interval (mo)" blank to use the per-level default (Confidential 15yr / Secret 10yr / TS & TS/SCI 5yr), or override it.
- 4The profile shows the derived reinvestigation-due date; an inactivity-lapse date (last access + 24 months) is derived the same way.
- 5Both dates run the standard 90/60/30/14/7-day reminder ramp and fire the compliance.expiring webhook, same as expiry dates.
How to record agency and contract-type experience, then filter on it
Record which agencies a person has worked and which contract types they have performed under, then filter your talent pool and bench by both, and let matching weigh that history against an open role.
- 1Open a person in Talent Pool and click their name to reach their profile page.
- 2In the "Agency experience" card, click Add. Enter the agency (e.g. "Department of the Navy"), optionally years of experience, and any notes about programs or offices supported. Click Add.
- 3In the "Contract-type experience" card, click Add. Pick the contract type (IDIQ, T&M, FFP, Cost Plus, CPFF, CPAF, or CPIF), add optional notes, and click Add. These are contract types, not named vehicles; put SEWP or CIO-SP in a past-performance record instead.
- 4To remove an entry, hover the row in either card and click the × on the right.
- 5To filter the talent pool: go to Talent Pool and use the "Agency worked" box in the left filter panel (it suggests agencies already on file and matches partial names, so "Navy" finds "Department of the Navy"). Tick one or more boxes under "Contract type (any of)" to require at least one of them. Both compose with the clearance, experience, location, and skills filters.
- 6To filter the bench: go to Bench and use the "Agency worked…" box and the "Any contract type" dropdown in the filter row above the roster. Click Clear to reset all filters.
- 7Export CSV from either page and the agencies and contract types come with the rows.
- 8Run matching on a position that has an agency or contract vehicle set and the score breakdown includes a GovCon-experience dimension, with the reasoning naming the matching agency or contract type.
Tip: Candidates can maintain their own entries: on My Profile, the "Agency Experience" and "Contract-type Experience" cards in the right column let them add and remove their own history without a recruiter. Adding the same agency or contract type twice updates the existing entry rather than duplicating it.
How to report foreign travel and foreign contacts (SEAD-3)
Cleared personnel report foreign travel (normally before departure) and foreign contacts as they arise. File them here instead of by email, and your security office reviews them with a dated audit trail.
- 1Go to Security → Foreign Reporting in the sidebar.
- 2Choose "Foreign travel" or "Foreign contact" at the top of the "File a report" card.
- 3For travel, enter the destination country and departure date (required), plus return date and purpose if you know them. For a contact, enter the contact's name and country (required) and the nature of the association.
- 4Add anything else your FSO should know under "Additional details", then click "File report".
- 5Your security office is notified immediately. Track the outcome under "My reports": a report shows Submitted, Acknowledged, More info needed, or Closed.
- 6If it says "More info needed", the note from your security office appears on the report telling you exactly what to provide.
Tip: Report travel before you leave whenever you can; that is what SEAD-3 expects. A report filed after you get back is still accepted and is marked "filed after departure" for your FSO. This is a record-keeping tool that supports your self-reporting obligations; it does not transmit anything to a government system and does not replace your FSO's guidance. When in doubt, report it. GovCon plan only.
How to review foreign reports as an FSO
The security-office side of SEAD-3 self-reporting: an org-wide queue of foreign travel and contact reports, ordered so nothing ages out of sight.
- 1Go to Admin → Foreign Reports (admin role, GovCon plan).
- 2The tiles show how many reports await review, how many unresolved travel reports still have a departure date ahead, and how many are acknowledged or closed.
- 3The queue lists unresolved reports first, oldest first; resolved ones follow, newest first. Travel rows show how soon the person departs, and flag anything filed after departure.
- 4Click "Acknowledge" to record that you have seen a report, "Request info" to send it back (a note is required so the employee knows what to provide), or "Close" to resolve it.
- 5The employee is notified of the outcome either way, and your note appears on their copy of the report.
Tip: Closed reports cannot be reopened; they are part of the audit trail. If something changes after you close one, ask the employee to file a new report so the original record stays intact.
How to record adverse information and security violations (32 CFR 117.8)
The FSO-initiated side of your reporting obligations: adverse information about a cleared employee, suspicious contacts, security violations and infractions — recorded, adjudicated for reportability, and exportable for a self-inspection.
- 1Go to Admin → Compliance Monitor and click "Incident register" in the header (admin role, GovCon plan). The badge on that button is the number of unresolved incidents.
- 2Click "Record incident". Pick the type — Adverse information, Suspicious contact, Security violation, or Infraction — and, for adverse information, the adjudicative category (financial, criminal, alcohol/drugs, personal conduct, foreign preference, IT misuse, other).
- 3Pick the subject, or leave it on "No identified individual" — a violation with no attributed person is a normal record here, not missing data.
- 4Fill in when it occurred and when you discovered it (discovery defaults to today and is what the clocks and the date-range export run on), write a one-line summary, add the detail, and save.
- 5Open the incident to adjudicate it. Under "Reportability determination" choose Reportable or Not reportable and write the rationale — both are required, and we stamp your name and the time onto the record.
- 6Under "Submission record", type where you reported it, the date, and your reference number after you submit it yourself. These are your notes about what you did outside this product.
- 7Move the status as the work progresses (Open → Under review → Reported), then close it with the corrective action you took. A corrective action is required to close.
- 8Use the "Discovered from / to" filter and the CSV or PDF buttons to export the register for a period — the artifact you hand an assessor at a self-inspection.
Tip: Only FSO/compliance admins can read this register, and that is enforced at the database layer, not just in the UI — the subject of a record can never see it, which is why an unadjudicated allegation stays where it belongs. Elsewhere in the app you will only ever see a COUNT of someone’s open incidents (on their talent profile and on the Cleared Bench Roster), never the text. The daily compliance scan nudges you when an incident sits unresolved past your window (default 14 days) or when one you determined reportable still has no submission recorded (default 3 days), once per escalation rather than once a day, and fires the security.incident_open webhook to your channel; set SECURITY_INCIDENT_OPEN_DAYS and SECURITY_INCIDENT_REPORT_DAYS to change the windows. This is a system of record for your own security program: it does not transmit anything to DCSA, NBIS or DISS, it does not decide reportability for you, it is not a NISPOM or 32 CFR 117 compliance certification, and it is not legal advice. GovCon plan only.
How to track recurring security training (SETA)
Initial briefing, annual security refresher, insider-threat awareness — logged with a recurrence clock so the next one is scheduled the moment you complete the last one, instead of a hand-typed reminder that never comes back.
- 1Go to Compliance in the sidebar and find the "Security Training" card.
- 2Click Add. Pick the training: Initial Security Briefing, Annual Security Refresher, Insider Threat Awareness, Derivative Classification, SF-312 NDA, Foreign Travel Briefing, OPSEC, or Other.
- 3Set the date it was completed. The recurrence pre-fills from the training type (annual for the refresher and insider threat, one-time for the initial briefing and SF-312); change it if your program differs.
- 4Save. A recurring training shows its next due date and a status of Current, Due soon, or Overdue; a one-time training shows Complete (one-time) and never comes due again.
- 5When someone re-takes a recurring training, click Complete on that row. The next due date rolls forward by the recurrence interval and the reminder ramp restarts for the new cycle.
- 6As the training approaches its next due date, the daily compliance scan raises an auto item on the Compliance page and emails the holder at 90, 60, 30, 14 and 7 days out, then when it lapses (the same ramp that guards clearances).
- 7Admins: go to Admin → Compliance Monitor and use the Security Training Roster section to see who is current and who is overdue org-wide, then download CSV or PDF.
Tip: Items entering their 30-day window also fire the compliance.expiring webhook to your FSO/compliance channel. This tracks your training program and exports your own records: it does not deliver or score training, and it is not a NISPOM / 32 CFR Part 117.12 compliance certification. GovCon plan only for the roster export.
How to run the compliance monitor and export a cleared bench roster
One page scans for expiring clearances, certs, and work authorizations, and exports the point-in-time roster you hand to a prime or COR.
- 1Go to Admin → Compliance Monitor (/admin/compliance).
- 2Run the scan to surface expiring clearances, certifications, and I-9 / EAD / visa reverification dates on one alert engine.
- 3Individuals track their own items on Compliance (Add Item for ad-hoc renewals; Add Work Authorization for EAD/visa reverification dates; the Security Training card for recurring briefings and refreshers).
- 4In the Cleared Bench Roster section, filter by level or status, then download CSV or PDF: a point-in-time export of every clearance your org holds (level, status, investigation, poly).
- 5In the Security Training Roster section, filter by status, then download CSV or PDF: who is current, who is overdue, last completed and next due for every SETA record.
Tip: Items entering their 30-day window also fire the compliance.expiring webhook to your FSO/compliance channel, and push a notification to your admins' in-app inbox; see "How to get expiry alerts in your notification feed".
How to get expiry alerts in your notification feed
Admins are pushed the moment a clearance, certification, work authorization, or security training enters its renewal window, so remediation starts without anyone remembering to open the Compliance page.
- 1Nothing to switch on: if your role is admin, the daily compliance scan already writes to your notification bell (top right) and emails you when an item crosses into its 30-day window.
- 2Click the bell to see the alerts. Each one reads like "Clearance renewal: TS/SCI — expiring in 14 day(s)" with the affected person and the due date, and opens the Compliance page when you click it.
- 3You are alerted again at each stage as it gets closer (30, 14, and 7 days out, then when it lapses), so an item that is being ignored keeps surfacing rather than scrolling away.
- 4To change how you receive these, go to Settings → Notifications and find "A clearance, certification, or training is expiring". Turn off In-app to keep them out of the bell, or Email to stop the messages; the two are independent.
Tip: Only admins get these, and only inside the 30-day window: the 90- and 60-day stages stay a private nudge to the person whose credential it is, so your feed does not fill up months ahead. The affected person's own reminder email is unaffected by your settings and always sends. Turning both channels off silences your copy only; the webhook to your Slack/Teams/Discord channel is configured separately under Admin → Webhooks.
How to create and staff a proposal
Proposals tie together staffing plans, rate cards, past performance, and milestone schedules for every bid.
- 1Go to Proposals in the sidebar and click New Proposal.
- 2Fill in the basics (name, agency, solicitation number, due date) and click Create Proposal.
- 3Open the proposal to build the staffing plan: add seats, pick candidates, and price each seat.
- 4Back-plan the color-team milestone schedule (Questions Due, Pink/Red/Gold Team, Submission) from the RFP due date in one click; the daily scan alerts you before a review slips.
- 5Use the drafting assistant to generate section drafts (key personnel, technical approach) from the proposal record when you want a starting point.
How to screen a teaming partner on SAM.gov (and keep the record)
Check a teaming partner's exclusion status and SAM.gov registration and keep the result (who checked, when, and what SAM said) instead of a check that vanishes when you close the box.
- 1Go to the Network (Subcontractor Network) section in the sidebar.
- 2When adding a partner, click "Verify on SAM.gov" in the Add Teaming Partner form; the result is saved as a screening of record when you create the agreement.
- 3For an existing agreement, each partner row shows a status badge: "Excluded", "Registration expiring", "Clear · screened {date}", or "Never screened".
- 4Click "Re-screen" on a partner to run a fresh check now; click "History" to see every past screening (manual and scheduled) with its date and result.
- 5A scheduled sweep re-checks partners on your draft/active agreements and notifies your org owners if a partner becomes excluded or its SAM registration is within 30 days of lapsing.
Tip: This records your own checks and helps you show due diligence: it is not an official exclusion determination, and it does not transmit anything to SAM.gov or DCSA. Requires the GovCon plan and a configured SAM.gov API key.
How to build an LCAT rate-card library
Define standard labor-category bill rates once: every proposal's staffing plan pre-fills them, so rates stop drifting per bid.
- 1Open /settings/rate-cards (press Cmd+K and pick "New rate card (LCAT bill rate)").
- 2Click New rate card and enter the labor category (LCAT), bill rate, optional rate basis, effective date, and escalation %.
- 3In a proposal's staffing plan, pick an LCAT while pricing a seat; the bill rate, labor category, and rate basis pre-fill. Override per seat any time.
- 4Update a card whenever rates change: rates are snapshotted at add time, so already-saved seats never rewrite.
Tip: Rate cards are a planning / basis-of-estimate aid, not a certified or DCAA rate.
How to search SAM.gov opportunities
Search live federal contract, grant, and SBIR/STTR opportunities without leaving the app, then hand any of them to a draft proposal in one click.
- 1Go to Opportunities in the sidebar (GovCon plan).
- 2Enter a keyword, or browse SAM.gov contracts directly by NAICS code (2–6 digits, e.g. 541519) and set-aside (8(a), HUBZone, SDVOSB, WOSB, Total Small Business).
- 3Click Search and review the results.
- 4Click the bid action on any opportunity to spin up a draft proposal pre-filled from the solicitation; if a proposal for that solicitation already exists, you are taken to it instead of creating a duplicate.
People operations
4 guidesHow to build your org chart
Every position renders as a node in a reporting tree, useful for proposal staffing tables and client demos.
- 1Go to Org Chart in the sidebar. Every position you have created appears as a node; open reqs show in green, filled and draft are color-coded.
- 2Click a node and set "Reports to" to place it in the tree. The server walks the parent chain before saving, so you cannot create a reporting cycle.
- 3Set a display label to change how a node renders without renaming the actual position.
- 4Export the chart when you need it for a proposal or review.
How to run performance reviews
Milestone-aware placement reviews (30/60/90-day, 6-month, annual) that flag themselves when due.
- 1Go to Performance in the sidebar and create a review for an active placement, choosing the milestone (30-day, 60-day, 90-day, 6-month, annual, or ad-hoc).
- 2Score the outcome on the rubric (Exceeds / Meets / Developing / Below) plus a 1–5 rating.
- 3Capture would-rehire and retention-risk, the two signals that feed Quality of Hire on Reports.
- 4Reviews that come due flag themselves: a daily scan computes each placement's milestone dates from the start date and fires the review.due webhook and a manager digest when no review has been logged yet.
Tip: The auto-flagging is a workflow reminder only; it carries no certification or compliance guarantee.
How to collect employee referrals
A shareable referral form feeds a tracked queue with status and reward bookkeeping.
- 1Share the /refer page with your team. The form captures the referred person's name, contact, LinkedIn, target position, and why they fit.
- 2The referrer must confirm they have permission to share the person's contact info before submitting.
- 3Track submissions on Referrals in the sidebar; update each referral's status as it moves through your process.
- 4Track reward status per referral (e.g. mark it paid) so referral bonuses never get lost.
How employee voluntary self-identification works
Employees record protected-veteran and disability status themselves, on their own page, and can change it any time. It exists to produce aggregate federal reporting numbers — and nothing else.
- 1Any signed-in employee opens Voluntary Self-ID in the Personal section of the sidebar (/my/self-id).
- 2They choose a protected-veteran answer and a disability answer, or "I prefer not to answer" for either. "Prefer not to answer" is a real, stored answer, not a blank; it is counted separately from "never answered" in the report.
- 3They click Save. They can come back and change either answer whenever they like; there is no lock-in and no re-invitation deadline enforced by the app.
- 4Nobody else can read an individual answer: not a manager, not a recruiter, not an administrator. Database row-level security limits reads to the person themselves, and the only consumer, the VETS-4212 report, computes counts server-side.
- 5Admins see the aggregate numbers on /reports/vets-4212. There is no screen anywhere in the app that shows one person's self-ID.
Tip: Self-identification is never used in matching, scoring, ranking, screening, or any hiring, assignment, or pay decision, and the code has no path to do so. If an employee is not linked to an organization yet, the page tells them there is nothing to self-identify into rather than saving an orphan record.
Reports & analytics
4 guidesHow to read the reports dashboard
Six core KPIs, a hiring funnel with conversion rates, and source effectiveness — on one page.
- 1Go to Reports in the sidebar.
- 2The KPI row covers applications, positions opened, matches generated, offers extended, hires, and proposals.
- 3The funnel shows applications by status with stage-to-stage conversion percentages.
- 4Source effectiveness breaks down which channels (careers page, referral, LinkedIn) drove which hires.
- 5For deeper cuts, open Headcount Budget or Labor Distribution from the sidebar and reports pages.
How to run EEO and adverse impact reports
Aggregate voluntary self-identification breakdowns plus automatic four-fifths-rule selection-rate monitoring, exportable for OFCCP work and your AAP.
- 1Go to Admin → EEO Reports (/admin/eeo); the page is admin-only.
- 2Set the date range to scope the applicant flow you are analyzing.
- 3Review the aggregate EEO breakdowns by gender, ethnicity, veteran status, and disability, and export them to CSV.
- 4Scroll to Adverse Impact Analysis: each protected group's selection rate and impact ratio is computed at every gate (applied→shortlisted, →hired, →not-rejected), groups below the 0.80 threshold are flagged, and small samples are suppressed.
- 5Export the adverse impact table to CSV for your records.
Tip: These reports support your compliance program: they are analysis aids, not legal advice or a certification.
How to track offer acceptance analytics
A live rollup of acceptance rate, decline/expiration mix, and median days-to-accept — per position, without a spreadsheet.
- 1Go to /dashboard/offer-acceptance (Pro analytics).
- 2Read the headline numbers: acceptance rate, decline rate, and median days-to-accept.
- 3Check the per-position breakdown to see which roles convert and which stall.
- 4Numbers stay honest automatically: the daily sweep expires overdue offers so lingering drafts never inflate your rate.
How to run the VETS-4212 workforce report
The workforce (employee) counts a federal contractor transcribes onto its annual VETS-4212, plus the Section 503 and VEVRAA comparisons, built from your assignment history and voluntary employee self-identification. Report only: nothing is filed with the DOL and none of it is legal advice.
- 1First, invite your people to self-identify. Every signed-in employee has a Voluntary Self-ID page under the Personal section (/my/self-id) where they record protected-veteran and disability status, or choose "I prefer not to answer". Participation is voluntary and declining carries no adverse action; the page says so, and nothing in matching, screening, or scoring reads the answers.
- 2Go to VETS-4212 Report in the sidebar (/reports/vets-4212), or open it from the EEO / OFCCP report or the Reports page. It needs the GovCon plan and an admin role.
- 3Set "Period ending" to your benchmark payroll date. The report covers the inclusive 12 months ending on that date; the period start is shown above the table.
- 4Read the per-hiring-location table: employees on the benchmark date, protected veterans among them, disability self-ID, the maximum and minimum headcount at any point in the period (both are literal VETS-4212 fields), new hires, and protected-veteran new hires. Hiring location comes from the position attached to each assignment; assignments with no position land in an "Unspecified" row rather than disappearing.
- 5Check the "No answer" and "Declined" columns before you file. They are your response-rate dilution: a low veteran count with a high no-answer count means you have a self-ID response problem, not necessarily a hiring one.
- 6Read the two cards at the top: Section 503 compares your disability self-ID rate against the utilization goal, and VEVRAA compares the protected-veteran share of new hires against the hiring benchmark. Both thresholds are read from settings (keys vevraa_hiring_benchmark_pct and section_503_utilization_goal_pct) and are never hardcoded, because the DOL republishes the VEVRAA benchmark every year. If a card reads "not configured", set the current value rather than assuming last year's.
- 7Click Export CSV for the filing-shaped export: one row per hiring location plus a CONSOLIDATED row, with the same numbers the page shows.
Tip: The consolidated maximum and minimum are org-wide figures, deliberately NOT the sum of the per-location maxima; two sites peaking on different dates would otherwise overstate your org. Every other consolidated column is an exact sum of the locations above it.
Admin & billing
5 guidesHow to review the fraud queue
Risk-scored entities queue for a human decision, ordered by score with clear risk bands.
- 1Go to Admin, then open the Fraud Review Queue card (/admin/fraud).
- 2Entities are listed by risk score with a band (high / review / clear); filter to the band you are working.
- 3Open an entry to see the signals behind the score.
- 4Confirm or clear each entry to record the reviewer decision.
Tip: High-risk scores also fire the fraud.high_risk webhook the moment they are computed.
How to set up webhooks for Slack, Teams, or Discord
Sixteen milestone events, from application.created to timesheet.delinquent, can post to any channel the moment they happen.
- 1Go to Admin, then open Webhooks (/admin/webhooks) and click Add webhook.
- 2Name it, pick the provider (Slack, Teams, Discord, or a generic URL), and paste the webhook URL.
- 3Toggle on the events you want: application.created, offer.signed, compliance.expiring, timesheet.delinquent, leave.requested, fraud.high_risk, and more.
- 4Click Test to send a test message (tests are proxied server-side, so chat providers' CORS rules do not break them).
- 5Save. Events post to the channel in real time from then on.
How to curate the skills catalog
Résumé parsing auto-creates skills, so the catalog needs occasional gardening: rename typos and merge duplicates without losing candidate tags.
- 1Go to Admin, then open Skills Catalog (/admin/skills).
- 2Rename a skill inline to fix casing or typos.
- 3Use Merge on a duplicate to fold it into the canonical skill; candidate tags move over automatically.
- 4Delete skills that should not exist at all.
How to manage your plan and billing
Subscriptions, payment methods, and invoices live on one billing page; plan changes happen in-app.
- 1Go to Billing in the sidebar (/dashboard/billing).
- 2To upgrade from Free, click "Upgrade to Pro" / "Choose a plan"; you pick Pro or GovCon and monthly or annual on the pricing page.
- 3Existing subscribers change plans from the same pricing page; the switch is applied to your current subscription in-app.
- 4Update your card on the billing page (embedded, no redirect) and download past invoices from the invoices section.
How to create and redeem coupons
Admins mint percent-off or amount-off codes; buyers redeem them during checkout.
- 1Go to Coupons in the sidebar (/admin/coupons).
- 2Enter a code, choose percent-off or amount-off, set the value, and create the coupon.
- 3To redeem: on checkout, expand "Have a coupon?" and enter the code before starting payment; the discount applies to the subscription.
- 4You can also share a pricing link with ?coupon=CODE appended; checkout arrives with the code pre-filled.
For candidates
3 guidesHow to apply for a job on the careers page
Applications are a single form: contact details, résumé, screening questions, and optional EEO self-identification.
- 1Browse open roles at /careers and open the position that fits.
- 2Fill in your name, email, and contact details, add a cover letter and résumé link if you have them, and answer the position's screening questions.
- 3The EEO self-identification section is voluntary; it is used only in aggregate compliance reporting.
- 4Confirm the consent checkbox and submit. You will hear back by email, and if you create an account with the same address you can track the application under My Applications.
How to track your applications and sign an offer
Candidates with an account get a personal workspace for applications, offers, and eSigning.
- 1Sign in; your sidebar shows the Personal section.
- 2Open My Applications to see the live status of everything you have applied to.
- 3Open My Offers when an offer arrives. Review the terms and the letter, and download the PDF if you want a copy.
- 4To accept, open the signing page, type your full legal name, and click Accept Offer (or Decline). The electronic signature is timestamped and legally binding.
Tip: Keep your profile current under My Profile; you can upload a résumé there and have it parsed into your profile fields.
How to follow your onboarding checklist as a new hire
Once you have accepted an offer, My Onboarding shows the paperwork, clearance, equipment, access, and training items for your first days, and how far along everything is.
- 1Sign in and open My Onboarding in the Personal section of the sidebar.
- 2The card at the top shows your role, your start date, your workflow status, and one overall percentage complete.
- 3Below it, tasks are grouped by category (Paperwork, Clearance & background, Equipment, Accounts & access, and Training), each with its own percentage.
- 4Items marked "Yours to complete" are the ones waiting on you (I-9, W-4, direct deposit, NDA, SF-86 and similar); anything else shows which team is handling it.
- 5Check back any time to watch items get ticked off as your recruiter receives them.
Tip: This view is read-only: your recruiter marks items complete as they come in, so there is nothing to submit here. If your checklist is empty, your onboarding has not been started yet, or it was created before your account existed; reply to your onboarding email and your recruiter can link it up. Progress counts required tasks only, so optional items never hold your percentage back.