Hesam Alavi.
Menu
HomeProjectsServicesAboutContact
Work with me
Back to projects

Haga: AI-Powered Job Matching Platform

Full-stack, multi-tenant HR platform that uses AI to match visa-ready candidates to roles with explainable scoring.

Role
Sole Full-Stack Developer & Technical Architect
Industry
HR Tech / Recruitment
SaaS PlatformAI/LLM IntegrationAdmin DashboardPaymentsSecurity & Auth
Next.js 14TypeScriptSupabase (PostgreSQL)Supabase Auth (MFA)Anthropic ClaudeStripeResendstyled-componentsZustandReact Hook FormZod

The challenge

Australian employers struggle to find skilled, visa-ready candidates and commonly rely on manual spreadsheets and agencies. There was no productised way to search, filter, and assess candidates with clear visa context.

The solution

Designed and built a multi-tenant platform for candidates, employers, and admins. Implemented AI-powered matching using Anthropic Claude with multi-dimensional scoring (skills, experience, qualifications), employer pipelines, Stripe-based billing, admin dashboards, and strong security via RLS and MFA.

Key highlights

  • Multi-step candidate onboarding with detailed profiles, resumes, and visa status.
  • AI-powered matching and explainable scoring across skills, experience, and qualifications.
  • Employer dashboards for job posting, candidate pipelines, and analytics.
  • Admin tools for candidate approval, prompt configuration, and system debugging.
  • Secure multi-tenant architecture using Supabase Row Level Security and RBAC.
  • Stripe integration for invoices, subscriptions, and payments.

AI & automation

Core to the product: Anthropic Claude powers candidate-role matching, scoring, and reasoning with configurable prompts and thresholds.

Outcome & impact

Delivered a production-ready platform that founders can use to onboard real candidates and employers without needing an engineer in the loop. It elevates their offering from a manual service to a scalable SaaS product.

Gallery

Like what you see?

I'd love to hear about what you're building. Let's figure out how I can help.

Get in touch