Senior Software Engineer 2

100+ Senior Software Engineer 2 Interview Questions and Answers

Updated 11 Dec 2024

Popular Companies

search-icon

Q1. Draw a system diagram for ecommers system to place an order and get order history for a particular customer

Ans.

System diagram for e-commerce order placement and history retrieval

  • Frontend: Customer interface for browsing products, adding to cart, and placing orders

  • Backend: Order processing system to handle order placement, payment processing, and order fulfillment

  • Database: Store customer information, order details, and order history for retrieval

  • APIs: Communication between frontend, backend, and database for seamless order processing

  • Analytics: Track order history and customer behavior ...read more

Q2. what is the need for @Service annotation?

Ans.

The @Service annotation is used in Spring framework to indicate that a class is a service component.

  • Used to mark a class as a service component in Spring framework

  • Helps in auto-detection and auto-configuration of Spring beans

  • Facilitates dependency injection and inversion of control

Senior Software Engineer 2 Interview Questions and Answers for Freshers

illustration image

Q3. Internal working of Node.js and how node processes asynchronous requests

Ans.

Node.js is a runtime environment that executes JavaScript code outside of a web browser, using an event-driven, non-blocking I/O model.

  • Node.js uses the V8 JavaScript engine to execute code.

  • It uses an event-driven architecture to handle asynchronous operations.

  • Node.js uses a single-threaded event loop to process multiple requests concurrently.

  • Callbacks are used to handle asynchronous operations in Node.js.

  • Node.js provides modules like 'fs' for file system operations and 'http'...read more

Q4. 1. Program to get a response as Excel column name for integer input. Input 1-> A, 2-> B, 3->C, ...26->Z,27->AA, 28->AB, 29->AC..52->AZ. 2. Find first no-repeating character in String. 3. Given a list of Name , ...

read more
Ans.

Program to convert integer to Excel column name, find first non-repeating character in a string, and create a map of last names with count of names.

  • For converting integer to Excel column name, you can use a recursive function to map the remainder of the division by 26 to the corresponding letter.

  • To find the first non-repeating character in a string, you can iterate through the string and use a HashMap to store the count of each character.

  • For creating a map of last names with ...read more

Are these interview questions helpful?

Q5. Implement LRU with expiration, priority and recentness based eviction policy.

Ans.

Implement LRU cache with expiration, priority, and recentness based eviction policy.

  • Use a doubly linked list to keep track of the order of elements based on recentness.

  • Use a hashmap to store key-value pairs for quick access.

  • Implement a priority queue to handle eviction based on priority.

  • Set expiration time for each element and remove expired elements during access or eviction.

Q6. Design a system that can handle 10 lacs transactions per second

Ans.

Design a system to handle 10 lacs transactions per second.

  • Use distributed systems and load balancing to handle the high volume of transactions.

  • Implement caching mechanisms to reduce database load.

  • Use high-performance hardware and optimize code for speed.

  • Consider using a NoSQL database for faster read/write operations.

  • Implement fault-tolerant mechanisms to ensure system reliability.

  • Use asynchronous processing to handle requests quickly.

  • Consider using a message queue to handle ...read more

Share interview questions and help millions of jobseekers 🌟

man-with-laptop

Q7. Write pseudo code to arrange a random list of numbers in Ascending order

Ans.

Pseudo code to sort a random list of numbers in ascending order

  • Loop through the list and compare adjacent elements

  • If the left element is greater than the right element, swap them

  • Repeat until no swaps are needed

Q8. create Shell script for 100 users on 5 different servers

Ans.

Create a Shell script to add 100 users on 5 different servers.

  • Use a loop to create 100 users on each server.

  • Utilize the 'useradd' command to add users.

  • Ensure unique usernames for each user on each server.

  • Consider using SSH for remote server access.

  • Test the script on a single server before running on all servers.

Senior Software Engineer 2 Jobs

Senior Software Engineer II 6-10 years
Oracle India Pvt. Ltd.
3.7
Hyderabad / Secunderabad
Senior Software Engineer 2 - Frontend 3-7 years
CoinDCX
3.8
Bangalore / Bengaluru
Senior Software Engineer 2 - Backend 3-7 years
CoinDCX
3.8
Bangalore / Bengaluru

