The Complete Technical Hiring Framework
A comprehensive framework for hiring exceptional engineers, from defining roles to making offers, with scorecards and templates.
The Complete Technical Hiring Framework
Hiring is the highest-leverage activity a CTO does. One great hire can transform a team. One bad hire can set you back months. Here's the complete framework I use to consistently hire exceptional engineers.
Phase 1: Define the Role
Before posting a job, get crystal clear on what you actually need.
The Role Definition Document
1. Role Context
- Why does this role exist?
- What problem does it solve?
- How does it fit into the broader team?
2. Success Metrics
- What does success look like in 3 months?
- What about 6 months?
- What about 12 months?
3. Required vs. Desired Skills
Required (must-haves):
- Core technical skills
- Communication ability
- Alignment with values
Desired (nice-to-haves):
- Domain expertise
- Specific framework knowledge
- Previous scale experience
The rule: Keep required skills minimal. You're hiring for potential, not a perfect match.
The Leveling Guide
Define clear expectations for each level:
Junior (0-2 years)
- Executes well-defined tasks
- Learns quickly, asks good questions
- Contributes to team culture
- Growing technical skills
Mid-level (2-5 years)
- Owns features end-to-end
- Makes good technical decisions
- Mentors junior engineers
- Reduces ambiguity
Senior (5-8 years)
- Owns systems and initiatives
- Sets technical direction
- Multiplies team effectiveness
- Handles high ambiguity
Staff+ (8+ years)
- Influences organizational direction
- Architects complex systems
- Grows other senior engineers
- Drives business impact through technology
Phase 2: Source Candidates
The best candidates aren't actively looking. Go find them.
Sourcing Channels
Active sourcing (best ROI):
- LinkedIn outreach (personalized messages)
- GitHub contributions (find people building great things)
- Conference speakers
- Open source maintainers
- Referrals from your network
Passive sourcing:
- Job boards (limited effectiveness)
- Recruiters (expensive but can work)
- University recruiting (for junior roles)
The Outreach Template
Hi [Name],
I came across your work on [specific project/contribution] and was impressed by [specific detail].
We're building [brief company/product description] and looking for [role] who can [key challenge].
Given your background in [relevant experience], I thought you might be interested or know someone who would be.
Would you be open to a brief chat?
[Your name]
Key principles:
- Personalize every message
- Show you did your homework
- Lead with interesting problem, not company perks
- Make it easy to respond
Phase 3: Screen Efficiently
Your time is precious. Filter effectively before investing deeply.
The Screening Process
Step 1: Resume Review (5 minutes)
Look for:
- Clear progression and growth
- Impact, not just responsibilities
- Technology alignment
- Red flags (frequent job hopping without reason)
Pass criteria: "Could this person plausibly do the job?"
Step 2: Phone Screen (30 minutes)
Structure:
- 5 min: Build rapport, explain role
- 15 min: Technical discussion (not a coding test)
- 5 min: Sell the opportunity
- 5 min: Logistics and questions
Questions to ask:
- "Walk me through your most impactful project"
- "Tell me about a technical decision you made and how it turned out"
- "What are you looking for in your next role?"
- "What questions do you have for me?"
What you're evaluating:
- Communication clarity
- Technical depth (on their own projects)
- Motivation alignment
- Basic culture fit
Decision: Yes/No to full interview loop (make it within 24 hours)
Phase 4: The Interview Loop
A well-designed interview loop evaluates all critical dimensions without redundancy.
Loop Structure (4-5 hours total)
Interview 1: Technical Depth (60 min)
- Focus: Can they actually code?
- Format: Live coding problem
- Evaluator: Senior engineer
Interview 2: System Design (60 min)
- Focus: Can they architect systems?
- Format: Whiteboard/discussion (mid+ level)
- Evaluator: Senior/Staff engineer
Interview 3: Cultural Fit (45 min)
- Focus: Values alignment and communication
- Format: Behavioral questions
- Evaluator: Hiring manager
Interview 4: Cross-functional Skills (45 min)
- Focus: Can they work with non-engineers?
- Format: Scenario discussion
- Evaluator: Product or peer from another team
Interview 5: Leadership (45 min - senior+ only)
- Focus: Can they lead and influence?
- Format: Past experience deep-dive
- Evaluator: Engineering leader
The Coding Interview (Details)
Problem selection criteria:
- Real-world relevant (not brain teasers)
- Multiple valid approaches
- Allows for follow-up complexity
- Can be solved in 30-40 minutes
What you're evaluating:
- Problem-solving approach
- Code quality and style
- Communication during coding
- Testing mindset
- Response to hints/feedback
Red flags:
- Can't explain their thinking
- Gives up quickly
- Ignores edge cases
- Writes untestable code
Green flags:
- Asks clarifying questions
- Thinks out loud
- Considers trade-offs
- Tests their code
- Accepts feedback gracefully
The System Design Interview
Problem examples:
- "Design a URL shortener"
- "Design a rate limiter"
- "Design a news feed"
Evaluation criteria:
- Requirements gathering
- High-level architecture
- Component design
- Scalability thinking
- Trade-off analysis
The 45-minute structure:
- 5 min: Requirements and constraints
- 10 min: High-level design
- 20 min: Deep dive on components
- 10 min: Scaling and edge cases
Behavioral Interview Questions
Use the STAR method (Situation, Task, Action, Result) to evaluate.
Leadership:
- "Tell me about a time you had to influence without authority"
- "Describe a situation where you had to make a difficult technical decision"
Collaboration:
- "Tell me about a time you disagreed with a teammate"
- "Describe how you've worked with product managers"
Growth mindset:
- "Tell me about a time you failed"
- "Describe something new you learned recently"
Values alignment:
- [Customize based on your company values]
Phase 5: Decision Making
Make consistent, objective decisions using scorecards.
The Interview Scorecard
For each interview, rate candidates on:
Technical Skills (1-4 scale)
- 1: Significant concerns
- 2: Some concerns, likely No
- 3: No concerns, likely Yes
- 4: Strong Yes, exceeded expectations
Communication (1-4 scale) Problem-solving (1-4 scale) Cultural Fit (1-4 scale)
Overall recommendation:
- Strong Yes (would be excited to work with)
- Yes (would be happy to work with)
- No (has concerns)
- Strong No (would not hire)
Written feedback: Specific examples supporting your rating
The Debrief Meeting
Structure:
- Each interviewer shares rating before discussion
- Discuss discrepancies
- Hiring manager makes final call
- Document decision and reasoning
Decision criteria:
- No Strong No votes
- Majority Yes or Strong Yes
- No major red flags in any area
- Bar raiser agrees (someone who represents company standards)
The rule: When in doubt, pass. False positive (bad hire) is much more costly than false negative (missed good hire).
Phase 6: Closing the Candidate
You made an offer. Now convince them to accept.
The Offer Components
Compensation:
- Market-rate base salary
- Equity (explain the potential value)
- Benefits
- Bonuses/performance incentives
Use data: Know your market (use levels.fyi, Pave, Option Impact)
The role:
- Specific responsibilities
- Team composition
- Growth opportunities
- Impact potential
The opportunity:
- Company vision and traction
- Technical challenges
- Learning opportunities
- Culture and values
The Closing Process
1. Reference checks
- Call 2-3 references
- Ask about strengths and areas for growth
- Confirm nothing surprising
2. Make the offer
- Call first (don't email)
- Express genuine excitement
- Walk through the offer
- Send written offer within 2 hours
3. Address concerns
- Schedule follow-up calls
- Arrange team member conversations
- Answer all questions thoroughly
- Be transparent about challenges
4. Maintain momentum
- Set decision timeline (typically 3-5 days)
- Check in every 1-2 days
- Make yourself available
5. Handle negotiation
- Expect it (it's normal and healthy)
- Know your boundaries beforehand
- Be fair and consistent
- Move quickly on decisions
Common Hiring Mistakes
1. Hiring for Skills Over Potential
Mistake: Requiring 5 years experience in 3-year-old framework Fix: Hire for learning ability and fundamentals
2. Overselling the Role
Mistake: Painting unrealistic picture Fix: Be honest about challenges
3. Taking Too Long
Mistake: Losing great candidates to faster companies Fix: Complete loops within 1 week, offer within 2 days
4. Gut-Feel Decisions
Mistake: "I just have a good feeling" Fix: Use structured scorecards and criteria
5. Hiring in Your Image
Mistake: Only hiring people like you Fix: Diverse interview panels and explicit values
6. Lowering the Bar Under Pressure
Mistake: "We need someone now" Fix: A bad hire costs more than staying short-staffed
Tools and Templates
Interview Scorecard Template
Candidate: [Name]
Role: [Position]
Interviewer: [Your name]
Date: [Date]
Technical Skills: [ 1 / 2 / 3 / 4 ]
Evidence:
Communication: [ 1 / 2 / 3 / 4 ]
Evidence:
Problem-Solving: [ 1 / 2 / 3 / 4 ]
Evidence:
Cultural Fit: [ 1 / 2 / 3 / 4 ]
Evidence:
Overall Recommendation: [ Strong No / No / Yes / Strong Yes ]
Written Summary:
Concerns/Risks:
Phone Screen Template
Pre-call research:
- Review resume/LinkedIn
- Check GitHub/portfolio
- Note 2-3 specific things to ask about
Opening (5 min):
- Introduce yourself and role
- Brief company/team overview
- Set expectations for call
Technical Discussion (15 min):
- Most impactful project
- Recent technical decision
- Technical challenge overcome
Selling (5 min):
- Exciting challenges we're working on
- Team culture
- Growth opportunities
Logistics (5 min):
- Timeline expectations
- Candidate questions
- Next steps
Post-call:
- [ ] Update scorecard
- [ ] Advance to loop OR send rejection
- [ ] Do within 24 hours
Metrics to Track
Hiring funnel:
- Applications → Phone screens (aim for 20-30%)
- Phone screens → On-sites (aim for 30-40%)
- On-sites → Offers (aim for 30-40%)
- Offers → Acceptances (aim for 70%+)
Quality metrics:
- 90-day retention (aim for 95%+)
- Performance review scores
- Manager satisfaction
- New hire time-to-productivity
Diversity metrics:
- Pipeline diversity
- Interview-to-offer conversion by demographic
- Retention by demographic
Final Thoughts
Hiring is a skill that improves with practice. Start with a solid framework, measure your results, and continuously refine.
The best hiring processes are:
- Respectful of candidate time
- Predictive of actual job performance
- Consistent across all candidates
- Efficient with your team's time
- Fair and unbiased
Remember: You're not just filling a role. You're adding someone who will shape your culture, influence your decisions, and determine your success.
Hire well.
What's worked in your hiring process? What would you add to this framework?