Senior Software Engineer

3500+ Senior Software Engineer Interview Questions and Answers

Updated 27 Jan 2025
search-icon

Q351. What is O-Auth ? Which type of authentication/security used in ur project ?

Ans.

O-Auth is an open standard for authorization. Our project uses token-based authentication for security.

  • O-Auth is used to allow users to grant access to their resources without sharing their credentials.

  • It uses tokens for authentication instead of passwords.

  • Our project uses token-based authentication for security purposes.

  • Token-based authentication involves generating a unique token for each user that is used to authenticate their requests.

Q352. FInd the max triplets such that i

Ans.

Find the max triplets such that i

  • Sort the array in ascending order

  • Iterate over the array and keep track of the maximum triplet

  • Return the maximum triplet

Q353. What is the code to find and print the third highest employee in an employee list using Java 8 and Streams?

Ans.

Using Java 8 Streams to find and print the third highest employee in an employee list.

  • Sort the employee list in descending order based on their salaries.

  • Skip the first two employees to get the third highest employee.

  • Print the details of the third highest employee.

Q354. Can you explain the life cycle of a thread in Java?
Are these interview questions helpful?

Q355. Explain Different ways to send data view to controller?

Ans.

Different ways to send data view to controller

  • Using form submission

  • Using AJAX requests

  • Using URL parameters

  • Using cookies or local storage

  • Using web sockets

Q356. What are the most commonly used instructions in a Dockerfile?

Share interview questions and help millions of jobseekers 🌟

man-with-laptop

Q357. What is spring boot , annotations used in spring boot? Validation done in spring boot

Ans.

Spring Boot is a framework for building standalone, production-grade Spring-based applications.

  • Annotations used in Spring Boot include @SpringBootApplication, @RestController, @Autowired, @Component, @Configuration, @EnableAutoConfiguration, and more.

  • Validation in Spring Boot can be done using annotations such as @NotNull, @Size, @Min, @Max, and @Pattern.

  • Spring Boot also provides built-in support for validation using the javax.validation API.

  • Spring Boot's validation can be cu...read more

Q358. What is the difference between SQL and NoSQL databases?
Ans.

SQL databases are relational databases that use structured query language, while NoSQL databases are non-relational databases that use various data models.

  • SQL databases are based on a fixed schema, while NoSQL databases are schema-less.

  • SQL databases are better suited for complex queries and structured data, while NoSQL databases are better for unstructured and semi-structured data.

  • SQL databases ensure ACID (Atomicity, Consistency, Isolation, Durability) properties, while NoSQ...read more

Senior Software Engineer Jobs

Senior Software Engineer - Workday 4-6 years
Maersk Global Service Centres India Pvt. Ltd.
4.2
Pune
Senior Software Engineer, Amazon Music 3-10 years
Amazon India Software Dev Centre Pvt Ltd
4.1
Bangalore / Bengaluru
Senior Software Engineer 4-8 years
Wells Fargo International Solutions Private Ltd
3.9
Bangalore / Bengaluru

Q359. Where would you use flask and where would you use django

Ans.

Flask is lightweight and good for small projects, while Django is more robust and suitable for larger projects.

  • Flask is good for small projects with simple requirements

  • Django is more suitable for larger projects with complex requirements

  • Flask is lightweight and flexible, allowing for more customization

  • Django has a lot of built-in features and is more opinionated

  • Flask is better for RESTful APIs and microservices

  • Django is better for full-stack web applications

  • Examples of Flask ...read more

Q360. Diifference in Value Type and Refence Type? Is String is Value Type or Reference Type?

Ans.

Value types hold the data directly, while reference types hold a reference to the data.

  • Value types are stored on the stack, while reference types are stored on the heap.

  • String is a reference type in .NET.

  • Value types include int, float, and bool.

  • Reference types include arrays, classes, and interfaces.

Q361. How was Authentication Implemented? All Tech Stack of Current project?

Ans.

Authentication was implemented using JWT tokens and OAuth 2.0. Tech stack includes Node.js, Express, MongoDB, and React.

  • JWT tokens were used for user authentication and authorization.

  • OAuth 2.0 was used for third-party authentication.

  • Node.js and Express were used for the backend.

  • MongoDB was used for the database.

  • React was used for the frontend.

