Status: 4YOE at WITCH
Position: Sr. SW Engineer at VISA
Location: Foster City, CA
Date: Sept'2021-Oct'2021
Applied to the job via LinkedIn. Recruiter reached out asking to give the Online Assesment and if the OA is cleared, there will be 4 rounds of virtual onsite.
OA: The assesment was on hackerrank. The test consisted of one coding question(LC medium) and 12 MCQ's - involed Math, OOPS concepts, debugging a code snippet.
I do not remember the exact problem that was asked, but i will try to find the question and update it here.
Virtual Onsite Experience: 4 Rounds, each round 45 min each with 15 min break
1st Round: Intervwer is a Software Engineer - Sr. Consultant level. Started off with introductions, followed by questions related to current project and how multi threading is being used in the project. Asked to solve the below problem related to threads. I will post the solution that i came up with in the comments below.
Q:
1.You are given a integer array as input.
2.Create an individual thread for each integer in the array and sleep the thread for integer value of the array element.
3.After the thread sleep time is completed, add it to the output list and return the final list.2nd Round: With Staff SW Engineer. Started of with introductions and my roles and responsibilities in current project. Questions on how OOPS concepts are implemented in my current project, explain how hashmap works in java and one codidng question.
Q : Given 2 Strings s1 & s2, check if s1 can be derived from s2 by deleting one or more characers in s2 without changing the order of s2.
Eg: s1 = "asdfg" s2 = "asdfgh" => true, by deleting 'h' from s2.
s1 = "qwer" s2 = "qwe" => false, as s2.length() < s1.length()
s1 = "qwer" s2 = "dfgvfev" => false3rd Round: With Software Engineer - Sr. Consultant level, Started of with introductions, one coding question and then project related questions.
Q: In a double linked list, delete a given node.
I've implemented the code in like 5-7 min. The interviwer was not expecting it to be coompleted so fast and asked to implement inserting a node into a double linked list as well.
4rd Round: With the Director of the org. The above 3 interviwers are from 3 different teams under the director's org. This round was completly conversational. The interviwer wanted to know my journey as a software engineer and why i wanted to join VISA and few behavioural questions revolving around the core principles of VISA.
I felt the OA was the toughest part, as the MCQ''s had strong Math related questions. Overall, I'd rate the virtual onsite difficulty level as Medium - Hard, depending on the experience of the candidate.
Couple of days after the interview, recruiter gave me verbal confirmation that they are willing to move forward with an offer and would reach out to me once the recruiter have the figures.
PS: Any suggestions on salary negotiation would be appreciated.