This is the solution repository for the meeting intelligence interview problem.
This repository contains:
- ✅ Fully implemented
models.py - ✅ Complete
meeting_service.pywith all phases implemented - ✅ All tests passing
- 📋
INTERVIEWER_GUIDE.mdwith interview instructions
uv sync# 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 allAll tests should pass ✅
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
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
- Complete User, Contact, Meeting models
- All optional fields added
- Proper type hints
get_all_meetings()with filteringget_meeting()with error handlingcreate_meeting()with validationupdate_meeting()with partial updatesdelete_meeting()with validation
- Time interval merging
- Gap detection
- Work hours filtering
- Multiple user support
- Edge case handling
- Historical meeting fetching
- LLM prompt construction
- JSON response parsing
- Structured output generation
- Exponential backoff retry logic
- LLM failure handling
- Proper exception management
- Graceful degradation
- Before interview: Review
INTERVIEWER_GUIDE.md - During interview: Have this repo open for reference
- Compare: Check candidate's approach vs solution
- Discuss: Use as basis for architectural discussions
All tests pass:
uv run python run_tests.py allExpected output: ✅ ALL PHASES PASSED