Q362. What is the difference between watcher and breakpoint?

Ans.

Watcher is used to monitor changes in variables during runtime, while breakpoint is used to pause program execution at a specific line of code.

  • Watcher is used to track the value of a variable or expression during program execution.

  • Breakpoint is used to pause the program at a specific line of code to allow for debugging.

  • Watchers are typically set up in debugging tools like IDEs, while breakpoints are set by the developer in the code itself.

  • Example: Setting a watcher on a varia...read more

Q363. Find all even number from list with some limit.(like if in list there are 5 even number we have to fetch only 4 even number). > What is the Architecture currently we r following in Microservice > what is API Ga...

read more
Ans.

To find all even numbers from a list with a specified limit, iterate through the list and add even numbers until the limit is reached.

  • Iterate through the list of numbers

  • Check if each number is even

  • Add the even numbers to a new list until the limit is reached

Q364. what is the use of a value converter in WPF?

Ans.

A value converter in WPF is used to convert data from one type to another for binding purposes.

  • Converts data between different types for data binding

  • Implements the IValueConverter interface in WPF

  • Can be used to format data for display in UI elements

  • Example: converting a boolean value to a visibility enum for showing/hiding elements

Q365. What is Self Join in SQL Server? Give example

Ans.

Self Join is a way to join a table with itself using aliases.

  • It is useful when we need to compare records within the same table.

  • It requires the use of aliases to differentiate between the two instances of the same table.

  • Example: SELECT a.name, b.name FROM employees a, employees b WHERE a.manager_id = b.employee_id;

Q366. Have you ever implemented or worked with server driven UIs

Ans.

Yes, I have experience implementing server driven UIs.

  • Implemented server driven UIs using JSON responses to dynamically update UI elements

  • Worked with frameworks like React and Angular to handle server driven UI updates

  • Used server driven UIs to efficiently manage and display large amounts of data

Q367. What is Core data and all operations with example/scenarios

Ans.

Core Data is a framework provided by Apple for managing the model layer objects in an iOS application.

  • Core Data is used for storing, retrieving, and managing data in an iOS app.

  • It provides an object-oriented interface to work with data.

  • Operations include creating, reading, updating, and deleting data.

  • Example: Creating a new record in Core Data for a user profile.

  • Example: Fetching a list of items from Core Data to display in a table view.

Q368. Write a program to change background after every 0.5 sec interval to orange,white,green on button click in Angular?

Ans.

Program to change background color on button click in Angular

  • Create a button in Angular template

  • Add click event listener to the button

  • Use setInterval() function to change background color after every 0.5 sec

  • Use ngStyle directive to change background color dynamically

Q369. Difference between partial and render partial in MVC?

Ans.

Partial is a method in MVC that renders a specific portion of a view, while render partial renders a partial view.

  • Partial is used to render a specific portion of a view, while render partial is used to render a partial view.

  • Partial is typically used within a view to render a reusable component, while render partial is used to render a separate partial view.

  • Partial can be used with parameters to pass data to the partial view, while render partial can also specify a different l...read more

Q370. Find how many numbers are repeated from given integer array

Ans.

Count the number of repeated integers in an array

  • Iterate through the array and use a hash table to keep track of the count of each number

  • Return the count of numbers with a count greater than 1

Q371. What is a function pointer?Write down syntax for it

Ans.

A function pointer is a variable that stores the memory address of a function.

  • Function pointers can be used to pass functions as arguments to other functions.

  • Syntax: return_type (*pointer_name)(parameter_list);

  • Example: int (*func_ptr)(int, int) = &add;

  • Example: int result = (*func_ptr)(2, 3);

Q372. What is Before commit and After commit Microflow?

Ans.

Before commit and After commit Microflows are used in Mendix to perform actions before and after committing changes to the database.

  • Before commit Microflows are executed before the changes are committed to the database.

  • They are used to perform validations, calculations, or any other actions that need to be done before saving the data.

  • After commit Microflows are executed after the changes are committed to the database.

  • They are used to perform additional actions, such as sendin...read more

Q373. What is meant by inheritance How good are you about Spring boot and advantages of Spring boot. Spring annotations list them. List different design patterns Explain singleton design pattern Explain about collect...