Q9. Create an custom hashmap with all the function with oops concept

Ans.

Create a custom hashmap with OOPs concepts

  • Create a class for the hashmap with private variables for key and value

  • Implement methods for adding, removing and retrieving elements

  • Use inheritance to create a separate class for each type of data to be stored

  • Use encapsulation to protect the data and ensure proper access

  • Use polymorphism to allow for different types of data to be stored in the same hashmap

Q10. Program to find pair of elements whose sum matches to k

Ans.

Program to find pair of elements whose sum matches to k

  • Use a hash set to store elements as you iterate through the array

  • For each element, check if k minus the element is already in the set

  • If found, return the pair of elements

  • Time complexity: O(n)

Q11. Write program to swap between two numbers without using temp variables

Ans.

Program to swap two numbers without using temp variables

  • Use arithmetic operations to swap the values

  • Add the two numbers and store the result in the first variable

  • Subtract the second variable from the result and store it in the second variable

Q12. Tell me more about python scripting

Ans.

Python scripting is a way to automate tasks using Python programming language.

  • Python scripting allows for automating repetitive tasks by writing scripts in Python.

  • It is commonly used for tasks like data processing, web scraping, and automation.

  • Python scripts can be run from the command line or integrated into larger applications.

  • Python's extensive standard library makes it easy to work with files, networks, and more.

Q13. What is the difference between AngularJS and Angular?

Ans.

AngularJS is the first version of Angular, while Angular refers to versions 2 and above.

  • AngularJS is based on JavaScript, while Angular is based on TypeScript.

  • AngularJS uses controllers and $scope for data binding, while Angular uses components and directives.

  • AngularJS has two-way data binding, while Angular has one-way data binding by default.

Q14. What are different types of api methods have you used and where

Ans.

I have used various types of API methods including GET, POST, PUT, and DELETE.

  • GET method is used to retrieve data from a server. For example, I have used GET method to fetch user information from a user API endpoint.

  • POST method is used to send data to a server to create a new resource. I have used POST method to create new records in a database through API calls.

  • PUT method is used to update existing data on a server. For instance, I have used PUT method to update user informa...read more

Q15. What are the different divisions in a COBOL program?

Ans.

Divisions in a COBOL program include Identification, Environment, Data, Procedure, and File Control.

  • Identification Division: Contains program name, author, and other identifying information.

  • Environment Division: Specifies the hardware and software environment in which the program will run.

  • Data Division: Defines the data structures used in the program.

  • Procedure Division: Contains the actual logic and processing instructions.

  • File Control Division: Specifies the files used by th...read more

Q16. Slicing in python doesn't give index out of bounds error explain?

Ans.

Slicing in Python doesn't give index out of bounds error because it automatically handles out of range indices.

  • Python slicing allows accessing elements in a sequence using a start and end index.

  • If the start or end index is out of range, Python automatically adjusts it to the nearest valid index.

  • This behavior prevents index out of bounds errors and makes slicing more convenient.

  • For example, slicing a list with an out of range index will return an empty list instead of throwing...read more

Q17. How to implement resiliency in microservice architecture

Ans.

Implementing resiliency in microservice architecture involves using techniques like circuit breakers, retries, timeouts, and load balancing.

  • Use circuit breakers to prevent cascading failures by stopping requests to a service that is not responding.

  • Implement retries with exponential backoff to handle transient failures and give the service time to recover.

  • Set timeouts for requests to avoid blocking resources and waiting indefinitely.

  • Use load balancing to distribute traffic eve...read more

Q18. HLD design problem on current project implementation

Ans.

I designed the HLD for our current project implementation.

  • Identified the main components and their interactions

  • Created a high-level architecture diagram

  • Considered scalability, maintainability, and performance

  • Collaborated with team members to ensure alignment with requirements

Q19. What is lifecycle methods of authentications method

Ans.

Lifecycle methods of authentication methods are functions that are executed at different stages of the authentication process.

  • Lifecycle methods are used to perform actions before, during, and after authentication.

  • Examples of lifecycle methods include initialization, authentication, authorization, and cleanup.

  • These methods can be used to validate user credentials, generate access tokens, enforce security policies, and log authentication events.

