Stripe Interview experience
Location: Bangalore
Position: Backend Engineer (Admin Platform)
Years of Exp: 3.5 years
Resume shortlisting
First step was resume shortlisting. I applied for the role directly on Stripe Career's portal and after 3 months I was contacted directly by the hiring manager who was hiring for one of their teams.
Hiring Manager call
A call was scheduled with the hiring manager where I discussed my experience and how I am suitable for the role. He asked soem generic behavioral questions regarding leadership and my motivation to join Stripe. He told me everything about the process, expectations, etc. He then told me that there will be a screening round followed by on-site if screening goes well.
Screening (1 hour)
After basic introduction from both the sides, interview started with DSA based question which I had to code on the Hackerrank link which the interviewer shared.
Question - Bracket Expansion
You are given a string expression which consists of several comma separated tokens
enclosed within opening ('{') and closing ('}') curly braces.
The string expression might or might not have a prefix before opening curly brace('{') and
a suffix after closing curly brace ('}').
You have to return a list of strings as output for each comma separated item as shown below in the examples.
Example 1:
Input = "/2022/{jan,feb,march}/report"
Output = "/2022/jan/report"
"/2022/feb/report"
"/2022/march/report"
Example 2:
Input = "over{crowd,eager,bold,fond}ness"
Output = "overcrowdness"
"overeagerness"
"overboldness"
"overfondness"
Example 3:
Input = "read.txt{,.bak}"
Output = "read.txt"
"read.txt.bak"Follow-up
If there are less than 2 tokens enclosed within curly braces or incorrect expression
(eg. opening and closing braces not present, only opening brace present,
closing brace present before opening brace etc) return the output same as input
Example 1:
Input: sun{mars}rotation
Output: sun{mars}rotation
Example 2:
Input: minimum{}change
Output: minimum{}change
Example 3 (Incorrect Input):
Input: hello-world
Output: hello-world
Example 4 (Incorrect Input):
Input: hello-{-world
Output: hello-{-world
Example 5 (Incorrect Input):
Input: hello-}-weird-{-world
Output: hello-}-weird-{-worldConclusion:
1 week later, I received an email from the recruiter informing me that they would not be moving forward with my application. Overall, my experience was positive. It's crucial to be very quick during their interview process. It's always beneficial to ask questions in advance about formatting and how input is provided to avoid last-minute changes to your code. I believe I only had time to answer the first follow-up question and didn't get much opportunity for the other follow-ups, as they usually 2-3 follow up questions. I'd love to hear your thoughts on this.
I hope this will assist anyone preparing for a Stripe interview.
PS:- Please upvote if you find this post as informational.