read more
Ans.

Questions related to Java programming language and Spring framework

  • Inheritance is a mechanism in Java where a class acquires the properties of another class

  • Spring Boot is a popular framework for building web applications in Java

  • Advantages of Spring Boot include easy configuration, auto-configuration, and embedded servers

  • Spring annotations are used to provide metadata to the Spring framework

  • Some common Spring annotations include @Autowired, @Controller, and @Service

  • Design patt...read more

Q374. what is the difference between JIT and AOT compiler in Angular

Ans.

JIT compiles code at runtime while AOT compiles code during build time.

  • JIT stands for Just-In-Time compilation and compiles code at runtime.

  • AOT stands for Ahead-Of-Time compilation and compiles code during build time.

  • JIT is used in development mode while AOT is used in production mode.

  • JIT compiles templates and components on the fly while AOT compiles them before runtime.

  • AOT generates smaller and faster code compared to JIT.

Q375. What is the difference between Multithreading and Multiprocessing?

Ans.

Multithreading is the execution of multiple threads of a single process, while multiprocessing is the execution of multiple processes.

  • Multithreading involves multiple threads within a single process, while multiprocessing involves multiple processes.

  • Multithreading shares the same memory space, while multiprocessing has separate memory spaces.

  • Multithreading is suitable for I/O-bound tasks, while multiprocessing is suitable for CPU-bound tasks.

  • Multithreading is more efficient i...read more

Q376. what is sql server agent why can't we create objects of abstract class write extension method for abstract class SQL: SP vs Function, which one is faster, why? can I call SP from Function Microservice orchestra...

read more
Ans.

SQL Server Agent is a job scheduling tool in SQL Server. Abstract classes cannot be instantiated. SPs are faster than functions. Microservice concepts. IEnumerable vs IQueryable.

  • SQL Server Agent is a job scheduling tool in SQL Server for automating tasks like backups, database maintenance, etc.

  • Abstract classes cannot be instantiated because they are incomplete and meant to be extended by subclasses.

  • Extension methods can be created for abstract classes to add new functionality...read more

Q377. What's is uses of cache memory in application and which cache you used in your application and why ??

Ans.

Cache memory is used to store frequently accessed data for faster retrieval, improving application performance.

  • Cache memory reduces the time taken to access data by storing frequently used data closer to the processor.

  • It helps in improving the overall performance of the application by reducing latency.

  • Different types of cache memory include L1, L2, and L3 caches, each with varying sizes and speeds.

  • In my application, we used L1 cache for storing critical data that needed to be...read more

Q378. Prepare Java 8, 11 Programs on Java 8 and 11 Multithreading Collection Design patterns Solid principles Spring MVC and boot Rest API

Ans.

The question asks for programs on Java 8 and 11, multithreading, collections, design patterns, SOLID principles, Spring MVC and Boot, and REST API.

  • Java 8 and 11 programs: Provide examples of programs written in Java 8 and 11.

  • Multithreading: Discuss the concept of multithreading and provide examples of how it can be implemented in Java.

  • Collections: Explain the different types of collections in Java and their usage.

  • Design patterns: Discuss commonly used design patterns in softw...read more

Q379. What is the program using Stream API to find odd numbers, square those odd numbers, and then calculate their sum?

Ans.

Using Stream API to find odd numbers, square them, and calculate their sum.

  • Use Stream API filter to find odd numbers

  • Use map to square the odd numbers

  • Use reduce to calculate the sum

Q380. 18. How to find how much process are running on server

Ans.

Use command line tools like 'ps' or 'top' to find the number of running processes on a server.

  • Use 'ps aux' command to list all running processes and count the number of lines

  • Use 'top' command and look for the 'Tasks' section which shows the number of running processes

  • Use 'htop' command which provides a more interactive and detailed view of running processes

Q381. Can you brief about GC and the life cycle?

Ans.

GC stands for Garbage Collection. It is an automatic memory management process in programming languages.

  • GC is responsible for reclaiming memory that is no longer in use by the program.

  • It identifies and frees up memory occupied by objects that are no longer reachable.

  • GC has different algorithms like Mark and Sweep, Copying, and Generational.

  • The life cycle of an object involves creation, usage, and eventual garbage collection.

  • GC can be triggered by various conditions like memor...read more

