Senior Software Engineer
3500+ Senior Software Engineer Interview Questions and Answers
Q151. What is your company's code review process? What practices you follow while writing code. How do you test your code manually?
Our code review process involves peer reviews and automated testing. We follow best practices and use manual testing for edge cases.
Peer reviews are conducted for all code changes before merging into the main branch
We use automated testing tools like Jest and Enzyme for unit and integration testing
We follow best practices like writing clean and modular code, using meaningful variable names, and commenting where necessary
Manual testing is used for edge cases and scenarios that...read more
Q152. What is Dependency Injection and Is is implemented in project and How?
Dependency Injection is a design pattern used to remove hard-coded dependencies and make code more flexible and testable.
Dependency Injection is implemented by injecting the required dependencies into a class rather than creating them within the class.
This can be achieved through constructor injection, setter injection, or interface injection.
For example, in Java, Spring Framework provides a powerful dependency injection mechanism through its @Autowired annotation.
Dependency ...read more
Q153. 1. Diff betn case and decode 2. Primary unique keys 3. Diff betn proc and function 4. Query for 2nd highest sal dept wise 5. Query to find sum witbout using aggregate 6. Queries on count distinct 7. Updating 2 ...
read moreAnswers to interview questions for Senior Software Engineer
1. CASE is used to provide conditional logic in SQL queries, while DECODE is used to perform conditional value substitution.
2. Primary keys are used to uniquely identify each record in a database table.
3. Procedures and functions are both database objects that encapsulate a series of SQL statements, but functions return a value while procedures do not.
4. SELECT MAX(salary) FROM employees WHERE salary < (SELECT MAX(sal...read more
How to delete Duplicates From a Table in SQL Server?
Why Java is platform independent and JVM platform dependent?
1) What is JSX?
2) What are higher order components?
3) Explain prop drilling.
4) Do you know anything about the producer consumer problem?
5) What is circular wait ?
Share interview questions and help millions of jobseekers 🌟
Q157. What is GCD? Explain in details
GCD stands for Greatest Common Divisor. It is the largest positive integer that divides two or more numbers without leaving a remainder.
GCD is used to find the highest common factor between two or more numbers.
It is often used in mathematical calculations and algorithms.
GCD can be calculated using various methods like Euclidean algorithm or prime factorization.
Example: GCD of 12 and 18 is 6, as 6 is the largest number that divides both 12 and 18 without leaving a remainder.
Q158. Create table view for different profile and can have more then 60 column. How to implement dynamically
Use dynamic SQL to create table view with more than 60 columns for different profiles
Use dynamic SQL to generate the CREATE VIEW statement based on the profile requirements
Iterate through the profile columns and add them to the CREATE VIEW statement dynamically
Consider using a loop or a mapping function to handle the large number of columns efficiently
Senior Software Engineer Jobs
Q159. System Design Round : Design IRCTC , how does IRCTC reserve a seat? What kind of locking do they use?
IRCTC reserves seats using a complex system of availability checks and booking processes.
IRCTC uses a combination of real-time availability checks and booking processes to reserve seats.
The system checks for availability of seats in real-time and reserves them for a short period of time while the booking process is completed.
IRCTC uses a locking mechanism to ensure that the same seat is not booked by multiple users at the same time.
The locking mechanism is based on a first-co...read more
Q160. Is Authentication implemented in project and if yes How?
Yes, authentication is implemented using OAuth 2.0 protocol.
OAuth 2.0 protocol is used for authentication.
Access tokens are issued to authorized clients.
Refresh tokens are used to obtain new access tokens.
Authentication is required for all API endpoints.
Q161. Issues faced in troubleshooting your applications and how you overcome it.
Troubleshooting application issues requires thorough analysis, communication, and collaboration.
Identifying the root cause of the issue by analyzing logs, code, and system configurations.
Communicating effectively with team members to gather information and brainstorm solutions.
Collaborating with other teams such as DevOps or QA to investigate potential infrastructure or testing issues.
Utilizing debugging tools and techniques to isolate and fix the problem.
Documenting the trou...read more
What Are the Basic Annotations that Spring Boot Offers?
What do you understand by auto wiring and name the different modes of it?
Q164. what is express js and why it is used in web apps and what is body parser
Express.js is a popular Node.js web framework used for building web applications. Body-parser is a middleware used to parse incoming request bodies.
Express.js is a minimal and flexible Node.js web application framework that provides a robust set of features for web and mobile applications.
It provides a way to handle HTTP requests and responses, routing, middleware, and more.
Body-parser is a middleware used to parse incoming request bodies in a middleware before your handlers,...read more
What is conditional split transaction in SSIS?
Q166. Have you ever worked on Entity framework, which version you have used?
Yes, I have worked on Entity Framework.
I have used Entity Framework version 6.0 in my previous project.
I have experience in designing and implementing database models using Entity Framework.
I have used LINQ to query and manipulate data in Entity Framework.
I have also worked with migrations and code-first approach in Entity Framework.
What is the default port of tomcat in spring boot?
Q168. When should i use Generics and benefits of using .Net Generic classes?
Generics should be used when you want to create reusable code that can work with different types.
Generics allow you to write code that can work with different types without sacrificing type safety.
They provide compile-time type checking, reducing the chances of runtime errors.
Generics promote code reusability and maintainability by allowing you to write generic algorithms and data structures.
Using generic classes in .NET can improve performance by avoiding unnecessary boxing ...read more
Q169. Write down logic of Singleton class, Why should i use it if we have Static class?
Singleton class ensures only one instance is created, while static class allows multiple instances.
Singleton class restricts instantiation of a class to a single object.
It provides a global point of access to the instance.
It is useful when only one instance of a class is required throughout the system.
Singletons can be lazy-loaded or eagerly-loaded.
Static classes allow multiple instances and are not suitable for maintaining state.
Static classes are useful for utility function...read more
Q170. 1. OOPS CONCEPTS 2. DIFFERENCE BETWEEN ABSTRACT AND INTERFACE 3. WRITE A SQL QUERY TO GET SECOND HIGH SALARY FROM SALARY TABLE. 4. What is index in SQL server 5. Define primary key, foreign key and unique key 6...
read moreInterview questions for Senior Software Engineer position
OOPS concepts include inheritance, polymorphism, encapsulation, and abstraction
Abstract classes cannot be instantiated while interfaces cannot have implementation
SQL query to get second highest salary: SELECT MAX(salary) FROM table_name WHERE salary < (SELECT MAX(salary) FROM table_name)
Index in SQL server is a data structure that improves the speed of data retrieval operations
Primary key uniquely identifies a record, f...read more
Q171. Have you worked in Plan? How to pass a runtime parameter from Graph task 1 to Graph task 2 within a plan with the different timings?
Passing a runtime parameter from one Graph task to another within a Plan with different timings.
Use Plan variables to store the runtime parameter in Graph task 1
Set up a trigger in Graph task 2 to read the parameter from the Plan variables
Ensure that the timings of the Graph tasks are properly synchronized
Q172. Implementation of hashmap in Java 8, Bean lifecycle, difference between @Component and @Service, Front Controller, difference between PUT & PATCH, Authentication in REST APIs, how to disable junit test cases in...
read moreThe interview question covers topics like hashmap implementation in Java 8, bean lifecycle, annotations in Spring framework, HTTP methods, REST API authentication, and disabling junit test cases during deployment.
HashMap in Java 8 uses an array of linked lists to store key-value pairs, with the hash code of the key determining the index in the array.
Bean lifecycle in Spring framework involves initialization and destruction phases, managed by the container.
@Component and @Serv...read more
Q173. How do you find out the system's IP address in Unix?
To find out the system's IP address in Unix, you can use the 'ifconfig' command or the 'ip addr show' command.
Use the 'ifconfig' command to display the IP address of all network interfaces on the system.
Alternatively, you can use the 'ip addr show' command to show the IP address information of all network interfaces.
You can also use tools like 'hostname -I' or 'ip route get 1.2.3.4' to find out the system's IP address.
Q174. What is your explanation of Object-Oriented Programming (OOP) with a real-world example?
OOP is a programming paradigm based on the concept of objects, which can contain data in the form of fields and code in the form of procedures.
OOP focuses on creating objects that interact with each other to solve complex problems
Objects have attributes (data) and methods (functions) that operate on the data
Encapsulation, inheritance, and polymorphism are key principles of OOP
Example: A car object with attributes like color, model, and methods like start(), stop()
Q175. 1) Largest Palindrom in a substring 2) Difference between wait and sleep in Thread 3) SQL join queries 4) Second largest employee salary SQL Query 5) First level and second level cache in hibernate 6) Differenc...
read moreInterview questions for Senior Software Engineer
1) Largest Palindrom in a substring - use two pointers approach
2) Difference between wait and sleep in Thread - wait releases the lock, sleep doesn't
3) SQL join queries - inner, outer, left, right, self joins
4) Second largest employee salary SQL Query - use subquery or order by and limit
5) First level and second level cache in hibernate - first level is session specific, second level is application wide
6) Difference between get ...read more
Q176. Difference between cursor and while loop which is better to use?
A cursor is used to retrieve and manipulate data from a database, while a while loop is a control structure used to repeat a block of code.
Cursors are used in database operations, while while loops are used in programming logic.
Cursors are typically used to iterate over a result set, while while loops can be used for any repetitive task.
Cursors can be more efficient for large result sets, while while loops are generally simpler and easier to understand.
Cursors can be used to ...read more
Q177. Difference between procedure and function, delete and truncate, exit and in, cursor and bulk bind, cursor and collection, view and materialized view. How to avoid cross join. Different types of joins.
Explanation of differences between programming concepts and techniques.
Procedure vs Function: Functions return a value while procedures do not.
Delete vs Truncate: Delete removes rows one by one while truncate removes all rows at once.
Exit vs In: Exit is used to exit a loop or a program while In is used to pass values into a subprogram.
Cursor vs Bulk Bind: Cursor fetches one row at a time while Bulk Bind fetches multiple rows at once.
Cursor vs Collection: Cursor is used to fet...read more
Q178. Explain MVC filters step by step and how to use in your projects?
MVC filters are used in projects to handle cross-cutting concerns and provide a way to intercept and modify the behavior of MVC actions.
MVC filters are attributes that can be applied to controllers or actions.
They can be used to perform tasks like authentication, authorization, logging, exception handling, etc.
Filters can be applied globally, at the controller level, or at the action level.
There are different types of filters in MVC, such as Authorization filters, Action filt...read more
Q179. In a stored procedure there are 1000 lines of statement, how do you identify a slow running query
Identifying slow running query in a 1000 line stored procedure
Use SQL Server Profiler to trace the stored procedure and identify the slow running query
Check the execution plan of the stored procedure to identify the slow running query
Use SET STATISTICS TIME ON to measure the execution time of each query in the stored procedure
Divide the stored procedure into smaller parts and test each part to identify the slow running query
What is Garbage collector in JAVA?
Garbage collector in Java is responsible for automatic memory management.
Garbage collector automatically reclaims memory by freeing objects that are no longer referenced.
It runs in the background and identifies unused objects based on reachability.
Different garbage collection algorithms like Mark and Sweep, Copying, and Generational are used.
Garbage collector can be tuned using JVM options like -Xmx and -Xms.
Example: System.gc() can be used to suggest garbage collection, but ...read more
Explain the difference between driver.close() and driver.quit() command in Selenium?
Q182. What a SQL Function returns (what are the return type of function)
SQL functions return a single value of a specified data type.
SQL functions can return various data types such as integer, string, date, etc.
The return type of a function is specified in the function declaration.
Functions can be used in SELECT, WHERE, and other SQL statements to manipulate data.
Examples of SQL functions include COUNT, AVG, MAX, MIN, and CONCAT.
Functions can also be user-defined using the CREATE FUNCTION statement.
Q183. what are the scope in javascript, describe each one.
Scopes in JavaScript determine the accessibility of variables and functions.
Global scope: variables and functions declared outside any function are accessible globally
Local scope: variables and functions declared inside a function are only accessible within that function
Block scope: variables declared with let and const are only accessible within the block they are declared in
Function scope: variables declared with var are accessible within the function they are declared in
Q184. What is partial views and how it is differs from View
Partial views are reusable components of a view that can be rendered within other views.
Partial views are used to break down complex views into smaller, more manageable pieces.
They can be used to display common elements across multiple views, such as headers or footers.
Partial views can be rendered within other views using the @Html.Partial() method in ASP.NET MVC.
They can also be passed data from the parent view using the @Html.Partial() method with a model parameter.
Partial...read more
Q185. Which design pattern you have used, take some name and give me example from your current project.
I have used the Observer design pattern in my current project.
Observer pattern is used to establish a one-to-many dependency between objects.
It allows multiple objects to be notified and updated automatically when a subject object changes its state.
In my project, we implemented the Observer pattern to notify various components of the system about changes in data.
For example, when a user updates their profile information, the Observer pattern is used to notify all relevant com...read more
Q186. Why do we go for an abstract class and how do you implement it
Abstract classes provide a blueprint for other classes to follow and cannot be instantiated.
Abstract classes are used when we want to provide a common interface for a group of related classes.
They cannot be instantiated and must be extended by a subclass.
Abstract methods are declared in the abstract class and implemented in the subclass.
They can have both abstract and non-abstract methods.
Example: Animal is an abstract class and Dog, Cat, and Bird are its subclasses.
Q187. What are ref and out keywords? and What is the difference in them?
Ref and out are keywords used in C# to pass arguments by reference instead of value.
Ref and out are used to pass arguments by reference instead of value
Ref keyword is used to pass a reference of the variable to the method
Out keyword is used to pass a reference of the variable to the method and requires the variable to be initialized before use
Ref keyword can be used to modify the value of the variable passed as an argument
Out keyword is used when the method needs to return mu...read more
Q188. What is MVC and how is it different from 3tier achitecture?
MVC is a software design pattern that separates an application into three main components: Model, View, and Controller.
MVC stands for Model-View-Controller
In MVC, Model represents the data and business logic, View represents the user interface, and Controller acts as an intermediary between Model and View
3-tier architecture typically consists of Presentation Layer, Business Logic Layer, and Data Access Layer
In 3-tier architecture, each layer is responsible for specific functi...read more
Q189. What are indexes in the database? what is the difference between clustered and non-clustered indexes?
Indexes are used to improve database performance. Clustered indexes determine the physical order of data, while non-clustered indexes do not.
Indexes are used to speed up data retrieval operations in a database.
Clustered indexes determine the physical order of data in a table, while non-clustered indexes do not.
A table can have only one clustered index, but multiple non-clustered indexes.
Clustered indexes are generally faster for retrieving large ranges of data, while non-clus...read more
Q190. What is Merge Sort and Quick sort? Which one is better? Can you code them?
Merge Sort and Quick Sort are sorting algorithms. Merge Sort is stable but slower. Quick Sort is faster but unstable.
Merge Sort divides the array into two halves, sorts them recursively, and then merges them.
Quick Sort selects a pivot element, partitions the array around the pivot, and then recursively sorts the subarrays.
Merge Sort has a time complexity of O(nlogn) and space complexity of O(n).
Quick Sort has a time complexity of O(nlogn) on average and O(n^2) in the worst ca...read more
What is the default access modifier in C#?
What are Java 8 streams?
Q193. What if array get assign with null does it still has array length
No, assigning null to an array makes it empty and its length becomes 0.
Assigning null to an array makes it empty.
The length of an empty array is 0.
Trying to access length property of null will result in an error.
Q194. What is singleton design patterns how to use in your projects?
Singleton design pattern restricts the instantiation of a class to one object.
Used when only one instance of a class is required throughout the project
Provides a global point of access to the instance
Can be implemented using a private constructor and a static method
Examples include database connections, configuration settings, and logger classes
Q195. 1. What is architecture of JVM? How does memory management do in JVM? what are various segment of Heap memory like Eden, survival and old memory?
JVM architecture includes class loader, bytecode verifier, interpreter, JIT compiler, and runtime data areas. Memory management is done through garbage collection.
JVM has class loader to load class files and bytecode verifier to check the code for security and correctness.
Interpreter executes the bytecode and JIT compiler optimizes the code for better performance.
Runtime data areas include method area, heap, stack, and PC registers.
Memory management is done through garbage co...read more
What is a classloader ?
Why are java strings immutable in nature?
What is the default value of local variables in Java?
Q197. What is OOP? Can main method be overloaded? What is a abstraction with example? How to take properties from base class to child class using inheritance? Why Java is not purely object oriented? What is this keyw...
read moreOOP stands for Object-Oriented Programming. It is a programming paradigm based on the concept of objects, which can contain data and code.
Main method can be overloaded in Java by defining multiple methods with the same name but different parameters.
Abstraction in OOP is the concept of hiding the implementation details and showing only the necessary features of an object. Example: Car as an object with properties like color, model, and methods like start, stop.
Inheritance in J...read more
Q198. How did you verify the data after transferring it from one database to another?
I verified the data by comparing the source and destination databases using SQL queries and automated scripts.
Used SQL queries to check for data consistency between the source and destination databases
Wrote automated scripts to compare records and identify any discrepancies
Performed manual spot checks on a sample of transferred data to ensure accuracy
Q199. What are stored procedures in Snowflake, and how did you utilize them?
Stored procedures in Snowflake are precompiled SQL code blocks stored in the database for reuse.
Stored procedures are used to encapsulate complex SQL logic for reuse.
They can improve performance by reducing network traffic and increasing security.
Examples of using stored procedures in Snowflake include creating data transformation pipelines and automating data loading processes.
Q200. What are the different types of duplicate checks that can be performed using SQL queries?
Different types of duplicate checks using SQL queries
Using DISTINCT keyword to remove duplicate rows
Using GROUP BY clause to group data and count duplicates
Using INNER JOIN to identify duplicates between two tables
Using subqueries to find duplicates within a single table
Interview Questions of Similar Designations
Top Interview Questions for Senior Software Engineer Related Skills
Interview experiences of popular companies
Calculate your in-hand salary
Confused about how your in-hand salary is calculated? Enter your annual salary (CTC) and get your in-hand salary
Reviews
Interviews
Salaries
Users/Month