Atlassian | P4 | India | 2023 [Offer]
Anonymous User
8078

pre-interview: Got reached out by some recruiter on LinkedIn

education: Tier 1 State University
prior experience: ~3+yoe, SDE2 at one of FAANG (at the time of the interview)
date of interview: July-August 2022

1st Round: Tech screening ~ Kar*t

Recruiter mentioned that this would be a elimination round, if I passed this, a full onsite loop comprising 5 more rounds would be set up.

This is a typical Kar*t screening with 15 minutes alloted to theory based questions on various topics like debugging, loggging, OOP, database schema, scaling, sharding, load balancing. It was kind of like a quickfire round with the interviewer trying to ask as many questions as possible. I answered all of them, and seemed the interviewer was staisfied.

The next part was a DSA question , don't remember the exact statements but it was a LC easy where we were expected to encrypt a given string based on a given substitution cipher For eg: If the order of appearence in string is - b k m w it will be mapped in the following manner a - b , b - k, c - m , d - w . Ignore non-alphabet characters and lowercase, uppercase should map to same character in same case. Something like this.

It could be easily solved using hashmap, but I fumbled somewhere and wasn't getting the expected output on running the code. I took some 5-10 mins to debug with cout statements & it seemed the interviewer somehow liked the fact that I was actively trying to find the issue instead of dry running mentally.

Finally it ran succesfully, and I had just 10 minutes remaining. The interviewer gave me another question which was a LC medium-hard I suppose. It could be solved by a conditional backtracking algorithm, I didn't have enough time to write the code so interviewer said pseudocode is fine & after that he asked me to run the algorithm over some given sample inputs. I did & it seemed he was satisfied.

I would rate my performance here a 9/10.

2nd Round: LLD

The usual famous rate limiter question. I first implemented using a sliding counter based approach but interviewer was not satisfied with the approach for some reason. I was around 30 minutes into the interview. To me the algorithm seemed fine, and when I asked him to give some examples where it would not work he was unable to give but asked me to try some other approach, instead of arguing with him, I decided to use the remaining time in coming up with the conventional queue based sliding window approach. He was satisfied with this solution. After this, in the remaining 5 minutes he briefly asked some follow up questions on real life implementations of rate limiters and how they could be designed. In my company we have rule engine configuration based rate limiters so told him about the architecture of the same.

I would rate myself a 8/10 in this round.

3rd Round: Data structures & problem solving

https://leetcode.com/problems/top-k-frequent-elements/

I solved it first using the min heap based approach. Then gave a time & space complexity analysis to the interviewer.

Since we had around 10-15 mins left, he asked if there's some other approach. I shared another approach using count sort. He was satisfied & asked me to again do a time & space complexity analysis of the same. I did , and then we compared both the approaches & discussed when which approach would be more optimal, depending upon the input dataset.

I would rate myself a 9/10 in this round.

4th Round: System design

Design trending videos on Youtube.

This was by far my favourite round and the interviewer seemed a great person and we had a nice discussion starting from the services involved, the API request response structures, the choice of database, the DB schema. My approach was to design a ingestion pipeline to stream video view count telemetry which would then be used to build a hit counter kind of system. This would then go into a ranking engine with weighted ranking algorithm based on various metrics & finally each video would be assigned a %ile score determining their position in the "trend". We discussed on various aspects like DB sharding, pagination, how the services would scale, various LB algorithms like round robin, weighted round robin, etc.

I really enjoyed giving this round.

I would rate myself a 8/10 in this round. (I am mostly a backend engineer so I called out upfront I will not be able to cover the ML side of things in the ranking, he said that's completely fine since this is a SDE role and his primary expectation was the system architecture & the scaling aspects)

5th Round: management

This was the usual "tell me about when you ...." situational questions on how to handle various challenges - both technical & behavorial. I followed the STAR format to answer these & had plenty of experiences in my current company to draw examples from of collaborating with multiple teams to deliver product & tech milestones. Be prepared for these beforehand, because these rounds will typically be taken by senior folks(P5 and above) and they'll be able to drill down & cross question whatever you say. We had some interesting tech discussions on how our SDLC works e2e, what kind of oncall responsibilites I had, how our deployment practices were and how we did A/B testing, etc.

6th Round: values

Most questions are on Atlassian values & I was prepared with a few datapoints & examples of each.

It took around ~1 month for my debrief & I was informed I passed debrief. After that it took me around ~10 months to get matched with a HM who had an approved headcount on their team & get the offer letter.

Offer details: https://leetcode.com/discuss/compensation/3970811/Atlassian-P4-India

Comments (8)