π HorizonAI
π Inspiration
The tech landscape evolves at a breakneck pace, leaving many aspiring and mid-career professionals lost in a sea of conflicting advice, outdated roadmaps, and generic learning paths. We were inspired by the belief that career planning shouldn't be based on guesswork.
The core problem we observed was the disconnect between static educational content and the dynamic reality of the job market. Traditional roadmaps fail to account for individual contexts like geographic location, which drastically affects salary expectations and opportunity availability due to Purchasing Power Parity (PPP).
We envisioned a system that bridges this gap by harnessing real-time market intelligence to craft personalized, evidence-based career trajectories.
βοΈ What It Does
HorizonAI is a FastAPI-based web application that generates personalized, evidence-backed technical career roadmaps.
Instead of providing generic skill lists, it creates a dynamic, phased learning plan tailored to:
- π― Target career goal (ML Engineer, DevOps, Backend Developer, etc.)
- π Current experience level
- π Country of residence
- β³ Weekly study hours
flowchart LR
A[User Inputs Goal,<br/>Level, Country, Hours] --> B[Background Job<br/>Initiated]
B --> C[Career Intelligence<br/>Pipeline Aggregates Data]
C --> D{Live Data<br/>Available?}
D -- Yes --> E[Enrich with Live<br/>Jobs, Trends, Scholarships]
D -- No --> F[Apply Curated<br/>Fallback Data]
E --> G[Roadmap Engine<br/>Generates Phased Plan]
F --> G
G --> H[Apply PPP Salary<br/>Adjustments]
H --> I[Store in SQLite DB<br/>& Render Roadmap]
I --> J[Interactive Roadmap<br/>with Progress Tracking]
β¨ Core Capabilities
π― Personalized Roadmap Generation
Creates structured, multi-phase learning plans with:
- Learning phases
- Topics
- Milestones
- Recommended resources
π Live Career Intelligence
Aggregates information from:
- Public job boards
- Internship listings
- Hiring trends
- Market demand
to make roadmap recommendations relevant to the current industry.
π JD Scan & Skill Gap Analysis
Users can upload a Job Description (JD) to:
- Compare required skills
- Identify missing technologies
- Receive roadmap recommendations based on actual hiring requirements
π° PPP-Adjusted Salary Localization
Provides realistic salary expectations based on:
- Country
- Purchasing Power Parity (PPP)
- Local market trends
instead of using misleading global averages.
β Progress Tracking
Users can mark roadmap nodes as completed through the API and monitor learning progress over time.
π οΈ How We Built It
π§ Technical Stack
| Layer | Technology |
|---|---|
| Backend | FastAPI |
| Database | SQLite |
| Templates | Jinja2 |
| Frontend | HTML + CSS + Vanilla JavaScript |
| Background Processing | FastAPI Background Tasks |
| Testing | Pytest |
ποΈ Architecture
Backend
FastAPI powers the application because of:
- High performance
- Async support
- Automatic Swagger documentation
- Easy API development with Pydantic
Database
SQLite stores:
- Generated roadmaps
- User progress
- Cached career intelligence
- Job metadata
Database initialization happens automatically on startup.
Career Intelligence Pipeline
career_intelligence_pipeline.py
Responsible for collecting career intelligence from multiple sources.
Workflow:
- Fetch live jobs
- Fetch internship opportunities
- Gather market trends
- Fetch scholarships (when available)
- Merge results
If external APIs fail:
- gracefully switch to curated data
- use
ppp_data.json - continue roadmap generation without interruption
Roadmap Engine
roadmap_engine.py
Responsible for:
- Generating roadmap graphs
- Building learning phases
- Selecting technologies
- Salary estimation
- Progress updates
- Track management
Supports multiple career tracks including:
- Frontend
- Backend
- AI / ML
- DevOps
- Data Science
- Cloud
- Cybersecurity
Asynchronous Processing
Roadmap generation can take several seconds.
Instead of blocking requests:
/generate- Creates background job
- Returns Job ID
- UI redirects to loading page
- Loading page polls:
/api/job/{job_id}
until roadmap generation is complete.
This prevents browser timeouts while improving user experience.
Frontend
Built using:
- Jinja2 Templates
- HTML
- CSS
- Vanilla JavaScript
The focus was simplicity, responsiveness, and functionality.
π§© Challenges We Ran Into
1. Data Reliability
External APIs are unpredictable.
Problems included:
- Rate limits
- Downtime
- Slow responses
- Unexpected JSON formats
Solution
Implemented a multi-tier fallback system:
Live APIs
β
Cached Results
β
Curated Static Data
The application always produces useful output, even when external services fail.
2. PPP Salary Calculation
Salary localization required integrating economic data from multiple regions.
Challenges included:
- Different currencies
- Cost of living differences
- Purchasing Power Parity adjustments
We solved this by building a curated ppp_data.json dataset and dynamically applying country-specific salary adjustments.
3. Background Job State Management
Synchronizing:
- Background generation
- API status
- Frontend polling
required careful job state management to ensure users always received accurate progress updates.
4. Balancing Scope
The original vision was much larger than the available hackathon timeline.
We focused on delivering the core product loop:
User Input
β
Career Intelligence
β
Personalized Roadmap
β
Progress Tracking
before expanding with additional features.
π Accomplishments That We're Proud Of
- β Built a fully functional FastAPI web application
- β Designed a deployable architecture (supports Render deployment)
- β Integrated real-world career intelligence sources
- β Created robust fallback mechanisms for API failures
- β Developed an intuitive progress-aware roadmap workflow
- β Built a REST API with 20+ endpoints
- β Added smoke tests and endpoint testing using Pytest
π What We Learned
π‘ Product Insights
Personalization matters.
A roadmap for:
Software Engineer in India
is fundamentally different from:
Software Engineer in Germany
because of:
- Salary expectations
- Hiring demand
- Technology adoption
- Cost of living
- Local opportunities
Context is everything.
βοΈ Technical Insights
Graceful degradation is essential for applications that depend on external APIs.
Instead of assuming APIs will always work, systems should be designed with failure in mind.
Reliable fallback data proved just as valuable as live integrations.
π FastAPI Advantages
FastAPI significantly accelerated development through:
- Automatic API documentation
- Pydantic validation
- Type hints
- Async support
- Clean routing
π Structured Data Matters
Curating ppp_data.json required significant effort, but it became the backbone of reliable roadmap generation whenever live sources were unavailable.
π What's Next for HorizonAI
1. User Authentication
Add:
- OAuth
- Google Login
- GitHub Login
to enable:
- Saved roadmaps
- Personalized dashboards
- Long-term progress tracking
2. Expanded Career Intelligence
Integrate:
- GitHub Trending
- Coursera
- Udemy
- LinkedIn Jobs
- Stack Overflow Jobs
- Additional internship platforms
to improve recommendation quality.
3. AI-Powered Features
Use Large Language Models to:
- Generate richer roadmap descriptions
- Explain skill gaps
- Summarize job descriptions
- Provide adaptive learning recommendations
- Offer personalized career coaching
4. Community Features
Allow users to:
- Share roadmaps
- Publish learning journeys
- Compare progress
- Discover successful career paths
Anonymized community data can improve future roadmap recommendations.
5. Advanced Visualization
Upgrade the roadmap interface using tools like:
- React Flow
- D3.js
to create:
- Interactive graphs
- Zoomable learning paths
- Dependency visualization
- Parallel learning tracks
π‘ Ultimate Vision
Become the "Waze for Tech Careers."
A dynamic, community-powered navigation system that doesn't just plan your learning journeyβit continuously adapts it.
Just as Waze reroutes drivers around traffic, HorizonAI will:
- π Detect market shifts
- π§ Respond to deprecated technologies
- π₯ Highlight emerging skills
- π― Personalize learning paths
- πΌ Recommend opportunities in real time
Our goal is to help every learner navigate the fastest, smartest path to their dream tech career.
Log in or sign up for Devpost to join the conversation.