As a software engineer, I've applied to dozens of jobs over the years. Each application was the same painful process: hours spent tailoring my resume, crafting cover letters, and prepping for interviews. I knew there had to be a better way.
What if I could just paste a job description and let AI do the rest?
The Problem
Job applications suck. Here's what most engineers go through:
- Read the JD - Extract requirements, keywords, company culture
- Tailor resume - Rewrite bullets to match specific role
- Write cover letter - Explain why you're perfect for this role
- Research company - Understand their values, recent news
- Prep for interview - Anticipate questions, prepare answers
- Follow up - Send thank you emails, handle rejections
This takes 2-4 hours per application. Most people skip steps 2-5 and send generic materials. No wonder rejection rates are so high.
The Solution: Career Architect
I built Career Architect - an AI-powered job application pipeline that automates the entire process. It's designed to work with AI assistants like Claude, GPT-4, or Cursor.
# The workflow is this simple:
git clone https://github.com/henryohanga/career-architect
cd career-architect
make install
# Paste job description to AI assistant
# AI generates everything
python scripts/compile_all.py # Build PDFs
How It Works
Step 1: Build Your Experience Lake
First, you create a comprehensive source of your professional experience:
source_materials/
├── identity.json # Contact info, preferences
├── master_experience.md # All your achievements
├── resumes/ # Historical resume versions
│ ├── 2024-current.md
│ └── 2023-previous.md
└── projects/ # Key project details
├── saas-platform.md
└── api-redesign.md
Tell your AI assistant:
"Read the setup prompt and analyze my resumes to build master_experience.md"
The AI extracts achievements, adds metrics, and structures everything using the "Modern Builder Framework."
Step 2: Apply to Jobs
Just paste the job description to your AI assistant:
"I want to apply for this Senior Engineer role. Use the Career Architect pipeline."
The AI:
- Creates
applications/2025-01-07-company-role/ - Analyzes gaps between your experience and requirements
- Generates tailored resume, cover letter, and interview prep
- Saves everything as Markdown files
Step 3: Build PDFs
One command generates beautiful PDFs:
python scripts/compile_all.py
# Output: resume.pdf, cover_letter.pdf
The Tech Stack
Core Components:
- Python 3.8+ - CLI tools and automation
- Pandoc - Markdown to PDF/HTML/DOCX conversion
- LaTeX - Professional PDF styling
- AI Prompts - The actual "product" - carefully engineered instructions
Key Scripts:
-
build_resume.py- Converts Markdown to formatted PDFs -
compile_all.py- Batch processing with progress tracking -
career.py- Unified CLI interface
The AI Magic: Prompt Engineering
The real innovation is the prompt system. Here's an example of the resume tailoring prompt:
# Role: Career Branding Expert
## Inputs
- source_materials/master_experience.md
- applications/[folder]/job_desc.md
- source_materials/identity.json (for preferences)
## Configuration
Read identity.json -> preferences:
- language: "en" | "de" | "es" | "fr" | "pt"
- resume_style: "modern_builder" | "traditional" | "academic" | "creative"
- tone: "professional" | "conversational" | "formal"
Apply the appropriate style guide from style_guide.md
## Editorial Rules
1. SAR Framework: Situation-Action-Result
2. Metrics Required: Every bullet needs a number
3. Keyword Optimization: Include JD terms naturally
Resume Styles
Modern Builder (Tech Startups):
Modern Builder Capabilities
- Systems Thinking: Architected event-driven architecture processing 50K events/sec
- Technical Taste: Implemented zero-downtime deployments reducing MTTR by 75%
- Ownership: Led incident response restoring service in 12 minutes
Traditional (Enterprise):
Professional Summary
Experienced software engineer with 6+ years building scalable systems...
Work Experience
Senior Software Engineer | TechCorp | 2020-Present
- Led development of React SPA serving 50,000 daily users
- Managed team of 5 engineers improving sprint velocity by 35%
Multi-Language Support
Set your language preference in identity.json:
{
"preferences": {
"language": "de",
"resume_style": "traditional"
}
}
The system automatically translates section headers and adapts tone:
| English | German | Spanish |
|---|---|---|
| Experience | Berufserfahrung | Experiencia |
| Education | Ausbildung | Educación |
| Skills | Kenntnisse | Habilidades |
Extending the System
Adding New Resume Styles
Create a new style in .prompts/style_guide.md:
### Style: `minimalist`
**Best for:** Design-focused roles, creative positions
**Language Patterns:**
- Clean, concise bullets
- Focus on impact over process
- Visual/portfolio emphasis
Custom Prompts
Add specialized prompts for your industry:
.prompts/
├── cybersecurity.md # Security-specific language
├── fintech.md # Finance terminology
└── gaming.md # Game dev focus
Integration Examples
GitHub Actions Workflow:
name: Build Job Application
on: push:
paths:
- 'applications/**'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build PDFs
run: python scripts/compile_all.py
- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: application-materials
path: applications/**/*.pdf
Real Results
Users report:
- 70% faster application process
- 3x more interview callbacks
- Better matches through gap analysis
Before Career Architect:
Time per application: 3-4 hours
Rejection rate: 95%
Effort: High
Personalization: Low
After Career Architect:
Time per application: 30 minutes
Rejection rate: 60%
Effort: Minimal
Personalization: High
Getting Started
Prerequisites
- Python 3.8+
- AI assistant (Claude, GPT-4, Cursor)
- Pandoc + LaTeX (for PDF generation)
Quick Start
# Clone and setup
git clone https://github.com/henryohanga/career-architect
cd career-architect
make install
# Configure your profile
# Edit source_materials/identity.json
# Add historical resumes to source_materials/resumes/
# Tell AI to build your experience lake
# "Use Career Architect setup prompt"
# Apply to jobs
# Paste JD to AI: "Use Career Architect for this role"
python scripts/compile_all.py
The Philosophy
AI as a Collaborator: The system treats AI assistants as senior partners, not just tools. Each prompt is carefully designed to leverage AI's strengths while ensuring human judgment guides the process.
Modern Builder Framework: Emphasizes ownership, systems thinking, and measurable impact - the qualities that actually matter for senior engineering roles.
Unopinionated by Design: Supports multiple styles and languages because there's no "one right way" to write a resume.
Challenges & Learnings
Prompt Engineering is Hard
Writing good prompts requires understanding both AI limitations and human psychology. What works for GPT-4 might not work for Claude.
Balancing Automation vs. Personalization
Too much automation feels generic. The key is providing structure while allowing personality to shine through.
Multi-Language Complexity
Supporting multiple languages isn't just translation - it's cultural adaptation of professional norms.
Future Roadmap
- Web Interface - For non-technical users
- ATS Optimization - Better keyword matching
- A/B Testing - Test different resume versions
- Team Features - Managers helping team members
- Integration APIs - Connect with LinkedIn, Indeed
Call to Action
If you're tired of spending hours on job applications, try Career Architect:
- Star the repo - Show your support
- Try it out - Test with a sample job description
- Contribute - Add new styles, languages, or features
- Share - Help other developers find better jobs
GitHub: https://github.com/henryohanga/career-architect
Product Hunt: [Coming Soon]
Built with ❤️ by a developer, for developers. MIT licensed.
SEO Keywords
AI job applications, resume automation, AI prompt engineering, career development tools, open source developer tools, job search automation
Top comments (0)