Implement a Constraint Solver for a Lisbon Tourism Scheduler
Overview
What this challenge is about.
Implement a Constraint Solver for a Lisbon Tourism Scheduler. Intermediate challenge in code. Writing production code that solves real engineering problems, ...
The Brief
What you'll do, and what you'll demonstrate.
Implement a backtracking CSP solver that produces a feasible weekly tour-guide roster for a real-sized scenario.
This is not a coding exercise. It is the work a software engineer does between a Jira ticket and a merged PR. That distinction matters to every hiring manager who has seen candidates solve LeetCode problems and none who have shipped production code under real constraints.
When you finish, you will have something most graduates do not: a real-world deliverable, verified by Ewance, that you can show to a hiring manager and say "I did this. Here is the proof."
Earning criteria — what you'll demonstrate
- Model a real-world scheduling problem as a constraint satisfaction problem
- Implement backtracking search with arc-consistency
- Apply variable and value ordering heuristics to speed up search
- Communicate algorithmic limits (when the solver may fail) to operations users
Program Fit
Where this fits in your program.
Sharpens the same skills your degree expects you to demonstrate.
Introduction to Artificial Intelligence
Bachelor · Ai Systems
Strong alignment
This challenge maps to Introduction to Artificial Intelligence at the Bachelor level. It sharpens the same practical skills your coursework expects — but in a real industry context with actual constraints and deliverables.
Skills
Skills you'll demonstrate.
Each one shows up on your verified credential.
- Constraint Satisfaction
Apply constraint satisfaction to solve real industry problems and demonstrate production-level capability.
- Backtracking Search
Apply backtracking search to solve real industry problems and demonstrate production-level capability.
- Python
Write clean, efficient Python for data processing, automation, and backend services.
- Scheduling
Apply scheduling to solve real industry problems and demonstrate production-level capability.
- Algorithm Design
Apply algorithm design to solve real industry problems and demonstrate production-level capability.
- Operations Research
Apply operations research to solve real industry problems and demonstrate production-level capability.
Careers
Career paths this challenge builds toward
Completing this challenge demonstrates skills that transfer directly to these roles:
AI Engineer
Modeling a real operational problem as a CSP and shipping a working solver is the entry-level AI engineer's daily craft in operations-tech companies.
This challenge sharpens
- constraint-satisfaction
- algorithm-design
- python
Data Scientist
Translating fuzzy operational rules into precise constraints is a transferable analytical skill data scientists use in optimization-flavored work.
This challenge sharpens
- scheduling
- operations-research
- algorithm-design
Machine Learning Engineer
Clean Python plus algorithmic discipline transfer directly to the MLE's bread-and-butter of shipping reliable backend services.
This challenge sharpens
- python
- backtracking-search
- algorithm-design