# Arcesium Interview Experience for SSE | 2+ Years Experienced

**Mode**: The recruiter reached out to me on LinkedIn

**Company**: Arcesium

**Title**: Senior Software Engineer

**Location**: Bangalore

**Process**: The recruiter reached out to me via mail and sent an online test (Hackerrank) link with three questions. I was able to solve 2 completely and 1 partially. After a few days, I received an email from a recruiter to schedule the virtual interviews. There were 5 rounds including 1 Online test(HackerRank) +2 (DS/Algo) + 1 Hiring Manager(Technical + Managerial) + 1 HR Round.

**Round 1:** Online Test

Test Platform: HackerRank, 60 min, 3 Questions

Difficulty level: Moderate

- Product of the maximums of all subsets of an array
- The troop of Cats: Cat needs to cross the tunnel as fast as possible. A cat can cross the tunnel on its own and can cross by carrying other cats on her back. Given time to cross the tunnel individually and with the cat on her back. Find the minimum time to cross all cats from the tunnel.
- Stream Distribution: A network is given in the form of a perfect binary tree and computations can occur at leaf nodes, while other nodes(distribution nodes) distribute data streams to the leaves. Two types of distributions are there – Splitting and Parallel.

splitting Node - it splits the data into equal halves to the child nodes. For Ex: [1,2,3,4] will split into [1,2] and [3,4] to left and right child. Parallel Node - it splits the data into alternating halves to the child nodes. For Ex: [1,2,3,4] will split into [1,3] and [2,4] to left and right child

- Given the input streams that each leaf node receives and details of the distribution nodes, we need to find the original data stream at the root of the network. This can be solved using reverse level order traversal

**Round 2: **1 hour (DSA + Coding Round)

There were 2 Interviewers in this round. One was 2 years of experience and the other was a senior member.They began by introducing themselves and then inquired about me. They then moved on to the interview questions:

- Number of subsets with product less than k
- The minimum number of times A has to be repeated such that B is a subsequence of it, where A and B are strings. Something similar to this.
- What is Singleton Class? Create a singleton class.
- Explain in detail any aspect of your project.
- What is garbage collection in java? When it is invoked? How does it work?
- What is Synchronization? How is it achieved in Java?
- Multithreading.

Result:** **I was able to give the brute force solution for 1st question and the optimal solution for 2nd one. My other concepts were clear and were able to explain them in detail. After 3-4 days they scheduled my next interview.

**Round 3: **1-hour (DSA + Coding Round)

An SDE-2 intercepted it. His communication and technical abilities were excellent. The interview began with his introduction, followed by mine.

- Maximum Sum Increasing SubsequencePractice Problem link.
- Parking lot design.
- SQL
**:**Then he asked 2 SQL-based questions.- second highest salary.
- the other one was a complex self join-based query, I don’t remember the exact question but I was able to give the correct answer.

Result: He was satisfied with my answers and after 3-4 days I received a call from the recruiter for scheduling my HM Round.

**Round 4: **1 Hour (Hiring Manager)

An engineering manager took this. The interview began with his introduction, followed by mine.

- Then, he asked questions on my projects in my current company(Ended up discussing them for a good time)
- He gave me a code snippet written in Java 8 and asked me to found the flaw in the code in terms of coding design and how will I fix this? It was based on functional interfaces and lambda expressions in Java 8.
- He gave me the below code snippet and asked me to do the code review. It was an open-ended question and we had a very long discussion over it.

## Java

`public` `class` `MAver {` ` ` ` ` `int` `windowSize;` ` ` ` ` `List<Integer> values;` ` ` ` ` `public` `MAver(` `int` `windowSize)` ` ` `{` ` ` ` ` `this` `.windowSize = windowSize;` ` ` ` ` `this` `.values = ` `new` `ArrayList<Integer>();` ` ` `}` ` ` ` ` `public` `void` `add(` `int` `value) { values.add(value); }` ` ` ` ` `public` `double` `GetAverage()` ` ` `{` ` ` ` ` `ouble x = ` `0` `;` ` ` ` ` `for` `(` `int` `i = ` `0` `; i < values.size(); ++i) {` ` ` ` ` `x += values.get(i);` ` ` `}` ` ` ` ` `return` `x / values.size();` ` ` `}` `}` |

- Given two lists of intervals, find the intersection of these two lists. Each list consists of disjoint intervals sorted on their start time.

Input: arr1=[[1, 3], [5, 6], [7, 9]], arr2=[[2, 3], [5, 7]] Output: [2, 3], [5, 6], [7, 7] Explanation: The output list contains the common intervals between the two lists.

**Round 5:** 30 minutes (HR round)

- Tell briefly about yourself.
- Why do you want to leave your current company?
- Why Arcesium?
- What are your expectations from Arcesium?
- Basic HR questions.
- CTC Discussion: They tried to negotiate based on my current CTC.

**Verdict: **Selected

## Please

Loginto comment...