Tip 1: Prepare a good resume that should be ATS friendly. This is the first step to getting a chance for an interview.
Tip 2: Prepare all technical fundamental core subjects and do lots of problem-solving (15-20 questions from each topic). Also, 2-3 projects in your resume are a must.
Tip 3: Try to set up mock interviews with seniors or with your friends before an interview.
Tip 4: Prepare solid principles, design patterns, and high-level system design.
Tip 1: Add at least 2-3 projects and try to give links to your projects where you deployed them or stored the codebase.
Tip 2: Do not write false things; you will get caught during interviews.
This round was online on HackerRank for 1 hour, where I got 20 MCQ-based questions on CS core subjects like Computer Network, Operating System, OOPS, C++, Java, and one coding question based on DSA problem-solving.



In the below graph, there exists a cycle between vertex 1, 2 and 3.

1. There are no parallel edges between two vertices.
2. There are no self-loops(an edge connecting the vertex to itself) in the graph.
3. The graph can be disconnected.
Input: N = 3 , Edges = [[1, 2], [2, 3], [1, 3]].
Output: Yes
Explanation : There are a total of 3 vertices in the graph. There is an edge between vertex 1 and 2, vertex 2 and 3 and vertex 1 and 3. So, there exists a cycle in the graph.
I solved this question using the standard graph DFS algorithm, wherein I maintain parent and child node relationships and determine whether a cycle in the graph is present.



This round was of 60 minute and there was one interviewer, he asked me to share my screen and turn-on video.



1 First I told him a brute Force approach using Recursion.
2 Then I told him optimized approach using Dynamic Programming.



We cannot use the element at a given index twice.
Try to do this problem in O(N) time complexity.
1 First I told him Brute Force O(N^2) approach by using two loop any figure out pair.
2 Then told him optimized approach using HashMap O(N) time complexity solution.
This round was based on system design. In this round, first I had an introduction, then he gave me one problem statement to design a key-value store.

1) The first function is ‘setKey(string Key, string Val, int Timestamp)’, which stores the ‘Key’ and the ‘Val’ along with the ‘Timestamp’.
2) The second function is ‘getValue(string TargetKey, int TargetTimestamp)’, which returns the value of ‘Val’ associated with the ‘TargetKey’ such that its ‘Timestamp’ value is less than or equal to the ‘TargetTimestamp’. If there are multiple values of ‘Val’, return the value of ‘Val’ with the highest value of ‘Timestamp’ among the valid ones. If there is no valid value of ‘Val’ return “-1” as a string.
Tip 1: First, I discussed all functional and non-functional requirements.
Tip 2: Then I had a discussion on back-of-the-envelope calculations.
Tip 3: After that, I discussed the high-level design diagram.
Also, I discussed database, caching, API gateway, load-balancer, and CDN.
Tip 4: I also discussed the APIs we will use and their design.
This Round was the last round scheduled on zoom with HR .
1. Tell me about yourself.
2. Why do you want to work for Kickdrum?
3. Will you be able to work on weekends?
4. She gave me one English Paragraph and given me 5 min times to read it and asked some question from it.
1. I introduced myself very confidently.
2. I answered why I want to work with them , I told their culture ,projects, tech stack, flexibility of working attracts me .
Tip1 : Be very Confident in HR Round

Here's your problem of the day
Solving this problem will increase your chance to get selected in this company
What is recursion?