Avalara | SDE1 | 2024 | Interview Experience

avalara logo
avalara
SDE IpuneOffer
September 5, 202416 reads

Summary

As a fresher from a Tier-2 college, I successfully navigated a four-round interview process at Avalara for an SDE1 role, culminating in a performance-based offer that included a 6-month stipend and potential full-time conversion.

Full Experience

I recently interviewed at Avalara for an SDE1 position as a fresher. The hiring process was structured into four distinct rounds.

Round 1: Aptitude Test

This round consisted of 40 MCQs, which I had to complete in 20 minutes. The questions covered areas like pattern matching and missing numbers in series. Approximately 220 students participated, and 160-170 cleared this round. The key here was to maintain both accuracy and speed.

Round 2: Online Assessment (HackerRank)

This assessment featured 3 coding questions, with each student receiving a different set. I was able to pass all test cases for the first two questions, but only 3 out of 15 for the third.

  • Question 1: I was given an array, for example [a,b,c,d,e,f], and needed to return a permutation where (a-b) + (b-c) + ... + (e-f) is maximized. If multiple permutations yielded the maximum sum, I had to return the lexicographically smallest one. My approach involved sorting the array and then swapping the first and last elements.
  • Question 2: This problem was similar to binary search on answer type questions. I recalled problems like Minimum Time to Complete Trips (Leetcode - 2187) and Koko Eating Bananas (Leetcode - 875) being good examples.
  • Question 3: This was a hard graph problem. The objective was to visit a specific set of cities and calculate the minimum cost for a cyclic trip, starting from city 0 and returning to it after visiting all required cities.

Round 3: Technical Interview

After my self-introduction, the interviewer asked me to design an LRU Cache. I managed to solve it, though it took me a considerable amount of time. I made sure to communicate and explain my thought process throughout. He was satisfied with my approach. Following this, he inquired about ACID properties, the Pillars of OOPS, and some fundamental Computer Network questions. I then had to explain my project and make some changes to CSS properties. Since my project used browser storage, he asked questions related to it. I couldn't answer every question, but he seemed understanding. Finally, he delved into JavaScript concepts like hoisting, closures, prototyping, let vs var, and global and block scope.

Round 4: Hiring Managerial Round

This round also began with my introduction. The manager asked about the weather in the city and my willingness to relocate to Pune, which I confirmed. He then presented the "Valid Anagram" problem, and he appeared satisfied with my solution. We then discussed threads and multithreading, followed by a general conversation about the company's hierarchy and various senior positions. He then opened the floor for any questions I had for him. I felt optimistic after this round, and the results were announced the next morning. Out of 5 selected students, I was one of them.

Interview Questions (11)

Q1
Maximize Sum of Differences in Permutation
Data Structures & AlgorithmsMedium

You are given an array (e.g., [a,b,c,d,e,f]). You need to return a permutation of this array such that the sum (a-b) + (b-c) + ... + (e-f) is maximized. If there are multiple such permutations, return the lexicographically smallest one.

Q2
Binary Search on Answer Type Problem
Data Structures & AlgorithmsMedium

This question was similar to problems that can be solved using a binary search on the answer technique. Similar LeetCode problems include Minimum Time to Complete Trips (Leetcode - 2187) and Koko Eating Bananas (Leetcode - 875).

Q3
Minimum Cost Cyclic Trip to Visit Cities
Data Structures & AlgorithmsHard

This was a hard graph problem. The objective was to visit a specific set of cities and calculate the minimum cost for a cyclic trip that starts from city 0 and returns to it after visiting all the required cities.

Q4
Design LRU Cache
Data Structures & AlgorithmsMedium

I was asked to design an LRU Cache.

Q5
Explain ACID Properties
System Design

The interviewer asked me to explain the ACID properties of database transactions.

Q6
Explain Pillars of OOPS
Other

I was asked to explain the fundamental Pillars of Object-Oriented Programming (OOPS).

Q7
Basic Computer Network Questions
Other

The interviewer asked some basic questions related to Computer Networks.

Q8
Browser Storage Mechanisms
Other

I was questioned about different browser storage mechanisms, likely due to their usage in my project.

Q9
JavaScript Core Concepts
Other

I faced questions on various JavaScript core concepts, including hoisting, closures, prototyping, the differences between let and var, and global vs. block scope.

Q10
Valid Anagram
Data Structures & AlgorithmsEasy

The hiring manager asked me to solve the 'Valid Anagram' problem.

Q11
Threads and Multithreading Concepts
Other

The discussion included questions about the concepts of threads and multithreading.

Preparation Tips

My main takeaway was that consistent practice with LeetCode questions is sufficient for excelling in coding rounds. Additionally, I focused on clearly communicating my thought process and approach during problem-solving, which proved crucial for technical discussions.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!