You've decided Tier 2 is right for your role. Now comes the hard part: evaluating whether a candidate is actually Tier 2 or just resume-inflated.
RainTech's vetting process focuses on three validation criteria: resilience, technical competence, and global communication readiness—backed by actual interview questions and assessment rubrics.
This guide walks you through the same framework our team uses to assess 3,000+ professionals.
The Three Validation Criteria
Before diving into specific questions, understand what we're measuring. A true Tier 2 developer demonstrates:
Resilience & Adaptability
They problem-solve independently without constant escalation. They operate with incomplete information and make reasonable calls. When critical feedback arrives, they don't get defensive, they process it and adjust. This differentiates developers who stall when facing ambiguity from those who ship.
Technical Competence
They know their craft. Not just "knows React" but understands trade-offs in component architecture, can explain why they chose certain patterns, and articulates past system decisions. This is testable through questions and code review.
Global Communication Readiness
Not just English fluency, but awareness of professional communication norms, async work culture, and cross-cultural collaboration. They understand directness (Western communication style) vs indirectness (APAC style) and can adapt. This surfaces in how they explain their past work.
Don't want to run your own assessment? Running full technical assessments takes time and expertise. If you'd rather have pre-vetted Tier 2 developers ready to go, we handle the vetting for you.
Book your free 30-minute consultation → we'll discuss:
- How many Tier 2 engineers you need
- Timeline and role specifics
- How our vetting process compares to yours
Part 1: Before the Interview (Resume & Portfolio Review)
Start assessment before the call. A strong Tier 2 portfolio tells a story.
What to Look For
- Production system examples. "Maintained X system handling Y requests/month for Z company." Concrete scale matters. If they can't name a system they've actually shipped, that's a yellow flag.
- Technology depth progression. Junior Tier 1 resume: "Learned React, built CRUD app." Tier 2 resume: "Led React component architecture refactor, improved page load by 40%, mentored two junior engineers." Notice the shift from task completion to leadership and impact.
- GitHub activity. Consistent contributions showing system design thinking, not just tutorial implementations.
- Written communication quality. Read their README files and code comments. Is writing clear? Do they explain decisions or just show code?
Red Flags at Resume Stage
- Vague job descriptions. "Worked on web development at startup" (no specifics = likely Tier 1 with inflated framing).
- No production scale mentioned. If they don't talk about systems they shipped or users served, they may lack production experience.
- Resume gaps unexplained. Short stints (3-4 months repeatedly) without explanation warrant questions.
- Skills list without context. "Expert in 15 technologies" usually means surface-level knowledge (Tier 1 exploring), not Tier 2 depth.
Part 2: Technical Interview (1-1.5 hours)
Technical assessment should test three things: system design thinking, code quality judgment, and communication clarity.
Section 1: System Design Discussion (30 mins)
Ask them to design a system they've built or a system similar to their past work. Make it relevant—not abstract "design Netflix" questions.
Example question: "Tell me about the last feature you shipped end-to-end. Walk me through your architecture decisions. Why did you choose that approach? What were the trade-offs?"
What you're listening for:
- Do they explain trade-offs? (Tier 2 thinking = "I chose A because of X benefit, but downside is Y")
- Do they ask clarifying questions before designing? (Tier 2 = asks; Tier 1 = jumps into solution)
- Can they articulate why they made decisions, not just what they did?
- Do they mention monitoring, testing, or scalability? (Tier 2 = thinks about operations)
Red Flags:
- Can't explain their own past decisions clearly
- Defensive when you ask "why"
- Doesn't mention testing, monitoring, or error handling
- Jumps to "I'd use X technology" without understanding the problem first
Section 2: Code Review Exercise (30 mins)
Show them a code snippet with intentional issues. Ask them to review it.
// Example code snippet (pseudocode)
function fetchUserData(id) {
const data = api.call(id); // Issue: No error handling
processData(data); // Issue: Async/timing problem
return data;
}
Issues embedded in snippet:
- Missing error handling on API call
- Async problem (process data might run before data returns)
- No input validation (what if id is null?)
What you're listening for:
- Do they catch functional issues or just style problems?
- Do they think about edge cases? (Tier 2 = "what if this array is empty?" Tier 1 = "variable names should be clearer")
- Can they explain WHY something is problematic, not just flag it?
- Do they ask for context? ("What's the scale of data?" = Tier 2 thinking)
Scoring rubric:
- Tier 1: Catches style issues, misses functional bugs.
- Tier 2: Catches functional issues, asks about context, explains impact.
- Tier 3+: Catches functional issues, considers scalability and maintainability.
Section 3: Communication & Resilience (30 mins)
Ask behavioral questions designed to surface communication quality and resilience.
Communication questions:
- "Tell me about a time you had to explain a technical decision to non-technical stakeholders. How did you approach it?" Listen for: Can they simplify without losing accuracy? Do they check for understanding?
- "Describe a project where your initial approach was wrong. What happened?" Listen for: Do they blame externals or take ownership? Can they articulate what they learned?
Resilience questions:
- "You shipped a feature that caused a production issue. How did you handle it?" Listen for: panic/blame vs. calmness and problem-solving mindset. Did they isolate the issue systematically?
- "Your PR got rejected with significant feedback. How did you respond?" Listen for: defensiveness vs. growth mindset.
Global collaboration questions:
- "How do you usually communicate with distributed team members?" Listen for: Async-first thinking? Time zone awareness? Proactive documentation?
Part 3: Assessment Scoring
Scoring Rubric by Section
| Section | Tier 1 | Tier 2 | Tier 3+ |
|---|---|---|---|
| System Design | Vague decisions, no trade-offs | Clear decisions with trade-offs, asks context | Scalability & operations thinking |
| Code Review | Style feedback only | Functional issue identification | Architectural critique |
| Communication | Defensive, unclear explanations | Clear, learns from feedback | Mentors others |
| Resilience | Blames externals | Takes ownership, problem-solves | Proactive, anticipates issues |
Scoring guideline:
- If 3 of 4 sections are at Tier 2 level → hire as Tier 2.
- If 2 of 4 sections are at Tier 2 level → likely Tier 1 or a risky mid-Tier 2.
Part 4: Past Employer References
Ask past manager or senior peer:
- "Give me 3 examples of independent decisions they made without escalation."
- "When feedback was critical, how did they respond?"
- "What's one area they grew in during their time with you?"
- "Would you hire them again? Why or why not?"
Listen for consistency with your interview impression.
Red Flag Summary
If you see these, reconsider Tier 2 classification:
- Ask permission for everything. "Should I start on this task?" = Tier 1 mindset.
- Can't articulate past decisions. "I don't remember why I did that" = surface-level experience.
- Defensive about feedback. Interview pushback on code review criticism = cultural fit risk.
- No understanding of systems they "built." "Yeah, I worked on that but not sure about architecture" = likely junior contributor, not owner.
- English communication struggles. Can't clearly explain technical concepts = will struggle async.
Real Assessment Data
RainTech's vetting experience with 3,000+ professionals shows:
- ~40% of candidates claiming Tier 2 are actually Tier 1 (inflated resume, less independent experience)
- ~10% claiming Tier 2 are actually Tier 3 (underselling themselves, usually good hire)
- Resilience & communication gaps are the #1 reason Tier 2 claims fail assessment—technical skills often pass, but independence and culture fit don't.
This means your assessment must test all three criteria equally, not just code.
Conclusion
You now have a framework to evaluate whether candidates are actually Tier 2. But running full assessments takes time. If you'd rather skip the vetting process and get pre-assessed Tier 2 developers, we've got you.
Book your free 30-minute consultation → We'll discuss:
- How many Tier 2 engineers you need
- Timeline and role specifics
- How our vetting compares to your process
Explore RainTech's Talent Sourcing Services, or Subscribe to RainTech Newsletter, for monthly hiring frameworks and assessment updates.
For related hiring and assessment topics:
- Indonesia's Tech Talent Tiers 2026: Exact Salaries, Output by Level, and ROI vs US Developers
- 5 Strategic Factors Global Companies Evaluate When Choosing Indonesia
- How Australian SaaS Companies Build Indonesia-Based Product Squads
- Hiring Senior Node.js Engineers: How a Dutch Firm Cut Time to 18 Days & Saved 60%
References:
Frequently Asked Questions
Q: Should I do all three sections, or can I skip the code review?
A: The code review section is critical for Tier 2 assessment. It's the difference between "can communicate" and "can code." Don't skip it.
Q: What if a candidate fails the technical section but passes communication?
A: They're likely Tier 1 or early Tier 2. Risk hiring them into Tier 2 role = rework costs. Consider Tier 1 with mentorship, or keep searching.
Q: How long should the full assessment take?
A: 1.5 hours interview + 30 mins reference calls + 30 mins portfolio review = ~2.5 hours total. Worth it to avoid bad hires.
Q: Can I do this assessment remotely?
A: Yes. Use screen-sharing for code review. Video call for behavior. Make sure audio/video is stable.