Q20. What are traits and how to use it in PHP ?

Ans.

Traits in PHP are a mechanism for code reuse in single inheritance languages.

  • Traits are a way to group functionality in a fine-grained and consistent way.

  • They allow developers to reuse sets of methods freely in several independent classes.

  • To use a trait in PHP, you use the 'use' keyword followed by the trait name.

  • Traits can be composed into a class using multiple 'use' statements.

  • Traits can also have abstract methods that must be implemented by the class using the trait.

Q21. what is var and dynamic, what static constructor mprivae constructor,microservices

Ans.

Var and dynamic are type inference keywords in C#. Static constructors are used to initialize static fields. Private constructors restrict object creation. Microservices are a software architecture pattern.

  • Var and dynamic are used for type inference in C#

  • Static constructors are used to initialize static fields

  • Private constructors restrict object creation

  • Microservices are a software architecture pattern for building complex applications as a suite of small, independent service...read more

Q22. What are standers Process and Practice?

Ans.

Standard processes and practices are established methods and guidelines for software development.

  • Standard processes and practices ensure consistency and quality in software development.

  • Examples include Agile, Waterfall, and DevOps methodologies.

  • They often involve documentation, testing, and code reviews.

  • They may also include tools and technologies such as version control and continuous integration.

  • Adherence to standard processes and practices can improve efficiency and reduce...read more

Q23. Dynamic Programming problem with low to medium difficulty

Ans.

The coin change problem - given a set of coins and a target amount, find the minimum number of coins needed to make the change.

  • Create an array to store the minimum number of coins needed for each amount from 0 to target

  • Iterate through each coin and update the array for each amount that can be made using that coin

  • Return the value at the target index of the array

Q24. How to connect to S3 in AWS using which package

Ans.

To connect to S3 in AWS, you can use the AWS SDK package.

  • Use the AWS SDK for your preferred programming language

  • Import the necessary libraries and configure your AWS credentials

  • Create an S3 client object and specify the AWS region

  • Use the client object to interact with S3, such as uploading, downloading, or listing objects

Q25. Designing an API for a Product table, basically CRUD operations

Ans.

Designing a RESTful API for CRUD operations on a Product table

  • Use HTTP methods like GET, POST, PUT, DELETE for CRUD operations

  • Create endpoints like /products for listing all products, /products/{id} for specific product, etc.

  • Use JSON format for request and response bodies

  • Implement authentication and authorization mechanisms for secure access

Q26. How browser works when domain is entered.

Ans.

When a domain is entered in a browser, the browser goes through a series of steps to retrieve and display the website.

  • Browser checks cache for DNS records to find IP address of the domain

  • If not found, browser sends a DNS query to resolve the domain name to an IP address

  • Browser establishes a TCP connection with the server hosting the website

  • Browser sends an HTTP request to the server for the specific webpage

  • Server processes the request and sends back an HTTP response with the ...read more

Q27. Explain OOPS, Inheritance, SQL basics and

Ans.

OOPS is a programming paradigm based on objects, Inheritance is a mechanism in OOPS, SQL basics include querying databases.

  • OOPS stands for Object-Oriented Programming, where data and behavior are encapsulated within objects.

  • Inheritance is a mechanism in OOPS where a class inherits properties and behaviors from another class.

  • SQL basics include querying databases using SELECT, INSERT, UPDATE, DELETE statements.

  • Example: In OOPS, a Car class can inherit properties and behaviors f...read more

Q28. What is lvm and how manypartitions we can create

Ans.

LVM stands for Logical Volume Manager. It is a tool used to manage disk space by creating logical volumes from physical volumes.

  • LVM allows for dynamic resizing of logical volumes without the need to unmount the filesystem.

  • It can create multiple logical volumes from a single physical volume.

  • LVM provides features like snapshots and mirroring for data protection.

  • The number of partitions that can be created using LVM depends on the size of the physical volumes and the filesystem ...read more

Q29. Difference between merge and rebase in git

Ans.