Q382. Create Linked List without using the internal library and provide the functionality of add delete find.

Ans.

Create Linked List without using internal library and provide add, delete, find functionality.

  • Create a Node class with data and next pointer

  • Create a LinkedList class with head pointer and methods to add, delete, and find nodes

  • Use a loop to traverse the list and perform operations

  • Handle edge cases such as adding to an empty list or deleting the head node

Q383. Explain SDLC and STLC, Whats the difference between list and tuple Whats the assert and verify Elements

Ans.

SDLC and STLC, list vs tuple, assert vs verify

  • SDLC (Software Development Life Cycle) is a process followed to develop software

  • STLC (Software Testing Life Cycle) is a process followed to test software

  • List and tuple are both data structures in Python, but list is mutable while tuple is immutable

  • Assert is used to check if a condition is true, while verify is used to check if a web element is present

  • Both assert and verify are used in automated testing

  • Example: assert 2+2 == 4, ver...read more

Q384. Solutioning for a high performant event driver microservice.

Ans.

To create a high performant event driver microservice, we need to focus on efficient event handling and scalability.

  • Use asynchronous event-driven architecture

  • Choose a lightweight and efficient framework like Node.js or Go

  • Implement caching and load balancing techniques

  • Optimize database queries and use NoSQL databases for faster data retrieval

  • Use containerization and orchestration tools like Docker and Kubernetes for scalability

  • Implement monitoring and logging to identify and r...read more

Q385. What are views in SQL?

Q386. what is the role of migration scripts in code first approach

Ans.

Migration scripts help in updating the database schema when changes are made to the code first model.

  • Migration scripts are used to update the database schema to match the code first model

  • They help in keeping the database schema in sync with the code first model

  • They are executed automatically when the application starts or manually using the Package Manager Console

  • They can be used to add, modify or delete database objects like tables, columns, indexes, etc.

  • They can be versione...read more

Q387. What is the use of creating T4 templates?

Ans.

T4 templates are used to generate code or text files based on a template and input data.

  • T4 templates automate repetitive code generation tasks.

  • They can be used to generate code for data access layers, service layers, or UI components.

  • T4 templates can also be used to generate configuration files or documentation.

  • They provide a way to separate the logic from the generated output.

  • T4 templates support customizing the generated code based on input parameters or conditions.

Q388. Create a Login form and validate email input using Vanilla JS.

Ans.

Create a Login form with email validation using Vanilla JS.

  • Create a form in HTML with input fields for email and password

  • Use JavaScript to validate the email input using regular expressions

  • Display error messages if the email input is not in the correct format

Q389. Can you provide a program that prints the second largest number in both an array and a list, illustrating implementations using streams as well as traditional methods?

Ans.

Program to find second largest number in an array and list using streams and traditional methods.

  • Use streams to find second largest number in array: Arrays.stream(array).distinct().sorted().skip(array.length - 2).findFirst().orElse(null)

  • Use traditional method to find second largest number in list: Sort the list in descending order and get the element at index 1

  • Ensure to handle edge cases like empty array/list or arrays/lists with less than 2 elements

Q390. Can we use SQL Functions on the JOIN Clause

Ans.

Yes, SQL Functions can be used on the JOIN Clause.

  • SQL Functions can be used on the JOIN Clause to manipulate the data before joining.

  • Examples of SQL Functions that can be used on the JOIN Clause are CONCAT, SUBSTRING, and DATE_FORMAT.

  • Using SQL Functions on the JOIN Clause can improve query performance and reduce the amount of data transferred.

Q391. How do you find the second largest number in a coulmn in mySQL

Ans.

To find the second largest number in a column in MySQL, you can use the ORDER BY and LIMIT clauses.

  • Write a SELECT statement to retrieve the column values in descending order using ORDER BY.

  • Use the LIMIT clause to limit the result set to the second row.

  • The value in the second row will be the second largest number in the column.

Q392. How many max and min approvals required in release pipeline

Ans.

