Skip to main content

Plaid Coding Interview Questions

100 Plaid coding interview problems with full optimal solutions — 31 easy, 50 medium, 19 hard. Every problem ships with multiple approaches (brute-force first, then the optimal), complexity tables for each, company-specific tips on what an Plaid interviewer values, and a FAQ section.

Showing 31 problems of 100

  • #1easyfrequently asked

    1. Two Sum

    Given an array of integers and a target, return indices of two numbers that sum to the target. Plaid asks this as a warm-up before harder ETL problems to verify you reach for a hash map rather than the nested-loop instinct.

  • #2easyfrequently asked

    2. Valid Parentheses

    Determine if a string of brackets is balanced and properly nested. Plaid uses this to test stack reflexes before moving to nested JSON validation in webhook payloads.

  • #3easyfrequently asked

    3. Merge Two Sorted Lists

    Merge two sorted linked lists into one sorted list. Plaid asks this because merging two pre-sorted streams of transactions from different bank feeds is a daily operation on their ETL pipeline.

  • #4easyfrequently asked

    4. Remove Duplicates from Sorted Array

    In-place de-duplicate a sorted array and return the new length. Plaid asks this because de-duping near-duplicate transactions (same id, same amount, slight timestamp drift) is a daily reality on their ingestion pipeline.

  • #5easysometimes asked

    5. Remove Element

    Remove all occurrences of a value from an array in-place and return the new length. Plaid asks this because filtering out pending or void transactions before ETL is exactly the same shape.

  • #6easysometimes asked

    6. Search Insert Position

    Find the index where a target value should be inserted into a sorted array. Plaid asks this because finding the slot to splice a new ledger entry into a sorted journal is exactly this primitive.

  • #7easysometimes asked

    7. Plus One

    Increment a non-negative integer represented as an array of digits. Plaid asks this because incrementing big-integer balances (cents stored as digit arrays) without overflow is a real ledger primitive.

  • #8easyfrequently asked

    8. Merge Sorted Array

    Merge two sorted arrays in-place, where the first has extra trailing space to hold the second. Plaid asks this because merging a new batch of transactions into a pre-allocated buffer is a hot path in their ingestion code.

  • #9easysometimes asked

    9. Binary Tree Inorder Traversal

    Return the inorder traversal of a binary tree's node values. Plaid asks this as a tree-recursion baseline before harder traversal problems on transaction-category hierarchies.

  • #10easysometimes asked

    10. Same Tree

    Check if two binary trees are identical in structure and values. Plaid asks this as a baseline for harder tree-equality problems like checking whether two transaction-category snapshots match.

  • #11easysometimes asked

    11. Symmetric Tree

    Check whether a binary tree is a mirror of itself. Plaid asks this to test mirrored-recursion fluency before harder graph-symmetry problems.

  • #12easysometimes asked

    12. Maximum Depth of Binary Tree

    Return the maximum depth of a binary tree. Plaid asks this as a baseline for harder tree-depth problems on category hierarchies of varying depths from different financial institutions.

  • #13easysometimes asked

    13. Balanced Binary Tree

    Determine if a binary tree is height-balanced. Plaid asks this because their internal category trees must stay balanced for predictable lookup latency — and detecting imbalance is the prerequisite for triggering a rebuild.

  • #14easysometimes asked

    14. Minimum Depth of Binary Tree

    Return the minimum depth of a binary tree — the shortest root-to-leaf path. Plaid asks this because finding the nearest leaf in a category tree is exactly how they pick the shallowest classification for new transactions.

  • #15easyrarely asked

    15. Pascal's Triangle

    Generate the first numRows of Pascal's triangle. Plaid asks this as a DP-warm-up that exercises the 'each row depends on the previous' pattern used in their rolling-window financial aggregations.

  • #16easyfrequently asked

    16. Best Time to Buy and Sell Stock

    Find the maximum profit from buying and selling a stock once. Plaid asks this because computing max-drawdown style metrics over a price series is a familiar shape for their balance-history endpoints.

  • #17easysometimes asked

    17. Valid Palindrome

    Determine if a string is a palindrome after removing non-alphanumerics and lowercasing. Plaid asks this as a string-normalization warm-up before harder merchant-name canonicalization problems.

  • #18easysometimes asked

    18. Single Number

    Find the number that appears exactly once in an array where every other number appears twice. Plaid asks this because finding the un-matched ledger entry in a reconciliation pass has exactly this shape.

  • #19easysometimes asked

    19. Linked List Cycle

    Detect whether a linked list has a cycle. Plaid asks this as a baseline before harder graph-cycle problems on account-link chains and OAuth refresh-token graphs.

  • #20easyfrequently asked

    20. Min Stack

    Design a stack that supports push, pop, top, and retrieving the minimum element in constant time. Plaid asks this because tracking the running minimum balance over a transaction stream needs exactly this primitive.

  • #21easysometimes asked

    21. Two Sum II - Input Array Is Sorted

    Given a sorted array, find two indices whose values sum to a target. Plaid asks this to verify you exploit sortedness — same shape as finding two transactions on a sorted balance-history that net to a target gap.

  • #22easysometimes asked

    22. Majority Element

    Find the element that appears more than n/2 times in an array. Plaid asks this because identifying the dominant merchant category across a user's transactions has the same shape.

  • #23easysometimes asked

    23. Rotate Array

    Rotate an array to the right by k steps in-place. Plaid asks this because shifting a circular buffer of recent transactions by a rotation amount has the same shape.

  • #24easyrarely asked

    24. Reverse Bits

    Reverse the bits of a 32-bit unsigned integer. Plaid asks this as a bitwise-fluency check before harder hash-collision and idempotency-key problems.

  • #25easyrarely asked

    25. Number of 1 Bits

    Count the number of set bits in an unsigned integer. Plaid asks this as a bitwise warm-up before harder bitmask problems on account-feature flags.

  • #26easyrarely asked

    26. Happy Number

    Determine whether a number eventually reaches 1 under repeated digit-square-sum, or cycles forever. Plaid asks this because cycle detection on transformation sequences is the same algorithm as detecting OAuth refresh-token loops.

  • #27easysometimes asked

    27. Isomorphic Strings

    Determine if two strings are isomorphic — one character maps to one other character consistently. Plaid asks this because tokenizing merchant strings under a consistent mapping is the same primitive.

  • #28easyfrequently asked

    28. Reverse Linked List

    Reverse a singly-linked list. Plaid asks this as a pointer-juggling baseline before harder list problems on transaction history sequences.

  • #29easyfrequently asked

    29. Contains Duplicate

    Determine if any value appears at least twice in an array. Plaid asks this because detecting duplicate webhook deliveries or duplicate idempotency keys is exactly this primitive.

  • #30easysometimes asked

    30. Invert Binary Tree

    Invert (mirror) a binary tree. Plaid asks this as a recursion warm-up before harder category-tree transformations.

  • #73easysometimes asked

    73. Convert Sorted Array to Binary Search Tree

    Convert a sorted array into a height-balanced BST. Plaid asks this because indexing a sorted financial-category list into a balanced lookup tree for O(log n) range queries is exactly the same primitive.

Plaid Coding Interview Questions — Full Solutions — InterviewChamp.AI