A Rails 8 application for tracking, analyzing, and strategizing a job search. Built to centralize opportunity tracking, interview preparation, technology demand analysis, and career narrative development — turning raw job search activity into actionable intelligence.
Portfolio context: This project demonstrates AI-assisted rapid development workflow — building a working, data-driven solution to a real automation need using modern Rails conventions.
- Dashboard Analytics — Role distribution, technology demand trends, weekly application tracking, and open/assessed/response metrics
- Opportunity Tracking — Full CRUD with filtering, sorting across 10+ columns, salary range standardization, and fit/trajectory/bus-factor scoring
- Multi-Role System — Role-specific metadata via JSONB with concern modules for Software Engineer, Sales Engineer, Solutions Engineer, Product Manager, Support Engineer, and Success Engineer
- Technology Demand Analysis — 75 tracked technologies across 6 categories with combination analysis, pairing insights, and learning priority recommendations
- Company & Contact Management — Track target companies with market analysis fields, contacts with automatic URL shortening
- Interview Session Tracking — Stage/format/status tracking, confidence scoring, signal assessment, and follow-up management
- STAR Story Library — Categorized stories with strength scoring, usage tracking, and outcome linking to opportunities
- Resource Sheets & Interview Guides — Auto-generated prep sheets from opportunities, plus behavioral, technical, interviewer, and acquired question guides
- CSV Exports — Export opportunities, interview sessions, and STAR stories for external analysis
- Demo Mode — Read-only access for unauthenticated visitors to explore the app without an account
- PWA Support — Installable as a mobile app with service worker caching, web app manifest, and offline-ready static assets
- Responsive Design — Mobile-friendly layouts with adaptive dashboard grid, responsive table column visibility, and sticky table headers
- CI/CD Pipeline — Brakeman security scanning, RuboCop linting, importmap audit, and RSpec test suite via GitHub Actions
| Layer | Technology |
|---|---|
| Framework | Ruby on Rails 8.0.3 |
| Language | Ruby 3.4.6 |
| Database | PostgreSQL |
| Authentication | Devise 5.0 |
| Frontend | Hotwire (Turbo + Stimulus), Importmap, Tailwind CSS 4 |
| Asset Pipeline | Propshaft |
| Background Jobs | Solid Queue |
| Caching | Solid Cache |
| WebSockets | Solid Cable |
| Testing | RSpec, Shoulda Matchers, Factory Bot, Capybara |
| Security | Brakeman |
| Linting | RuboCop (Rails Omakase) |
| Deployment | Docker, Kamal, Thruster |
- Ruby 3.4.6
- PostgreSQL 14+
- Node.js (for asset compilation, if needed)
- Bundler
git clone https://github.com/ntxtthomas/career_intelligence.git
cd career_intelligencebundle installCreate a .env file in the project root. Registration is disabled — the owner account is created via db:seed using these credentials:
OWNER_EMAIL=[email protected]
OWNER_PASSWORD=your_secure_passwordThe database defaults in
config/database.ymlshould work without additional configuration for most local PostgreSQL setups. Only addDATABASE_*variables if your setup differs.
bin/rails db:create
bin/rails db:migrate
bin/rails db:seedSeeding creates an owner user (from your .env values), a demo user, and 75 technologies across 6 categories with sample demo data.
bin/devVisit http://localhost:3000 to access the dashboard.
bundle exec rspecThe CI pipeline also runs on every PR and push to main:
| Job | Description |
|---|---|
scan_ruby |
Brakeman security analysis |
scan_js |
Importmap dependency audit |
lint |
RuboCop style enforcement |
test |
Full RSpec suite with PostgreSQL service |
app/
├── controllers/ # RESTful controllers for all resources
├── models/
│ ├── concerns/
│ │ └── role_types/ # Multi-role concern modules (SE, Sales, Solutions, PM, etc.)
│ └── ... # Domain models (Opportunity, Company, Contact, etc.)
├── services/ # TechStackAnalyzer, RoleFocusAnalyzer, CSV exporters
├── views/ # ERB templates with role-specific form partials
└── docs/ # Internal engineering documentation
A summary of planned enhancements — see the Roadmap wiki page for details.
- PWA for mobile access
- Responsive design for smaller screens
- Improved sign-in page UI
- Dockerized deployment
- Public deployment (URL TBD)
- Enhanced GitHub Actions CI/CD
- RAG/VectorDB for refined data analysis
- Wins tracking system
- GraphQL endpoint
For deeper documentation, see the GitHub Wiki:
- Architecture & Technical Design
- Features & Usage Guide
- Data-Driven Job Search Strategy
- Roadmap & Future Enhancements
This project is licensed under the MIT License.
Terry Thomas — [email protected]
