Skip to content
Back to work
AI career platformJun — Jul 2026

Sahara

An AI career assistant that scores and rewrites resumes with retrieval-augmented generation and generates full learning courses in the background.

Role
Solo · backend
Architecture
Django API + RabbitMQ workers
Period
Jun — Jul 2026
Category
AI career platform

Context

Generic AI resume tools give vague advice because they know nothing about the reader's actual resume or the role. I wanted feedback grounded in the user's own content, and course generation that does not block the web request while an LLM writes dozens of lessons.

Approach

Resumes are parsed, embedded, and stored in pgvector. When a user asks for a review, the most relevant chunks are retrieved by cosine distance and passed to Gemini, which returns structured scores and rewrites. Course generation is pushed onto RabbitMQ queues and handled by separate workers for subtopics, content, and bulk jobs.

Architecture

RESUME_PIPELINE // RAGresume upload
PDF

Embedder

vector encode

RETRIEVAL

pgvector cosine

Gemini structured output

PIPELINE_REPORT

  • resume parsed and split into chunks
  • nearest chunks retrieved by cosine distance
  • course jobs queued to three RabbitMQ workers

Key decisions

  1. 01

    Retrieve before you prompt

    Only the closest resume chunks go into the prompt, which keeps answers specific to the user and keeps token usage bounded.

  2. 02

    Workers recover their own unfinished work

    On startup each worker resets items left in a generating state by a crashed process, so a restart picks up where the last one stopped.

  3. 03

    Poison messages do not loop forever

    Messages that fail are acknowledged and recorded instead of requeued endlessly, so one bad job cannot block the queue.

Implementation

  • pgvector similarity search over resume and course embeddings
  • Gemini prompts returning structured ATS scores and rewrites
  • Pluggable resume enhancers (keywords, skills, summary) and PDF formatter
  • Three RabbitMQ workers with durable queues for course generation

Technologies

  • Python
  • Django
  • PostgreSQL
  • pgvector
  • Gemini
  • RabbitMQ

Outcomes

  • 141 tests running in GitHub Actions CI
  • Frontend deployed on Vercel

Hiring for backend or platform work?

I'm looking for backend engineering roles in distributed systems, high-throughput pipelines, or security infrastructure, remote or with relocation. I'm also happy to talk about any of the projects here.

I reply personally, usually within 24 hours.

Good to know

  • Currently a full-time SDE at MiniOrange in Pune.
  • Open to remote roles and to relocation.
  • Comfortable in both Java/Spring and Go codebases.