Merge combines changes from different branches, while rebase moves the current branch to the tip of another branch.

  • Merge creates a new commit with the combined changes of two branches.

  • Rebase moves the current branch to the tip of another branch, replaying the commits on top of it.

  • Merge preserves the commit history of both branches, while rebase creates a linear history.

  • Merge is non-destructive and is preferred for preserving history, while rebase is useful for keeping a clean...read more

Q30. Implement Smoke Collector problem

Ans.

Implement a Smoke Collector problem

  • Create a class SmokeCollector with methods to collect smoke data

  • Implement a method to start collecting smoke data

  • Design a method to analyze and store the collected smoke data

Q31. Write auto scaling of ec2 instances

Ans.

Auto scaling of EC2 instances involves setting up policies to automatically adjust the number of instances based on demand.

  • Set up CloudWatch alarms to monitor metrics like CPU utilization or network traffic

  • Create an Auto Scaling Group with desired minimum and maximum number of instances

  • Define scaling policies to add or remove instances based on the alarms triggered

  • Test the auto scaling by simulating load on the instances

Q32. How to write a procedure in PL/1

Ans.

To write a procedure in PL/1, use the PROC statement followed by the procedure name and the necessary code.

  • Begin with the PROC statement followed by the procedure name

  • Add the necessary code within the procedure

  • End the procedure with the END statement

  • Example: PROC MYPROC; /* code here */ END MYPROC;

Q33. How do you implement security in Web app,api

Ans.

Implement security measures like authentication, authorization, encryption, and input validation to protect web apps and APIs.

  • Use HTTPS to encrypt data transmitted between clients and servers

  • Implement authentication mechanisms like OAuth, JWT, or API keys

  • Enforce proper authorization checks to control access to resources

  • Sanitize and validate input data to prevent injection attacks

  • Regularly update dependencies and libraries to patch security vulnerabilities

Q34. Difference between InjectMocks and MockBean in Mockito

Ans.

InjectMocks is used to inject mocks into a test class, while MockBean is used to mock Spring beans in a Spring context.

  • InjectMocks is a Mockito annotation used to inject mock objects into a test class.

  • MockBean is a Spring Boot annotation used to mock Spring beans in a Spring context.

  • InjectMocks is used in standalone tests, while MockBean is used in integration tests.

  • Example: @InjectMocks private UserService userService;

  • Example: @MockBean private UserRepository userRepository;

Q35. How the login components works in Angular

Ans.

Login components in Angular handle user authentication and authorization.

  • Use Angular's built-in forms module to create login form

  • Implement authentication service to handle login logic

  • Use Angular router to navigate to different pages based on login status

Q36. Tell me about terraform

Ans.

Terraform is an open-source infrastructure as code software tool created by HashiCorp.

  • Terraform allows users to define and provision infrastructure using a declarative configuration language.

  • It supports multiple cloud providers such as AWS, Azure, and Google Cloud Platform.

  • Terraform uses a 'plan and apply' workflow to make changes to infrastructure.

  • It helps in automating the process of setting up and managing infrastructure.

  • Terraform state file keeps track of the current stat...read more

Q37. Delete rows from table that are 6 months old from current date

Ans.

Use SQL query with WHERE clause to delete rows older than 6 months from current date

  • Use CURRENT_DATE() function to get current date

  • Use DATE_SUB() function to subtract 6 months from current date

  • Write a DELETE query with WHERE clause to delete rows older than calculated date

Q38. what are the security options to secure your application Advantages and disadvantages of AWS EC2

Ans.

Security options for application and advantages/disadvantages of AWS EC2

  • Security options for application include encryption, access control, firewalls, and regular security audits

  • AWS EC2 advantages include scalability, flexibility, and cost-effectiveness

  • AWS EC2 disadvantages include potential security vulnerabilities, complexity in managing instances, and potential downtime

Q39. Explain Garbage collector? Solid principles, Dependency inversion Oops concepts

Ans.

Garbage collector is a mechanism in programming languages that automatically frees up memory occupied by objects that are no longer in use.

  • Garbage collector is responsible for managing memory in a program.

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

  • Garbage collector uses various algorithms to determine which objects are eligible for garbage collection.

  • Common garbage collection algorithms include reference counting, mark and sweep, and gener...read more

