Inspiration New hires drown in access tickets, random wiki links, and unclear expectations—while HR and hiring managers lack one place to see readiness, ramp work, and unlocks. We wanted a single narrative: validate the hire, ship a real training plan, gate risky tasks with AI proof, and earn tools (Slack, GitHub, Jira…) only as momentum builds—plus mentor and IT support without more spreadsheets.
What it does Recruit portal: resume, skills, test + interview scores → persona, hire validation, mixed 30/60/90 tasks (code challenges, problem sets, pairing, docs, milestones). Training desk: progress, scorecard, AI submission review before proof-gated tasks can complete; progressive tool grants after N completed tasks. Mentor chat: conversational help grounded on knowledge search + profile. IT triage: open tickets with AI diagnosis and playbooks (auto-resolve or queue). Config-driven stack: run fully mock/offline or wire real LLMs and vendors via .env. How we built it Backend: FastAPI, SQLAlchemy/SQLite, modular backend/integrations/ with a factory (get_llm, get_identity, get_hris_adapter, get_persona_store, get_knowledge_search, get_scheduler, get_change_intelligence, get_agent_orchestrator, get_web_scraper). Domain: employees, plans/tasks, evaluations, scorecards, submissions, access grants, support tickets, portal /portal/onboard and /portal/employees/.../dashboard, /mentor/chat. Coach layer: hire_coach ties hire validation, task grading, team match, and IT resolution to LLM + knowledge + (when enabled) Overmind for safe windows. Frontend: React/Vite SPA with roster, recruit form, desk, mentor, IT queue, rewards ladder. Ops: npm run dev (API + UI), npm run db:clear / npm run db:seed for local resets and demo data. Challenges we ran into SQLite vs evolving models: create_all doesn’t migrate; we added startup patches for missing columns and had to align plan_tasks with new fields (points_weight, requires_validation). Windows dev friction: reserved/bind issues on port 8000 → moved dev API to 8787 and scoped uvicorn --reload-dir backend so huge vendor trees don’t reload the API. Honest integrations: some sponsor paths need Docker, TLS, or extra pip deps (e.g. Aerospike client, Airbyte Platform creds)—so ONBOARD_PROFILE=local and mocks stay first-class for demos. Accomplishments that we're proud of One portal that turns a hire + assessments into a personalized ramp and visible progress—not a static checklist. Proof-gated tasks with scorecard + unlocks so “game loop” and least-privilege access tell the same story. Pluggable sponsors behind clear capability switches—swap identity/state/LLM without rewriting routers. Polished UI (dark theme, desk, mentor, IT, rewards) that matches real workflows end-to-end on a laptop. What we learned Schema + SQLite needs either migrations or small, explicit patches for demos; deleting onboard.db is still the blunt hammer. “Mentor” and “grader” behave better when RAG/knowledge and hire context are explicit in prompts, not bolt-on chat only. Progressive access is easy to explain to stakeholders and maps cleanly to tier thresholds in code. What’s next for EmployeeOnboarding Alembic (or similar) for real migrations; optional Postgres for multi-tenant demos. SSO + RBAC on the portal; webhooks from real HRIS for “hire confirmed” → auto onboard. Richer proof types (PR URLs, artifact upload) and sandboxed code-check workers (e.g. scheduled jobs). Analytics: cohort completion, time-to-unlock, mentor themes, IT deflection rate. How we used sponsors (conceptual map) Sponsor / capability Role in the product Where it lives (idea-level) OpenAI (or AWS Bedrock) Persona, roadmap, pulse synthesis, knowledge answers, task proof grading, mentor replies LLM_PROVIDER → factory → hire_coach, services, mentor Auth0 (or mock) Provision/revoke app access; progressive grants layer on top IDENTITY_PROVIDER → default access + unlock bundles Bland AI Intake & weekly pulse calls (voice schedule hooks) VOICE_PROVIDER → post-intake automation Airbyte HRIS / ATS-shaped ingest; Platform mode for Ashby/Greenhouse via Airbyte API HRIS_INGEST_PROVIDER, airbyte_ats Aerospike Low-latency persona/sentiment snapshots PERSONA_STORE_PROVIDER Macroscope Internal knowledge search for mentor + grading context KNOWLEDGE_SEARCH_PROVIDER TrueFoundry Hosted jobs: recurring pulse, scans SCHEDULER_PLATFORM Overmind “Safe window” checks before noisy team nudges / celebrations CHANGE_INTELLIGENCE_PROVIDER in team match flow Kiro Multi-step post-intake agent orchestration AGENT_ORCHESTRATOR Apify Fetch/index URL text for RAG pipe
Built With
- aerospike
- airbyte
- amazon-web-services
- auth
- auth0
- bland
- macroscope
- overmind
- python
- react
Log in or sign up for Devpost to join the conversation.