Summary
I interviewed for an SDE-2 role at Arista Networks. The process included project discussions, system design concepts, and two coding problems. Unfortunately, I was rejected as my solution for the deadlock problem wasn't as optimal as expected.
Full Experience
I got a call from a recruiter via Naukri for an SDE-2 position at Arista Networks. I have 4 years of experience at an American MNC.
My first round involved a discussion about my past projects and how HTTPS works internally. Following this, I was given a small code snippet and tasked with finding a deadlock, discussing its nature, and resolving it. The interviewer provided an example scenario: 'A wants to transfer money to B, and at the same time, B wants to transfer money to A.'
The second question presented was a LeetCode problem: Time Based Key-Value Store.
The verdict was a rejection. While I solved the first question using a global lock, they were looking for a more granular level locking mechanism.
Interview Questions (2)
I was presented with a small code snippet and asked to identify a deadlock, discuss its implications, and then propose a resolution. The interviewer gave an example scenario to illustrate the type of deadlock: 'If user A wants to transfer money to user B, and simultaneously, user B wants to transfer money to user A, how would you handle the potential deadlock?'
This was a standard LeetCode problem where I needed to design a time-based key-value store. The store should allow setting a key with a value and timestamp, and retrieving the value of a key at a specific timestamp, returning the largest value whose timestamp is less than or equal to the given timestamp.
Summary
I interviewed with Arista Networks, solving two DSA problems and answering Java theory questions, but ultimately received a rejection despite feeling confident in my performance.
Full Experience
I had an interview with Arista Networks. The discussion started with my current work. Following that, I was given two DSA problems: 'Search in Rotated Sorted Array' and 'Longest Substring Without Repeating Characters'. There were also several Java-specific theory questions, including topics like the Singleton pattern, and the static and final keywords. I successfully solved both DSA problems and provided answers for all the theory questions. I felt confident about qualifying for the next round, but unfortunately, I received a rejection. I'm unsure what companies are looking for these days; perhaps the position was filled or there was a misalignment with the role. Nevertheless, I wish everyone the best of luck!
Interview Questions (5)
Given a sorted array that has been rotated at some pivot unknown to you beforehand, search for a given target value. If the target is found in the array, return its index, otherwise return -1. You may assume no duplicate exists in the array.
Given a string s, find the length of the longest substring without repeating characters.
Explain the Singleton design pattern in Java, including its purpose, common implementations (e.g., eager, lazy, thread-safe), and scenarios where it is typically used.
Describe the static keyword in Java. Discuss its usage with variables, methods, and blocks, and explain its implications for memory management and access.
Explain the final keyword in Java. Discuss its application to variables, methods, and classes, and describe the behavior and restrictions it imposes in each context.
Summary
I interviewed with Arista Networks, going through two technical rounds that assessed my coding skills on problems like String to Integer (atoi) and strlen implementation, alongside questions on projects, OS concepts, and networking. I was ultimately rejected.
Full Experience
I received a call from a recruiter at Arista Networks, which led to two technical interview rounds.
First Round: For the first technical round, I was presented with the LeetCode problem 'String to Integer (atoi)'. In addition to this coding challenge, the interviewer delved into technical questions about my previous projects. Topics covered included debugging tools, memory sanitizers, segmentation faults (SEGV), and compiler functionalities.
Second Round: The second round was more focused on system-level concepts. I was asked questions pertaining to multithreading, Inter-Process Communication (IPC), various shell commands, and networking principles. A practical coding task involved implementing the strlen() function in C.
Overall, I found the difficulty level of the questions to be easy. However, there was a strong expectation for practical and in-depth knowledge of networking. Despite my performance, the final verdict was a rejection.
Interview Questions (2)
Implement the myAtoi(string s) function, which converts a string to a 32-bit signed integer. The function should handle leading whitespace, an optional sign, and digits, stopping at the first non-digit character. It must also consider edge cases like empty strings, non-numeric strings, and integer overflow/underflow.
Implement the standard C library function size_t strlen(const char *str), which computes the length of the string str. The length is defined as the number of characters in the string, excluding the terminating null character.