i
Avalara Technologies
Filter interviews by
I applied via Walk-in and was interviewed before Jul 2023. There were 2 interview rounds.
There was a coding test on hackerrank
OOPs concepts refer to Object-Oriented Programming concepts which include Inheritance, Encapsulation, Polymorphism, and Abstraction.
Inheritance: Allows a class to inherit properties and behavior from another class.
Encapsulation: Bundling data and methods that operate on the data into a single unit.
Polymorphism: Ability to present the same interface for different data types.
Abstraction: Hiding the complex implementation...
DB concepts include normalization, indexing, transactions, and query optimization.
Normalization: Organizing data into tables to reduce redundancy and improve data integrity.
Indexing: Creating indexes on columns to speed up data retrieval.
Transactions: Grouping database operations into atomic units to ensure data consistency.
Query optimization: Improving the performance of database queries by optimizing execution plans.
I appeared for an interview before Sep 2020.
Round duration - 90 minutes
Round difficulty - Hard
Given a garden that extends along a one-dimensional x-axis from point 0 to point N, your task is to determine the minimum number of taps needed to water the enti...
Find the minimum number of taps needed to water the entire garden using given tap ranges.
Iterate over each tap and find the maximum range it can cover.
Sort the taps based on their starting position and ending position.
Use a greedy approach to select the taps that cover the maximum range possible.
If any part of the garden remains uncovered, return -1.
Given an undirected and disconnected graph G(V, E)
, where V
is the number of vertices and E
is the number of edges, the connections between vertices are provided in the 'GR...
DFS traversal problem on an undirected and disconnected graph to find connected components.
Perform Depth First Search (DFS) on the graph to find connected components.
Use a visited array to keep track of visited vertices.
Iterate through all vertices and perform DFS on unvisited vertices to find connected components.
Print the number of connected components and list vertices in each component in ascending order.
Round duration - 90 minutes
Round difficulty - Medium
Given an integer array 'ARR' of size 'N' and an integer 'K', return all the subsets of 'ARR' which sum to 'K'.
A subset of an array 'ARR' is a tupl...
Return all subsets of an array that sum to a given integer K.
Use recursion to generate all possible subsets of the array.
Keep track of the current subset and its sum while traversing the array.
If the sum of the subset equals K, add it to the result.
Sort the elements in each subset to ensure increasing order of index.
Handle duplicate elements in the array appropriately.
You are given a string S
. Your task is to partition S
such that every substring of the partition is a palindrome. Your objective is to return all possible palindr...
Partition a string into palindromes and return all possible configurations.
Use backtracking to generate all possible palindrome partitions of the string.
Check if each substring is a palindrome before adding it to the partition.
Return all valid partitions as an array of strings.
Round duration - 50 minutes
Round difficulty - Easy
Mainly this round consisted of project discussion and 1 coding problem.
Design a queue data structure following the FIFO (First In First Out) principle using only stack instances.
Your task is to complete predefined functions t...
Implement a queue using stacks following FIFO principle.
Use two stacks to simulate a queue - one for enqueueing and one for dequeueing.
For enqueuing, simply push elements onto the stack.
For dequeuing, if the dequeue stack is empty, transfer all elements from enqueue stack to dequeue stack.
Peek operation can be done by checking the top element of the dequeue stack.
Check if the queue is empty by verifying if both stacks
Tip 1 : Practice Dynamic Programming questions as much you can.
Tip 2 : Be clear while explaining solution
Tip 1 : Add some good project, on which you can talk on for a good amount of time.
Tip 2 : Never put false details
Top trending discussions
I applied via Naukri.com and was interviewed in Apr 2020. There were 5 interview rounds.
I appeared for an interview in Aug 2016.
posted on 19 Aug 2016
I am a software developer with experience in Java and Python.
Proficient in Java and Python programming languages
Experience in developing web applications using Spring framework
Familiarity with database management systems such as MySQL and MongoDB
I have achieved success in developing and implementing various software solutions.
Developed a web application that increased user engagement by 30%
Implemented a new feature that reduced system downtime by 50%
Created a mobile app that received 4.5-star rating on app stores
Led a team of developers to successfully complete a project within a tight deadline
I work on a variety of projects ranging from web development to mobile app development.
Web development using HTML, CSS, JavaScript, and various frameworks such as React and Angular
Mobile app development for iOS and Android using Swift, Kotlin, and React Native
Database design and management using SQL and NoSQL databases such as MySQL and MongoDB
API development and integration using REST and GraphQL
Machine learning proje...
A hardworker puts in more effort, while a smartworker works efficiently and effectively.
A hardworker may spend more time on a task, while a smartworker finds ways to complete it faster.
A hardworker may rely on brute force, while a smartworker uses their skills and knowledge to solve problems.
A hardworker may struggle with prioritization, while a smartworker knows how to focus on the most important tasks.
A hardworker ma...
Zuckerberg is in news due to Facebook's handling of user data and misinformation.
Facebook's role in the 2016 US Presidential election
Cambridge Analytica scandal
Testimony before US Congress
Ongoing debate on social media regulation
I am a software developer with experience in Java and Python.
I have a Bachelor's degree in Computer Science.
I have worked on various projects involving web development and data analysis.
I am proficient in Java and Python programming languages.
I am a quick learner and enjoy working in a team environment.
My favorite project is the e-commerce website I developed for a local business.
I enjoyed working on the front-end design and user experience.
I implemented a secure payment gateway and order tracking system.
The website increased the business's online sales by 50%.
I received positive feedback from the client and their customers.
Inheritance is a mechanism in object-oriented programming where a new class is created by inheriting properties of an existing class.
Inheritance allows code reuse and promotes code organization.
The existing class is called the parent or superclass, and the new class is called the child or subclass.
The child class inherits all the properties and methods of the parent class and can also add its own unique properties and ...
finally is a keyword used in try-catch block, finalize is a method in Object class, and final is a keyword used for declaring constants.
finally is used to execute a block of code after try-catch block
finalize is called by garbage collector before destroying an object
final is used to declare a constant variable or to make a class uninheritable
Private keyword restricts access to member functions within the class while final keyword prevents overriding of functions.
Private keyword is used to hide the implementation details of a class from the user.
Final keyword is used to prevent the user from overriding a function in a subclass.
Using private and final keywords together can ensure that the implementation details of a class are not modified by the user.
An interface defines a set of methods that a class must implement.
An interface is declared using the 'interface' keyword.
All methods in an interface are public and abstract by default.
A class can implement multiple interfaces.
Interfaces can also extend other interfaces.
Example: public interface MyInterface { void myMethod(); }
Abstract class is a class with some implementation while Interface is a contract with no implementation.
Abstract class can have constructors while Interface cannot
Abstract class can have non-abstract methods while Interface cannot
A class can implement multiple interfaces but can only inherit from one abstract class
Abstract class is used when there is a need for common functionality among related classes while Interface...
Inheritance types in Java
Java supports single and multiple inheritance through classes and interfaces respectively
Single inheritance is when a class extends only one parent class
Multiple inheritance is when a class implements multiple interfaces
Java also supports hierarchical inheritance where multiple classes extend a single parent class
Java does not support multiple inheritance through classes to avoid the diamond pr
Order of catch blocks in a try block in Java
Specific catch blocks should come before general catch blocks
If general catch block comes before specific catch block, it will result in a compile-time error
If multiple catch blocks are present, only the first matching catch block will be executed
Garbage collection is an automatic memory management process that frees up memory occupied by objects that are no longer in use.
Garbage collection is used in programming languages like Java, C#, and Python.
It helps prevent memory leaks and reduces the risk of crashes due to memory exhaustion.
Garbage collection works by identifying objects that are no longer in use and freeing up the memory they occupy.
There are differe...
Code for connecting a Java application to a database
Import the JDBC driver for the specific database
Create a connection object using the DriverManager class
Create a statement object to execute SQL queries
Execute the query and retrieve the results
Close the connection and release resources
JSON stands for JavaScript Object Notation, a lightweight data interchange format.
JSON is used to transmit data between a server and a web application, as an alternative to XML.
It is easy to read and write for humans and easy to parse and generate for machines.
JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C family of languages.
Example: {"name"
I appeared for an interview before Mar 2021.
Round duration - 60 minutes
Round difficulty - Medium
The interviewer was really cool. He realized that I mostly work on java applications so he chose to ask me stuff related to that. He didn't want me to know the answer well but just wanted me to approach to it, maybe think more. He went through my resume back and forth and asked mostly about all my projects and their logic and how could I take them to the next level.
Tips: Be confident. Its okay not to know any answer, just try giving it a shot in the approach.
Abstract class can have both abstract and non-abstract methods, while interface can only have abstract methods.
Abstract class can have constructors, member variables, and methods with implementation.
Interface can only have abstract methods and constants.
A class can implement multiple interfaces but can only extend one abstract class.
Example: Abstract class - Animal with abstract method 'eat', Interface - Flyable with m
final is a keyword used to declare constants, finally is a block used in exception handling, and finalize is a method used for cleanup.
final is a keyword used to declare constants in Java, meaning the value cannot be changed once assigned. Example: final int x = 10;
finally is a block used in exception handling to ensure a piece of code is always executed, whether an exception is thrown or not. Example: try { // code } ...
Private restricts access to the class itself, while final prevents inheritance and method overriding.
Private access modifier restricts access to the class itself, while final access modifier prevents inheritance and method overriding.
Private members are only accessible within the same class, while final classes cannot be extended and final methods cannot be overridden.
Example: private int num; - num can only be accesse...
Establishing a JDBC connection involves loading the driver, creating a connection, creating a statement, executing queries, and handling exceptions.
Load the JDBC driver using Class.forName() method
Create a connection using DriverManager.getConnection() method
Create a statement using connection.createStatement() method
Execute queries using statement.executeQuery() method
Handle exceptions using try-catch blocks
JSON is a lightweight data interchange format used to store and transmit data between a server and a web application.
JSON stands for JavaScript Object Notation.
It is easy for humans to read and write, and easy for machines to parse and generate.
JSON is language-independent and can be used with any programming language.
Example: {"name": "John", "age": 30}
Example: [{"name": "Alice", "age": 25}, {"name": "Bob", "age": 35}
Garbage collection in Java is the process of automatically managing memory by deallocating objects that are no longer needed.
Garbage collection helps in preventing memory leaks by reclaiming memory used by objects that are no longer referenced.
Java uses a garbage collector to automatically manage memory, unlike languages like C++ where memory management is manual.
Garbage collection in Java can be triggered by calling S...
Round duration - 30 minutes
Round difficulty - Easy
I wouldn't say it went great but it was fine. I did not think I would clear it as for most of the questions the interviewer seemed disappointed and wanted more out of me.
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
I appeared for an interview in Aug 2017.
I am a passionate software developer with experience in Java, Python, and web development.
Experienced in Java, Python, and web development
Passionate about coding and problem-solving
Strong communication and teamwork skills
Always eager to learn and adapt to new technologies
I applied via Naukri.com and was interviewed in May 2019. There was 1 interview round.
MVC separates data flow into three components: Model, View, and Controller.
Model represents data and business logic
View displays data to the user
Controller handles user input and updates the model and view accordingly
Data flows from the model to the view through the controller
Changes in the view are communicated to the controller, which updates the model and view
MVC stands for Model-View-Controller. It is a software design pattern that separates an application into three interconnected components.
Model: Represents the data and business logic of the application
View: Displays the data to the user and handles user input
Controller: Acts as an intermediary between the Model and View, handling user input and updating the Model and View accordingly
I applied via Naukri.com and was interviewed before May 2020. There were 5 interview rounds.
based on 1 interview
Interview experience
based on 4 reviews
Rating in categories
Senior Software Engineer
186
salaries
| ₹12.4 L/yr - ₹45 L/yr |
Associate Analyst
123
salaries
| ₹3.5 L/yr - ₹7.2 L/yr |
Technical Lead
105
salaries
| ₹18.6 L/yr - ₹55 L/yr |
Software Engineer
102
salaries
| ₹17 L/yr - ₹25 L/yr |
Associate
82
salaries
| ₹1.6 L/yr - ₹4.5 L/yr |
Thomson Reuters
Oracle Cerner
Chetu
R Systems International