# Executive Candidate Technical Vetting Rubric & Interview Guide
**Target Client:** Supabase  
**Role Title:** Senior Software Engineer  
**Seniority Calibration:** Senior Software Engineer (5-8 Years) (Target Score: 78 - 90 / 100)  
**Evaluation Reference ID:** `VET-202610-9FE769`  
**Generated Date:** October 27, 2026  
**Evaluated Technologies:** `Python,Kubernetes`

---

## 1. Executive Vetting Overview & Calibration
This standardized technical vetting rubric provides an objective, bias-free assessment framework designed to evaluate nearshore engineers against Tier-1 US scaleup standards. Every candidate is evaluated across five weighted competency dimensions totaling 100 points.

### Expected Seniority Scope:
> End-to-end technical ownership of complex features and services, architecture trade-off evaluation, observability, and mentoring.

**Primary Focus Area:** System design, production reliability, edge-case foresight, non-functional requirements (security, latency, cost), and cross-team communication.

### Seniority Green Flags vs. Red Flags:
| Verified Green Flags (Indicators of Seniority) | Disqualifying Red Flags |
| :--- | :--- |
| ✅ Proactively raises operational and security implications | ⚠️ Over-engineers solutions when a simpler pattern suffices |
| ✅ Understands cost trade-offs of cloud services | ⚠️ Lacks curiosity about production incident root causes |
| ✅ Designs clean APIs | ⚠️  |

---

## 2. Standard 60-Minute Technical Interview Agenda
| Time Window | Stage | Objective |
| :--- | :--- | :--- |
| **00 - 05m** | Welcome & Context | Set interview expectations, introduce company vision, create psychological safety. |
| **05 - 20m** | Architecture & Production War Stories | Deep-dive into candidate's most complex past architectural challenge and production outage. |
| **20 - 45m** | Technical Deep Dive & Live Problem Solving | Hands-on challenge execution or system architecture scenario probing trade-offs and edge cases. |
| **45 - 55m** | Cultural Fit, English Nuance & Q&A | Assess async autonomy, remote communication, and evaluate candidate's reverse inquiries. |
| **55 - 60m** | Independent Scoring & Debrief | Fill out 5-dimension scorecard immediately while impressions are fresh. |

---

## 3. Five-Dimension Evaluation Matrix (100 Points Total)
### 1. System Architecture & Scalability (25% Weight)
*Ability to design fault-tolerant, scalable distributed systems, balance latency/cost trade-offs, and anticipate production failure modes.*

- **1 - Poor:** Suggests monolithic single points of failure; unaware of concurrency limits, queueing, or caching strategies.
- **3 - Acceptable:** Can design standard 3-tier architectures; understands basic caching and relational schema design; needs guidance on high-scale edge cases.
- **5 - Exceptional:** Articulates nuanced trade-offs (CAP theorem, event-driven vs synchronous, backpressure, idempotency, disaster recovery); proposes pragmatic, cost-efficient designs.

**Candidate Score (1 - 5):** `[   ] / 5`  
**Weighted Points (Score x 5):** `[   ] / 25 pts`  
**Interviewer Notes:**  
`_________________________________________________________________________________`

### 2. Language & Framework Mastery (25% Weight)
*Deep understanding of language semantics, runtime internals (memory, garbage collection, event loop), standard library idioms, and ecosystem best practices.*

- **1 - Poor:** Superficial knowledge limited to basic syntax and tutorials; struggles to explain runtime execution or standard library methods.
- **3 - Acceptable:** Writes clean, idiomatic code; understands primary framework abstractions; occasionally misses low-level memory or concurrency quirks.
- **5 - Exceptional:** Deep command of language internals; effortlessly identifies performance anti-patterns, memory leaks, and concurrent race conditions.

**Candidate Score (1 - 5):** `[   ] / 5`  
**Weighted Points (Score x 5):** `[   ] / 25 pts`  
**Interviewer Notes:**  
`_________________________________________________________________________________`

### 3. Production Debugging & SRE Observability (20% Weight)
*Systematic root-cause analysis under incident pressure, mastery of APM/profiling tools, log tracing, and zero-downtime deployment practices.*

- **1 - Poor:** Guesses blindly during bugs; relies entirely on print statements; unaware of distributed tracing, profiling, or metric aggregations.
- **3 - Acceptable:** Uses debuggers and log aggregation comfortably; follows systematic troubleshooting steps; resolves standard production errors.
- **5 - Exceptional:** Mastery of flamegraphs, APM (Datadog/Prometheus), p99 latency profiling, heap dumps, and post-mortem incident RCA documentation.

**Candidate Score (1 - 5):** `[   ] / 5`  
**Weighted Points (Score x 4):** `[   ] / 20 pts`  
**Interviewer Notes:**  
`_________________________________________________________________________________`

### 4. English Articulation & Technical Communication (15% Weight)
*C1/C2 CEFR professional English fluency, clear architectural diagramming, proactive documentation, and constructive code review etiquette.*

- **1 - Poor:** Struggles with technical English vocabulary; hesitant in technical explanations; defensive or dismissive during code review discussions.
- **3 - Acceptable:** Solid professional working English; communicates technical ideas clearly; writes coherent PR descriptions and documentation.
- **5 - Exceptional:** C1/C2 executive English articulation; explains complex technical trade-offs with brevity and nuance; writes stellar RFCs and empathetic PR reviews.