The number of max and min approvals required in a release pipeline depends on the organization's policies and the complexity of the release.

  • The number of approvals required can vary depending on the stage of the pipeline.

  • Some organizations may require multiple levels of approval for critical releases.

  • The number of approvals can also depend on the size and complexity of the release.

  • Automation can help streamline the approval process and reduce the number of required approvals.

Q393. Q Reverse String Coding question Q find unique array value

Ans.

Reverse a given string and find unique values in an array of strings.

  • Use the reverse() method to reverse the given string.

  • Use a Set to store unique values in the array.

  • Loop through the array and add each element to the Set.

  • Convert the Set back to an array to get the unique values.

Q394. What algo Java 8 Garbage collector follow

Ans.

Java 8 Garbage collector follows the algorithm called G1 (Garbage-First).

  • G1 divides the heap into regions and collects garbage in small portions called 'garbage-first' regions.

  • It uses multiple parallel threads for garbage collection.

  • G1 aims to minimize pause times by dynamically adjusting the amount of garbage collected in each region.

  • It uses a combination of young and old generation collection to achieve better performance.

  • G1 also supports concurrent garbage collection, allo...read more

Q395. What is SOLID Principle and explain about it....

Ans.

SOLID is a set of principles for object-oriented programming to make software more maintainable, scalable, and robust.

  • S - Single Responsibility Principle: A class should have only one reason to change.

  • O - Open-Closed Principle: A class should be open for extension but closed for modification.

  • L - Liskov Substitution Principle: Subtypes should be substitutable for their base types.

  • I - Interface Segregation Principle: A client should not be forced to depend on methods it does no...read more

Q396. What is the internal working of a HashMap?

Ans.

HashMap is a data structure that stores key-value pairs and uses hashing to quickly retrieve values based on keys.

  • HashMap internally uses an array of linked lists to store key-value pairs.

  • When a key-value pair is added, the key is hashed to determine the index in the array where it will be stored.

  • If multiple keys hash to the same index, a linked list is used to handle collisions.

  • To retrieve a value, the key is hashed again to find the corresponding index and then the linked l...read more

Q397. Can you explain the @RestController annotation in Spring Boot?

Q398. What is difference between list and tuple

Ans.

List is mutable while tuple is immutable in Python.

  • List can be modified while tuple cannot be modified.

  • List uses square brackets [] while tuple uses parentheses ().

  • List is slower than tuple in terms of performance.

  • List is used for dynamic data while tuple is used for static data.

Q399. What is Function app? What is App service? What is key vault? Difference between key and secret? Basic questions related to Vm an networking in VM?

Ans.

Function app is a serverless compute service that enables you to run code on-demand without having to manage infrastructure.

  • Function app is used to run code on-demand without managing infrastructure

  • It is a serverless compute service

  • It supports multiple languages and integrates with other Azure services

  • Examples of Function app include Azure Functions and Logic Apps

Q400. Which database is used in Mendix?

Ans.

Mendix uses a multi-model database called Mendix Data Hub.

  • Mendix Data Hub is a unified data layer that integrates with various databases.

  • It supports both SQL and NoSQL databases.

  • Examples of databases that can be used with Mendix include MySQL, PostgreSQL, MongoDB, and Oracle.

  • Mendix Data Hub provides a visual interface for managing data models and relationships.

  • It allows developers to easily connect and interact with data from different sources.

Previous
5
6
7
8
9
10
11
Next
Interview Tips & Stories
Ace your next interview with expert advice and inspiring stories

Interview experiences of popular companies

3.7
 • 10.4k Interviews
3.9
 • 8.1k Interviews
3.7
 • 7.6k Interviews
3.7
 • 5.6k Interviews
3.8
 • 4.8k Interviews
3.5
 • 3.8k Interviews
3.5
 • 3.8k Interviews
3.8
 • 3k Interviews
3.4
 • 796 Interviews
3.8
 • 531 Interviews
View all

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

Senior Software Engineer Interview Questions
Share an Interview
Stay ahead in your career. Get AmbitionBox app
qr-code
Helping over 1 Crore job seekers every month in choosing their right fit company
65 L+

Reviews

4 L+

Interviews

4 Cr+

Salaries

1 Cr+

Users/Month

Contribute to help millions

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

Follow us
  • Youtube
  • Instagram
  • LinkedIn
  • Facebook
  • Twitter