PROCOL | SDE 2 | Interview Experience
- Posted
- 29 Oct 2026
Summary
I attended a DSA round and resume discussion for an SDE 2 position at Procol, but was ultimately rejected.
How it went
Round 1
DSA Round and Resume Discussion
- Explain how distributed locking works with focus on DB based locking and REDIS locking. Pros and Cons of each
- Discussion around 1 project on my resume
- (I Don't remember exact ques) Design a data structure and implement following operations in O(1): a. get_elem - inc frequency of given elem. if not present add with frequency 1. b. pop_element - removes a given element c. get_max - returns elem with max frequency currently present
- https://leetcode.com/problems/remove-k-digits/
For 3. DSA - suggested brute force (storing in map), then using a max heap (freq and elem) (optimized approach), but could not figure out O(1) approach during IV. expected approach required using two way map - elem to freq and freq to elems set.
Verdict
Rejected
Questions asked (2)
- 01
Design O(1) Frequency Data Structure
Data Structures & Algorithms
Design a data structure that supports the following operations in O(1) time:
- get_elem: Increment the frequency of a given element. If the element is not present, add it with frequency 1.
- pop_element: Remove a given element from the structure.
- get_max: Return the element that currently has the maximum frequency.
The interview expected an implementation using two-way maps: one mapping elements to their frequencies and another mapping frequencies to a set of elements.
- 02
Remove K Digits
Data Structures & Algorithms · Medium
Open the problemGiven a non‑negative integer represented as a string and an integer k, remove k digits from the number so that the new number is the smallest possible. Return the resulting string without leading zeros.
This is the classic LeetCode problem "Remove K Digits".