Skip to main content

Case Study

RECRUITMENT & ONBOARDING PORTAL

Role

Full-Stack Developer

Platform

Recruitment & Onboarding Platform

Core capabilities

  • SSO Sync
  • Document Onboarding
  • Application Pipeline
  • Geo Analytics
Job Portal — application interface

What is Job Portal?

An enterprise recruitment platform covering the full hiring pipeline: job posting and publishing, candidate applications with resume handling, document-heavy employee onboarding, and the administration of the people and records behind it. Identity runs through an external AuthCenter with signed, bidirectional user sync, and the admin dashboard turns tracked activity into visit, conversion and geography reporting.

What I built

  • AuthCenter SSO with HMAC-signed sync. Sign-in is federated rather than local-only: an SSO redirect and callback flow against an external AuthCenter, Google social login as a second path, and a signed back-channel where AuthCenter POSTs user lifecycle events to an HMAC-verified endpoint. The sync APIs sit behind bearer-token middleware that compares secrets in constant time, and status changes propagate back through a queued job so a slow identity provider never blocks a request.
  • Document, certification and policy pipeline. Documents are uploaded singly or in batch, assigned to a specific user and job, and moved through approval or rejection. Certifications carry their own expiry dates, and policy acknowledgments record the IP address and user-agent at the moment of consent — so compliance is a queryable audit trail rather than a reconstruction from memory.
  • Onboarding progress engine. Onboarding completion is computed from the documents actually assigned, uploaded and acknowledged, not ticked by hand — one percentage that the hire sees as a progress bar and the administrator reads as a workload signal.
  • Analytics with cached geolocation. The dashboard is built from tracked page visits, deduplicated per session so a refresh is not a new visit. IP geolocation resolves through cached lookups with 5–30 minute TTLs instead of an API call per pageview, feeding conversion rates, geographic applicant mapping and monthly job-activity charts.
  • Job postings as a lifecycle. Postings move through a draft-to-publish workflow with duplication and starring, and an expiry date that a scheduled command enforces every minute — an old role closes itself rather than being discovered as stale. Uploaded cover photos run through a GD quality loop that steps JPEG quality from 85 down toward 40 until the file fits its 300 KB target.
  • Applicant pipeline and queued notifications. An application carries a resume, cover letter, custom answers and tagged skills, and moves through Shortlisted, Interview, Hired, Rejected, Resume Reviewed and Pending states. Duplicate applications and applications to expired jobs are blocked before insert, and both new applications and status changes notify the right side of the desk through queued email.

System scope

  • Full recruitment lifecycleJob posting through application review to hire, onboarding and the employee record — one system instead of a job board, an inbox and a document folder.
  • Document & certification pipelineSingle and batch uploads assigned per user and per job, approval and rejection states, certification expiry tracking, and soft-deleted history kept for audit.
  • Onboarding & policy complianceA computed onboarding percentage, emergency-contact capture with signed consent, and policy acknowledgments logged with IP and user-agent.
  • SSO & identity syncExternal AuthCenter single sign-on with HMAC-signed bidirectional user sync, bearer-token middleware, and Google social login.
  • Job lifecycle & publishingDraft-to-publish postings with duplication, star tracking, GD cover-photo compression, and scheduled close-out of expired roles.
  • Analytics & trackingSession-deduplicated visit tracking with cached IP geolocation, conversion rates, and geographic applicant mapping on the admin dashboard.

Inside the product

A role page carries the whole decision — location, employment and pay structure, position count and the description — and the apply action holds state: once applied, the page says so instead of offering it again.
The candidate's dashboard keeps that state visible: every application with its current standing, here Hired for the Columbus role and Applied for Phoenix, so the pipeline is legible from the applicant's side.
After a hire, the same account becomes an onboarding workspace. The job filter scopes every document to one position, the progress bar computes completion, and assigned documents, personal uploads, company policies and certifications each have their own shelf.

LET'S BUILD
YOUR NEXT SYSTEM

Whether you are hiring for a backend engineering role, architecting a multi-system SaaS platform, or automating complex operational workflows — let's connect.

0/1500

or download my technical resume →