GitHub - ReevoAI/meeting_ci_interview_solution · GitHub
Skip to content

ReevoAI/meeting_ci_interview_solution

Repository files navigation

Meeting Intelligence Platform - Solution

This is the solution repository for the meeting intelligence interview problem.

Purpose

This repository contains:

  • ✅ Fully implemented models.py
  • ✅ Complete meeting_service.py with all phases implemented
  • ✅ All tests passing
  • 📋 INTERVIEWER_GUIDE.md with interview instructions

Quick Start

1. Install Dependencies

uv sync

2. Run Tests

# Test individual phases
uv run python run_tests.py phase1
uv run python run_tests.py phase2

# Test all phases
uv run python run_tests.py all

All tests should pass ✅

For Interviewers

See INTERVIEWER_GUIDE.md for:

  • How to conduct the interview
  • What to look for in each phase
  • Discussion prompts and follow-up questions
  • Time management guidelines
  • Evaluation criteria

Project Structure

meeting_ci_question_solution/
├── README.md                 # This file
├── INTERVIEWER_GUIDE.md      # Interview guide for you
├── problem.md                # Same as candidate sees
├── pyproject.toml            # Python dependencies
├── data.py                   # Mock database
├── llm_client.py            # Mock LLM client
├── models.py                # ✅ Complete models
├── meeting_service.py       # ✅ Complete implementation
├── run_tests.py             # Test runner
└── tests/                   # Test files
    ├── test_phase1.py
    ├── test_phase2.py
    ├── test_phase3.py
    ├── test_phase4.py
    ├── test_phase5.py
    └── test_all.py

What's Implemented

Phase 1: Pydantic Models

  • Complete User, Contact, Meeting models
  • All optional fields added
  • Proper type hints

Phase 2: CRUD Operations

  • get_all_meetings() with filtering
  • get_meeting() with error handling
  • create_meeting() with validation
  • update_meeting() with partial updates
  • delete_meeting() with validation

Phase 3: Availability Algorithm

  • Time interval merging
  • Gap detection
  • Work hours filtering
  • Multiple user support
  • Edge case handling

Phase 4: Pre-Meeting Prep

  • Historical meeting fetching
  • LLM prompt construction
  • JSON response parsing
  • Structured output generation

Phase 5: Error Handling

  • Exponential backoff retry logic
  • LLM failure handling
  • Proper exception management
  • Graceful degradation

Using This During Interview

  1. Before interview: Review INTERVIEWER_GUIDE.md
  2. During interview: Have this repo open for reference
  3. Compare: Check candidate's approach vs solution
  4. Discuss: Use as basis for architectural discussions

Verification

All tests pass:

uv run python run_tests.py all

Expected output: ✅ ALL PHASES PASSED

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

Languages