Q40. What design pattern you used in your microservice>

Ans.

I used the Service Registry design pattern in my microservice.

  • Service Registry pattern is used to dynamically register and discover services in a distributed system.

  • It helps in decoupling service consumers from service providers.

  • Examples of Service Registry tools include Netflix Eureka and Consul.

Q41. writing program to find the sequence order of a number

Ans.

Program to find the sequence order of a number

  • Create an array to store the sequence order

  • Iterate through the numbers from 1 to the given number

  • Check if each number is divisible by the given number

  • If divisible, add it to the sequence order array

  • Return the sequence order array

Q42. Design the Architecture for BookMyShow

Ans.

BookMyShow is an online platform for booking movie tickets and events. Here's the architecture design.

  • The architecture should be scalable and flexible to handle high traffic during peak hours.

  • The system should have multiple layers including presentation, application, and data storage.

  • Use microservices architecture to break down the system into smaller, independent services.

  • Implement caching mechanisms to improve performance and reduce load on the database.

  • Use load balancers t...read more

Q43. How do you debug S02 error in Mainframe?

Ans.

To debug S02 error in Mainframe, analyze the error message, check system logs, review program logic, and use debugging tools.

  • Analyze the error message to understand the root cause of the S02 error.

  • Check system logs for any additional information related to the error.

  • Review the program logic to identify any potential issues that could lead to the S02 error.

  • Use debugging tools like IBM Debug Tool or Xpediter to step through the code and pinpoint the exact location of the error.

Q44. How in Angular

Ans.

How to use Angular?

  • Angular is a JavaScript framework for building web applications

  • It uses TypeScript for static typing and better tooling

  • Components, services, and modules are the building blocks of an Angular app

  • Angular has a powerful CLI for generating code and managing dependencies

Q45. What is event loop in javascript

Ans.

Event loop is a mechanism in JavaScript that allows for asynchronous programming by handling and executing tasks in a non-blocking manner.

  • Event loop is responsible for managing the execution of code in JavaScript.

  • It continuously checks for tasks in the event queue and executes them one by one.

  • Tasks can be added to the event queue through various mechanisms like timers, user interactions, or network requests.

  • The event loop ensures that the JavaScript runtime remains responsive...read more

Q46. Implement k-Vendor problem

Ans.

Implement k-Vendor problem

  • Create a function that takes in an array of strings and an integer k

  • Return the kth most frequent string in the array

  • Use a hashmap to store the frequency of each string

Q47. Write a code to add 2 numbers using functional interface

Ans.

Code to add 2 numbers using functional interface

  • Create a functional interface with a method to add two numbers

  • Implement the functional interface using a lambda expression

  • Call the method to add two numbers

Q48. Design round - bookmyshow

Ans.

Design a ticket booking system like BookMyShow

  • Use a database to store movie details, show timings, and seat availability

  • Implement user authentication and authorization for booking tickets

  • Include a payment gateway for secure transactions

  • Design a user-friendly interface for browsing and booking tickets

  • Allow users to rate and review movies after watching them

Q49. Sort 3 arrays and find the closest numbers between them

Ans.

Sort 3 arrays and find the closest numbers between them

  • Sort each array in ascending order

  • Iterate through each array and compare the absolute difference between each element

  • Keep track of the smallest difference found so far

  • Return the pair of numbers with the smallest difference

Q50. What you will do for /boot is full

Ans.

To address a full /boot partition, remove unnecessary files, uninstall old kernels, and increase partition size if needed.

  • Delete unnecessary files in /boot directory

  • Uninstall old kernels to free up space

  • Increase the size of the /boot partition if necessary

1
2
3
Next
Interview Tips & Stories
Ace your next interview with expert advice and inspiring stories

Interview experiences of popular companies

3.8
 • 4.6k Interviews
3.6
 • 3.6k Interviews
3.6
 • 2.3k Interviews
3.7
 • 507 Interviews
4.3
 • 228 Interviews
3.9
 • 201 Interviews
3.8
 • 199 Interviews
3.7
 • 118 Interviews
3.6
 • 83 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 2 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
Get AmbitionBox app

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