← Stripe Interview Insights

Stripe·Software Engineer·Technical Phone Screen·Intermediate

Intermediate
Apr 2026

Summary

Stripe coding screen, some kind of company-matching problem with weighted fields. Pretty niche variation on a fuzzy-matching theme, not what I was expecting.

Questions Asked (1)

Q1

Given a list of candidate companies and a target company, where each company has fields like phone, email, and name each carrying a different weight, return all candidates whose total weight of matching fields meets or exceeds a given threshold.

Algorithms & Data StructuresTechnical Trade-offs
Author's notes

The base problem wasn't too bad but the threshold-as-parameter part tripped me up a little.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the problem: confirm the data structure for companies (e.g., list of objects), the matching criteria (exact match? case-insensitive?), and the weights per field. Then propose an algorithm that iterates through each candidate, computes the total weight of matching fields, and filters those meeting the threshold. Discuss trade-offs like time complexity and potential optimizations.

Pro tip: Mention that you would precompute a mapping of field to weight and use early termination if the remaining possible weight cannot reach the threshold, which shows attention to efficiency. Also, discuss how you would handle missing fields or null values gracefully.

1. Clarify Requirements

Ask about input format, matching rules (exact vs fuzzy), weight values, and threshold. Confirm output format (e.g., list of company names or objects).

2. Define Matching Logic

For each field (phone, email, name), determine if the candidate's field matches the target's field. Assign the corresponding weight if matched.

3. Compute Total Weight

Sum the weights of all matching fields for each candidate. Compare the sum to the threshold.

4. Filter and Return

Collect all candidates whose total weight >= threshold and return them in the desired format.

5. Analyze Complexity and Optimize

Discuss time complexity (O(n) where n is number of candidates) and potential optimizations like early exit or indexing if the dataset is large.

Key Points to Mention

  • Time complexity: O(n) for n candidates, assuming constant-time field comparisons.
  • Space complexity: O(k) for output, where k is number of qualifying candidates.
  • Handling edge cases: missing fields, null values, case sensitivity, and exact vs partial matches.
  • Weight assignment: ensure weights are clearly defined and sum correctly.
  • Threshold comparison: use >= as specified.
  • Potential optimizations: early termination if remaining fields cannot reach threshold, or pre-indexing if multiple queries.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.