LOCAL PREVIEW View on GitHub

amazon-chatbot-experience

Senior ML Platform / Applied AI Engineer interview-prep portfolio, built around the MangaAssist case study (an Amazon-style anime → manga reading-order recommendation product) plus 30+ topic deep-dives that cover the full system-design and operations surface.

📖 Browse online

The whole repo is published as a searchable Jekyll site:

Once Cloudflare Pages is configured, the URL will land here. See "Deploying" below.

The site is built from this repo's markdown by Jekyll + the just-the-docs theme — every folder is a section, every .md file is a page, and search works across all of it.

🧭 Where to start

Goal Read this
Learn the case study cold 01-problem-statement.md16-final-summary.md
Drill on system design HLD-Questions and LLD-Questions
Prep behavioural / leadership Leadership-Narrative and POC-to-Production-War-Story
Brush up GenAI eval Evaluation-Systems-GenAI
Cost / latency tradeoffs Cost-Optimization-Offline-Testing
See the working code mangaassist_web/ (Next.js + FastAPI) and streamlit_app/ (21-page prototype)

🗂️ Layout

Path What's there
01-*.md16-*.md The MangaAssist case study, in narrative order
Topic folders (e.g. LLMOps/, Evaluation-Systems-GenAI/, RAG-MCP-Integration/) Notes grouped by interview competency. Each folder has an auto-generated index.md with a summary + interview talking points + file table
mangaassist_web/ Production-shaped Next.js 14 + FastAPI app
streamlit_app/ Streamlit prototype with 21 experimental pages
mangaassist_3d/ WebGL atlas exploration
experiments/ Per-experiment hypothesis + results
_config.yml, Gemfile, index.md Jekyll config for the GitHub Pages site
scripts/gen_docs_indexes.py Regenerates each folder's index.md after you add new notes

🛠️ Local preview of the docs site

# one-time
gem install bundler
bundle install

# serve at http://127.0.0.1:4000
bundle exec jekyll serve

After adding new notes to a folder, refresh the per-folder file index:

python scripts/gen_docs_indexes.py

The generator only rewrites the block between <!-- AUTO:START --> and <!-- AUTO:END --> markers, so any hand-written summary or interview talking points above them are preserved.

🚀 Deploying

This private repo can't use GitHub Pages on the Free plan (Pages on private repos requires GitHub Pro). The deploy runs on Cloudflare Pages instead — free, supports private GitHub repos, native Jekyll buildpack.

One-time setup (Cloudflare Pages)

  1. Go to https://dash.cloudflare.com → Workers & PagesCreatePagesConnect to Git.
  2. Authorize the Cloudflare Pages GitHub App for the SrikanthVelpuri/amazon-chatbot-experience repo.
  3. Build settings: - Framework preset: Jekyll - Build command: bundle exec jekyll build - Build output directory: _site - Environment variables: RUBY_VERSION = 3.2.2 (also pinned in .tool-versions)
  4. Click Save and Deploy. First build takes ~2-3 min (cold bundler). Subsequent builds are ~30 s thanks to dependency caching.
  5. The site lands at https://amazon-chatbot-experience.pages.dev. Add a custom domain under Custom domains if you want.

After that, every push to main rebuilds and redeploys automatically — no manual step.

Local preview without Ruby

python scripts/build_preview.py
python -m http.server -d _preview 8765
# open http://localhost:8765

This builds 6 representative pages styled to match the deployed Jekyll site — fast sanity-check tool, not a full replacement.

Why not GitHub Pages?

.github/workflows/pages.yml still works as a workflow_dispatch runbook for the day this repo goes public or you upgrade to Pro. Until then, pushes don't trigger it.

📜 License

Notes are personal interview prep — not legal, security, or financial advice. The MangaAssist case study is a fictional design exercise inspired by Amazon's catalog and chatbot patterns; nothing here represents Amazon.