Senior Software Engineer

4500+ Senior Software Engineer Interview Questions and Answers

Updated 16 Jul 2025
search-icon

Asked in Wipro

2w ago

Q. What is the difference between CTE, Temp table, and Table variable?

Ans.

CTE, Temp table and Table variable are used to store temporary data in SQL Server.

  • CTE (Common Table Expression) is a temporary named result set that can be referenced within a SELECT, INSERT, UPDATE, or DELETE statement.

  • Temp table is a physical table that is created in the tempdb database and can be used to store temporary data.

  • Table variable is a variable that can store a result set for later use and is similar to a temp table but is stored in memory.

  • CTE is useful for recurs...read more

1w ago

Q. What is the major difference between an Array and an ArrayList?

Ans.

Array is a fixed-size data structure while ArrayList is a dynamic-size data structure in Java.

  • Array has a fixed length, while ArrayList can dynamically resize.

  • Array can store both primitive and object types, while ArrayList can only store object types.

  • Array uses square brackets [] for declaration, while ArrayList uses angle brackets <>.

  • Array is more memory efficient than ArrayList.

  • Array provides direct access to elements using index, while ArrayList requires methods like get(...read more

Asked in Coforge

2w ago

Q. Why we use declare expression and example, What is sub report

Ans.

Declare expression is used to define reusable expressions. Sub report is a report within a report.

  • Declare expression helps in reducing redundancy and improving maintainability of the code.

  • It allows defining expressions that can be used across multiple rules and decision tables.

  • For example, a declare expression can be used to calculate the age of a customer based on their date of birth.

  • A sub report is a report that is embedded within another report.

  • It is used to display relate...read more

1w ago

Q. How do different microservices communicate with each other?

Ans.

Microservices communicate with each other through APIs, message queues, or event-driven architecture.

  • APIs: Microservices can communicate with each other through RESTful APIs or GraphQL.

  • Message queues: Services can use message brokers like RabbitMQ or Kafka to send and receive messages.

  • Event-driven architecture: Services can publish events to a message broker and subscribe to events they are interested in.

  • Service discovery: Services can use tools like Consul or Eureka to disco...read more

Are these interview questions helpful?
4d ago

Q. What is the difference between encapsulation and abstraction?

Ans.

Encapsulation is the concept of bundling data and methods that operate on the data into a single unit, while abstraction is the concept of hiding the implementation details and showing only the necessary features of an object.

  • Encapsulation involves bundling data and methods into a single unit (class), protecting the data from outside interference.

  • Abstraction involves hiding the implementation details and showing only the necessary features of an object to the outside world.

  • En...read more

Asked in Info Edge

1w ago

Q. Given an array of integers representing stock prices, find the buy and sell values that maximize profit.

Ans.

Find the maximum profit from buying and selling a stock given an array of its values.

  • Iterate through the array and keep track of the minimum value seen so far.

  • Calculate the profit at each index and update the maximum profit seen.

  • Return the maximum profit.

Senior Software Engineer Jobs

DHL Global Forwarding India logo
Senior Software Engineer • 4-10 years
DHL Global Forwarding India
•
4.2
Chennai
DHL Global Forwarding India logo
Senior Software Engineer • 5-10 years
DHL Global Forwarding India
•
4.2
Chennai
DHL Global Forwarding India logo
Senior Software Engineer • 8-10 years
DHL Global Forwarding India
•
4.2
Chennai
2w ago

Q. How do you deal with customers through email, Do you have any experience handling this?

Ans.

Yes

  • I have extensive experience dealing with customers through email

  • I prioritize clear and concise communication to address customer inquiries and concerns

  • I ensure prompt responses and follow-ups to maintain customer satisfaction

  • I have successfully resolved complex issues and provided technical guidance via email

  • I maintain a professional and empathetic tone in all customer interactions

Q. How proficient are you at automating infrastructure using scripting or coding?

Ans.

I am highly skilled in automating infrastructure using scripting and coding.

  • Proficient in scripting languages like Python, Bash, and PowerShell

  • Experience in using configuration management tools like Ansible and Chef

  • Familiarity with cloud platforms like AWS and Azure and their automation tools

  • Implemented infrastructure as code using tools like Terraform

  • Automated deployment pipelines using tools like Jenkins and GitLab CI/CD

  • Examples: Wrote Python scripts to automate AWS EC2 ins...read more

Share interview questions and help millions of jobseekers 🌟

man-with-laptop

Asked in Arcesium

1d ago
Q. What are the ACID properties in database management systems?
Ans.

ACID properties are a set of properties that guarantee reliability and consistency in database transactions.

  • ACID stands for Atomicity, Consistency, Isolation, and Durability.

  • Atomicity ensures that a transaction is treated as a single unit of work, either all of its operations are executed or none.

  • Consistency ensures that a transaction brings the database from one valid state to another.

  • Isolation ensures that concurrent transactions do not interfere with each other.

  • Durability ...read more

Asked in HCLTech

1w ago

Q. Find the second highest number by using Java Stream, What are the new changes in Java 8 from Java 7. HashMap and HashSet internal implementation.

Ans.

Using Java Stream to find the second highest number, Java 8 changes, HashMap and HashSet internal implementation.

  • Use Java Stream to sort the numbers in descending order and skip the first element to get the second highest number.

  • Java 8 introduced lambda expressions, functional interfaces, Stream API, default methods in interfaces, and new Date and Time API.

  • HashMap uses buckets to store key-value pairs, while HashSet uses HashMap internally to store unique elements.

  • HashMap all...read more

4d ago

Q. What is Singleton Design Pattern? Can we create a clone of an object from singleton class?

Ans.

Singleton Design Pattern ensures only one instance of a class exists. No, we cannot create a clone of an object from singleton class.

  • Singleton pattern restricts the instantiation of a class to one object.

  • It is used when only one object is required to coordinate actions across the system.

  • The instance is created only when it is requested for the first time.

  • The constructor of the singleton class is private.

  • Clone method is not supported in singleton pattern.

Asked in Cognizant

1w ago

Q. Have you had experience working with semantic tags in HTML?

Ans.

Yes, I have experience working with semantic tags in HTML.

  • Used semantic tags like <header>, <nav>, <main>, <section>, <article>, <aside>, <footer> for better structure and SEO.

  • Understand the importance of using semantic tags for accessibility and search engine optimization.

  • Semantic tags help in organizing content and making it more readable for developers and browsers.

Asked in Cognizant

2w ago

Q. What are block scope and function scope in JavaScript?

Ans.

Block scope and function scope are two types of scopes in JavaScript that determine the visibility and accessibility of variables.

  • Block scope refers to the visibility of variables within a block of code enclosed by curly braces. Variables declared with 'let' and 'const' have block scope.

  • Function scope refers to the visibility of variables within a function. Variables declared with 'var' have function scope.

  • Variables declared with 'let' and 'const' are only accessible within t...read more

Asked in Cognizant

2w ago

Q. What are the various state management techniques available in React?

Ans.

Various state management techniques in React include Context API, Redux, and local state.

  • Context API: React's built-in solution for passing data through the component tree without having to pass props down manually at every level.

  • Redux: A popular state management library for React applications, allowing for a centralized store to manage application state.

  • Local state: Managing state within individual components using useState hook or this.state in class components.

Asked in Cognizant

5d ago

Q. What is the difference between useMemo and useCallback in React?

Ans.

useMemo is used to memoize a value, while useCallback is used to memoize a function.

  • useMemo is used to memoize a value and recompute it only when its dependencies change.

  • useCallback is used to memoize a callback function and prevent unnecessary re-renders.

  • Example: useMemo can be used to memoize the result of a complex computation, while useCallback can be used to memoize an event handler function.

Asked in Deliveroo

2w ago

Q. Design a system to handle a flash sale of 10 million burgers for 10 minutes.

Ans.

A system to sell 10 million burgers in 10 minutes

  • Implement a high-traffic online ordering platform

  • Utilize pre-ordering and queue management systems to handle the rush

  • Have a countdown timer for the 10-minute sale period

  • Ensure sufficient stock and staff to meet demand

  • Offer limited-time promotions to attract customers

Q. Can you explain the JUnit annotations that are linked with Selenium?
Ans.

JUnit annotations like @Before, @Test, @After are commonly used with Selenium for test automation.

  • Annotations like @Before are used to set up preconditions before each test method is executed.

  • Annotations like @Test are used to mark a method as a test method.

  • Annotations like @After are used to clean up after each test method is executed.

  • Annotations like @Ignore are used to skip a test method.

  • Annotations like @RunWith are used to specify a custom test runner.

1d ago

Q. Create a small machine coding assignment to solve in an online IDE that fetches data from an API and displays the results. Include a search input box at the top where users can search for items.

Ans.

Create a web app to fetch data from an API and implement a search feature for user interaction.

  • Use Fetch API to retrieve data from a public API, e.g., JSONPlaceholder.

  • Implement a search input box that filters results based on user input.

  • Display results in a user-friendly format, such as a list or table.

  • Handle loading states and errors gracefully to enhance user experience.

  • Consider using a framework like React or Vue.js for better state management.

2w ago

Q. There are n number of houses built in a line, each of which contains some money in it. A thief is going to steal the maximum money of these houses, but he can’t steal in two adjacent houses because the owner of...

read more
Ans.

The thief must maximize stolen money from non-adjacent houses, using dynamic programming for optimal solution.

  • Dynamic Programming Approach: Use an array to store the maximum money that can be stolen up to each house.

  • Recurrence Relation: For each house, decide to either steal from it (adding its value to the max of two houses before) or skip it.

  • Base Cases: If there are no houses, max money is 0; if one house, max money is its value.

  • Example: For houses with values [2, 7, 9, 3, ...read more

Asked in Wabtec

6d ago

Q. What are RESTful services and Web API, and what are the differences between them?

Ans.

RESTful services are web services that follow the REST architecture while WebAPI is a framework for building RESTful services.

  • RESTful services use HTTP methods like GET, POST, PUT, DELETE to perform CRUD operations on resources

  • WebAPI is a framework for building RESTful services using .NET framework

  • WebAPI provides features like routing, model binding, content negotiation, etc.

  • RESTful services can be consumed by any client that can make HTTP requests

  • WebAPI can be used to build ...read more

Asked in Birlasoft

2d ago
Q. What is the difference between a junk dimension and a degenerate dimension?
Ans.

Junk dimension contains non-additive, unrelated attributes. Degenerate dimension is a dimension key without its own dimension table.

  • Junk dimension combines several low-cardinality attributes into a single dimension table.

  • Degenerate dimension is a dimension key stored in fact table, not having its own dimension table.

  • Example of junk dimension: combining flags like 'is_active', 'is_deleted' into a single table.

  • Example of degenerate dimension: order number in a sales fact table.

1w ago

Q. Write a simple SQL query using GROUP BY and an aggregate function.

Ans.

Using SQL's GROUP BY and aggregate functions to summarize data effectively.

  • GROUP BY is used to arrange identical data into groups.

  • Aggregate functions like COUNT(), SUM(), AVG(), MAX(), and MIN() summarize data.

  • Example: SELECT department, COUNT(*) FROM employees GROUP BY department; returns the number of employees in each department.

  • You can combine multiple aggregate functions: SELECT department, AVG(salary), MAX(salary) FROM employees GROUP BY department;

  • HAVING clause can fil...read more

Asked in AmbitionBox

2d ago

Q. Write code to find the frequency of characters in a given string.

Ans.

Code to find frequency of characters in a given string

  • Use a hash table to store character frequencies

  • Iterate through the string and update the hash table accordingly

  • Print the hash table to display the character frequencies

Q. What is the difference between INNER JOIN and LEFT JOIN?

Ans.

INNER JOIN returns only the rows that have matching values in both tables, while LEFT JOIN returns all rows from the left table and the matched rows from the right table.

  • INNER JOIN is used to retrieve rows from both tables that have matching values based on the specified condition.

  • LEFT JOIN is used to retrieve all rows from the left table, along with the matched rows from the right table. If there is no match, NULL values are returned for the right table columns.

  • Example: If w...read more

Asked in Wingify

2w ago

Q. what is generator functions? what is symbols? write an implementation for const keyword to support in es05.

Ans.

Generator functions and symbols in JavaScript. Implementation of const keyword in ES5.

  • Generator functions are functions that can be paused and resumed, allowing for lazy evaluation of data.

  • Symbols are a new primitive type in ES6 that can be used as unique identifiers.

  • To implement const in ES5, we can use Object.defineProperty to create a read-only property on an object.

Asked in Ker InfoTech

2w ago

Q. Which design patterns do you know, and where would you implement them?

Ans.

One design pattern I know is the Singleton pattern, which ensures a class has only one instance and provides a global point of access to it.

  • Singleton pattern can be implemented in scenarios where only one instance of a class is needed, such as a logger class or a configuration class.

  • It is commonly used in database connections, thread pools, and caching mechanisms.

  • Example: Implementing a Singleton pattern for a database connection class to ensure only one connection is establi...read more

Asked in cloudEQ

2d ago

Q. What is the difference between Interfaces and Abstract classes?

Ans.

Interfaces define contracts for behavior while abstract classes provide partial implementation.

  • Interfaces cannot have implementation while abstract classes can have partial implementation.

  • A class can implement multiple interfaces but can inherit from only one abstract class.

  • Interfaces are used for loose coupling while abstract classes are used for code reuse.

  • Example: An interface 'Drawable' can define a method 'draw' which any class implementing it must define. An abstract cl...read more

Asked in Infosys

1w ago

Q. When an int is declared with a 0 value and passed as an out parameter to a method, what will be the output?

Ans.

The output will depend on the implementation of the method.

  • The method may or may not modify the value of the int parameter.

  • The method may or may not return a value based on the int parameter.

  • Without knowing the implementation of the method, it is impossible to predict the output.

Asked in Birlasoft

2w ago
Q. Can you explain the types of facts in data warehousing?
Ans.

Types of facts in data warehousing include additive, semi-additive, and non-additive facts.

  • Additive facts: can be summed up across all dimensions. Example: sales amount.

  • Semi-additive facts: can be summed up across some dimensions but not all. Example: inventory levels.

  • Non-additive facts: cannot be summed up across any dimension. Example: average temperature.

Asked in Capgemini

1w ago
Q. Can you explain the various navigation commands supported by Selenium?
Ans.

Selenium supports various navigation commands for interacting with web pages.

  • Some navigation commands supported by Selenium include get(), navigate().to(), navigate().back(), navigate().forward(), and navigate().refresh().

  • The get() command is used to open a webpage by providing the URL as a parameter.

  • The navigate().to() command is used to navigate to a specific URL.

  • The navigate().back() command is used to navigate back to the previous page in the browser history.

  • The navigate(...read more

Previous
6
7
8
9
10
11
12
Next

Interview Experiences of Popular Companies

TCS Logo
3.6
 • 11.1k Interviews
Accenture Logo
3.7
 • 8.7k Interviews
Infosys Logo
3.6
 • 7.9k Interviews
Wipro Logo
3.7
 • 6.1k Interviews
Capgemini Logo
3.7
 • 5.1k Interviews
View all
Interview Tips & Stories
Interview Tips & Stories
Ace your next interview with expert advice and inspiring stories
Senior Software Engineer Interview Questions
Share an Interview
Stay ahead in your career. Get AmbitionBox app
play-icon
play-icon
qr-code
Trusted by over 1.5 Crore job seekers to find their right fit company
80 L+

Reviews

10L+

Interviews

4 Cr+

Salaries

1.5 Cr+

Users

Contribute to help millions

Made with ❤️ in India. Trademarks belong to their respective owners. All rights reserved © 2025 Info Edge (India) Ltd.

Follow Us
  • Youtube
  • Instagram
  • LinkedIn
  • Facebook
  • Twitter
Profile Image
Hello, Guest
AmbitionBox Employee Choice Awards 2025
Winners announced!
awards-icon
Contribute to help millions!
Write a review
Write a review
Share interview
Share interview
Contribute salary
Contribute salary
Add office photos
Add office photos
Add office benefits
Add office benefits