**Candidate Score (1 - 5):** `[   ] / 5`  
**Weighted Points (Score x 3):** `[   ] / 15 pts`  
**Interviewer Notes:**  
`_________________________________________________________________________________`

### 5. Async Autonomy & Remote Timezone Reliability (15% Weight)
*Self-directed execution, proactive blocker escalation, high async documentation discipline, and seamless US timezone collaboration habits.*

- **1 - Poor:** Passive wait-for-instructions attitude; goes silent when blocked; poor async documentation; inconsistent remote presence.
- **3 - Acceptable:** Delivers sprint commitments reliably; asks for help when blocked; communicates status during daily standups.
- **5 - Exceptional:** High-ownership founder mentality; proactively unblocks dependencies; decomposes ambiguous epics into bite-sized PRs; excels in distributed squads.

**Candidate Score (1 - 5):** `[   ] / 5`  
**Weighted Points (Score x 3):** `[   ] / 15 pts`  
**Interviewer Notes:**  
`_________________________________________________________________________________`

---

## 4. Stack-Specific Deep Inquiries & Evaluator Cheat-Sheet
#### Question #1
**Prompt:** How does the Python asyncio event loop manage cooperative multitasking, and what happens when CPU-bound synchronous code is executed inside a coroutine?

- **Target Answer / Key Concepts:** Candidate explains that the event loop runs on a single thread. Calling blocking synchronous code stops the entire loop, starving all other coroutines. Proper solution: offload to loop.run_in_executor() or an external task queue (Celery/RQ).
- **Disqualifying Anti-Pattern:** Thinks async/await automatically parallelizes across multiple CPU cores without an executor or multiprocessing.

#### Question #2
**Prompt:** In a high-throughput Django or FastAPI service querying PostgreSQL, how do you diagnose and resolve database connection pool saturation?

- **Target Answer / Key Concepts:** Candidate discusses PgBouncer or SQLAlchemy connection pooling parameters (pool_size, max_overflow, pool_timeout), holding connections open during external HTTP calls, slow queries blocking connections, and using connection recycling.
- **Disqualifying Anti-Pattern:** Suggests simply increasing max_connections to 5,000 on the database without evaluating connection RAM overhead or proxying.

#### Question #3
**Prompt:** A production service is experiencing random 502/504 errors during rolling deployments. How do you troubleshoot the root cause between Ingress, kube-proxy, and application pod lifecycle?

- **Target Answer / Key Concepts:** Candidate explains race condition: Pod receives SIGTERM, endpoints controller removes pod IP from Endpoints/EndpointSlice, but kube-proxy iptables propagation has latency. Solution: preStop sleep hook (e.g. 5-10s) and proper readinessProbe configuration.
- **Disqualifying Anti-Pattern:** Blames DNS caching without understanding kube-proxy iptables propagation latency or pod preStop hooks.

#### Question #4
**Prompt:** Why can aggressive CPU limits lead to latency spikes even when CPU utilization is well below 100%?

- **Target Answer / Key Concepts:** Explains Linux CFS (Completely Fair Scheduler) quota periods (default 100ms). If a multi-threaded application exhausts its quota in the first 20ms of the period, the kernel throttles the container for the remaining 80ms, creating severe tail-latency (p99) spikes.
- **Disqualifying Anti-Pattern:** Assumes CPU limits only throttle when physical node CPU hits 100%.

---

## 5. Practical Hands-On / System Design Challenges
### Challenge Scenario #1: Idempotent Event Ingestion & Rate-Limited Deduplication Service
**Business Scenario:**  
Implement a thread-safe / async memory-efficient event deduplicator that handles 10,000 req/sec with an sliding 60-second TTL window and sliding token-bucket rate limiter per API key.

**Scoring Criteria:**  
Time complexity O(1), thread safety / atomic operations, proper cleanup of expired keys without memory leaks, clean unit tests.

### Challenge Scenario #2: Zero-Downtime Deployment & Pod Disruption Topology
**Business Scenario:**  
Write a production-grade Kubernetes Deployment & PDB manifest for a multi-tenant microservice requiring rolling updates across at least 3 availability zones with zero dropped requests, custom readiness gates, and graceful shutdown handling.

**Scoring Criteria:**  
TopologySpreadConstraints, PodDisruptionBudget (minAvailable: 75%), preStop lifecycle hook, calibrated liveness/readiness probes, and explicit securityContext (readOnlyRootFilesystem, non-root user).

---

## 6. Final Decision & Recommendation Matrix
Calculate the sum of all five weighted dimensions (Total / 100):

- **90 - 100 Points:** Strong Hire (Top 5% candidate, immediate offer recommendation)
- **75 - 89 Points:** Hire (Meets high bar, reliable production execution)
- **60 - 74 Points:** Lean Hire (Meets core bar, requires targeted upskilling in 1 area)
- **< 60 Points:** No Hire (Fails technical depth, communication, or architectural bar)

### Final Sign-Off:
- **Interviewer Name:** __________________________________
- **Recommendation:** `[ ] Strong Hire  [ ] Hire  [ ] Lean Hire  [ ] No Hire`
- **Total Score:** `_____ / 100`
- **Signature & Date:** __________________________________