One of the senior-most engineers of Urban Company reached out to me on LinkedIn asking if I am available immediately for the next Saturday for some rounds of interview, requested him to consider next Saturday, but they didn't have any panel available. I agreed to give at least two rounds, which will be primarily on DS+Algo.
The recruiter reached out to me with the invitation for Saturday 10:30 AM slot. On Saturday, 10:15 AM (15 minutes before the scheduled interview), I got a call from the recruiter that the interviewer is sick and needs to reschedule the interview. Later recruiter got back to me with the 11:45 AM-12:45 PM time slot.
The interviewer was helpful. Two standard LC medium questions were asked. I had to write a functions and we had some standard complexity analysis and test cases related discussions.
Input string containing [a-z], # characters. # has two functionalities:
ab#c -> [ac, abc]#include<bits/stdc++.h>
using namespace std;
vector<string> ans;
void solve(int ind, string inp, string res) {
if(ind == inp.size()) {
ans.push_back(res);
return;
}
if(inp[ind] != '#')
solve(ind + 1, inp, res + inp[ind]);
else { // inp[ind] = #
solve(ind + 1, inp, res); // doing nothing
if(res != "")
solve(ind + 1, inp, res.substr(0, res.size()-1)); // acting as a backspace
}
}
int main() {
string inp; //input string
inp = "ab#c";
solve(0);
}124. Binary Tree Maximum Path Sum
After my round 1 was complete, I got an invitation email for my next round, which is in 30 mins 1:15 PM-2:15 PM. I got another email that was canceled and received another email with the same time slot but a different interviewer. Again in the next 10 mins, this invite was canceled without any updates about the next round.
At 1:46 PM, I got another email saying my next round is at 2:30 PM-3:30 PM on the same day, mind you this was the 5th invite of that day, and that was just round 2. Till 2:29 PM, I wasn't sure if that round of interview is going to happen or not.
The interviewer was friendly, but this time he didn't have any online editor link, had to write all the codes on google docs. He asked me 2 questions and I needed to write proper codes, test cases, complexity analysis, and the areas I can improve. He asked me not to think in terms of asymptotic complexity but as API calls.
55. Jump Game
45. Jump Game II
3. Longest Substring Without Repeating Characters - He asked me to print the string as well.
The third round of interview was scheduled for next Tuesday with the senior person who reached out to me on LinkedIn. We discussed two primary questions.
And that was it; emailed recruiter about the update regarding my candidature - but no response from their side. Pinged that senior person on LinkedIn, he has seen the messages but no response from his side as well.
My 2 cents to Urban Company, forget about hiring new people, first be a professional organization, later start thinking about growth and bringing in a fresh set of talents. Very poor management and very unprofessional behavior. I might be a rejected candidate or that position might be on hold, but at least have the professionalism to response back and let the candidate know about the status. I would rather work with a professional org with less salary than working for some unprofessional org with better pay.