Software Engineer II
100+ Software Engineer II Interview Questions and Answers

Asked in Shorthills AI

Q. Work experience in different segments and use cases of some custom implementations.
I have experience in implementing custom solutions across various segments and use cases.
Developed a custom CRM system for a retail company
Implemented a custom inventory management system for a manufacturing company
Created a custom payment gateway integration for an e-commerce website
Designed a custom data analytics solution for a healthcare organization

Asked in Deliveroo

Q. Implement a custom Cron job parser.
Implement a custom cron job parser as a take-home assignment for Software Engineer II position.
Understand the cron syntax and how it works
Parse the cron expression into separate fields (minute, hour, day of month, month, day of week)
Implement logic to calculate the next execution time based on the current time and cron expression
Handle edge cases like leap years, different month lengths, etc.
Test your implementation with various cron expressions

Asked in Cadence Design Systems

Q. What is the width of a tree?
The width of a tree refers to the maximum number of nodes at any level in the tree.
The width of a tree can be determined by traversing the tree level by level and counting the maximum number of nodes at any level.
The width of a tree can also be calculated using breadth-first search (BFS) algorithm.
The width of a tree is not related to the height or depth of the tree.

Asked in Akamai Technologies

Q. Difference b/w UDP, TCP Linux commands Python basics in dict,tuple
UDP is connectionless, faster but less reliable. TCP is connection-oriented, slower but more reliable. Linux commands are used for system management. Python basics include dict and tuple data structures.
UDP is connectionless and does not guarantee delivery of data packets.
TCP is connection-oriented and ensures reliable delivery of data packets.
Linux commands like ls, cd, mkdir are used for system management.
Python dict is a key-value pair data structure, while tuple is an imm...read more
Asked in WEX Fintech

Q. What is Blue Green Deployment?
Blue Green Deployment is a software release strategy that reduces downtime and risk by running two identical production environments.
In Blue Green Deployment, one environment (blue) is live and serving production traffic while the other (green) is idle and ready to be switched to at any time.
This strategy allows for zero downtime deployments, as the switch between blue and green environments can be done seamlessly.
Blue Green Deployment also helps in quickly rolling back to th...read more

Asked in Deliveroo

Q. Design a system where a user can claim a reward only once, allowing for over-distribution but not under-distribution.
Ensure each user can only claim once, can distribute extra but not less
Implement a system to track claimed rewards by users
Set up validation to prevent users from claiming more than once
Consider implementing a queue system to distribute rewards fairly
Use a database to store user claims and track distribution
Software Engineer II Jobs




Asked in NCR Corporation

Q. Does C# support multiple inheritance?
No, C# does not support multiple inheritance.
C# only supports single inheritance, where a class can inherit from only one base class.
However, C# does support multiple interface inheritance, where a class can implement multiple interfaces.
This is achieved using the 'interface' keyword instead of 'class'.

Asked in Publicis Sapient

Q. How is routing performed in ASP.NET Core API?
Routing in ASP.NET Core API is performed using the built-in middleware called Endpoint Routing.
Endpoint Routing is responsible for mapping incoming requests to the appropriate action methods in the controller.
It uses the HTTP verb, URL pattern, and route data to determine the correct action method.
Routes can be defined using attributes on the controller and action methods or in the Startup.cs file.
Middleware like authentication and authorization can be added to the routing pi...read more
Share interview questions and help millions of jobseekers 🌟

Asked in MasterCard

Q. What are the types of deployments?
Types of deployments include blue-green, canary, rolling, and immutable.
Blue-green deployment involves running two identical production environments and switching between them.
Canary deployment gradually rolls out changes to a small subset of users before deploying to the entire infrastructure.
Rolling deployment updates a few instances at a time, ensuring continuous availability.
Immutable deployment creates new instances for each update, avoiding in-place updates.

Asked in UST

Q. Explain the OOPS concepts in Java with examples for each type.
Java OOPs concepts and examples
Encapsulation - hiding data and methods within a class (e.g. private variables)
Inheritance - creating new classes from existing ones (e.g. subclass extends superclass)
Polymorphism - using a single method to perform different actions (e.g. method overloading/overriding)
Abstraction - focusing on essential features and hiding implementation details (e.g. abstract classes/interfaces)

Asked in NCR Corporation

Q. How is routing done in MVC?
Routing in MVC is done through the use of routes, which map URLs to controller actions.
Routes are defined in the RouteConfig.cs file in the App_Start folder
Routes consist of a URL pattern and a corresponding controller action
Routes can also include optional parameters and constraints
Routing is done through the use of the ASP.NET routing engine
Routing can be customized by creating custom route handlers

Asked in Deliveroo

Q. Design a system that distributes 6 million burgers in 10 minutes.
Utilize multiple distribution centers, automated assembly lines, and efficient transportation to distribute burgers quickly.
Set up multiple distribution centers in strategic locations to cover a wide area
Implement automated assembly lines to quickly prepare and package burgers
Utilize efficient transportation methods such as drones or high-speed delivery vehicles
Coordinate logistics and timing to ensure smooth and timely distribution

Asked in Cisco

Q. Why was CUPS introduced as part of Release-14?
CUPS was introduced in Release-14 to provide a common printing system for Unix-like operating systems.
CUPS stands for Common Unix Printing System.
It was introduced to replace the traditional Unix printing system LPD.
CUPS provides a modular and extensible printing system that can support a variety of printers and print job formats.
It also includes a web-based administration interface for managing printers and print jobs.
CUPS has become the de facto standard printing system for...read more

Asked in Birlasoft

Q. Why is string immutable?
String is immutable to ensure data integrity and thread safety.
Immutable strings prevent accidental modification of data.
Immutable strings allow for efficient memory allocation and sharing.
Immutable strings ensure thread safety by avoiding race conditions.
Examples of immutable string methods include substring, toLowerCase, and toUpperCase.

Asked in TCS

Q. How can you create a dictionary with a list as a key?
To create a dictionary with list as key, use tuple conversion
Convert the list to a tuple as lists are not hashable
Use the tuple as the key in the dictionary
Example: my_dict = {tuple(my_list): value}
Example: my_dict[tuple(my_list)] = value

Asked in Concentrix Corporation

Q. What algorithms are used for object detection?
Algorithms for object detection include YOLO, Faster R-CNN, SSD, and Mask R-CNN.
YOLO (You Only Look Once) is a real-time object detection algorithm that uses a single neural network to predict bounding boxes and class probabilities.
Faster R-CNN (Region-based Convolutional Neural Network) uses a two-stage approach to first propose regions of interest and then classify them.
SSD (Single Shot Detector) is a one-stage object detection algorithm that uses a single neural network to...read more
Asked in Checko

Q. What is the singleton design pattern?
Singleton design pattern restricts the instantiation of a class to a single instance and provides a global point of access to it.
Used when only one instance of a class is required throughout the system
Provides a global point of access to the instance
Implemented using a private constructor, static method, and static variable
Example: Logger class in Java

Asked in i-exceed technology solutions

Q. Write a simple program related to HashMap, String, or Java 8 features.
A Java program that demonstrates the use of HashMap and Java 8 features to manipulate strings.
Use HashMap to count occurrences of each character in a string. Example: 'hello' -> {h=1, e=1, l=2, o=1}.
Utilize Java 8 Streams to filter and collect data. Example: filtering characters that appear more than once.
Implement lambda expressions for concise code. Example: map.put(c, map.getOrDefault(c, 0) + 1) for counting.
Use Optional to handle potential null values gracefully. Example:...read more

Asked in Rakuten

Q. Implement a stack data structure that supports push, pop, and getMin operations, all in O(1) time complexity.
Implement a stack with push, pop, and getmin operations in O(1) time complexity.
Use two stacks - one for storing the elements and the other for storing the minimum values
When pushing an element, check if it is smaller than the current minimum and push it to the minimum stack if it is
When popping an element, check if it is the current minimum and pop it from the minimum stack if it is
To get the minimum element, simply return the top element of the minimum stack

Asked in Ascendion

Q. What are extension methods?
Extension methods are static methods that allow adding new functionality to existing types without modifying the original type.
Extension methods are defined in a static class.
They must be declared with the 'this' keyword before the first parameter.
They can be called as if they were instance methods of the extended type.
Extension methods can be used to add functionality to built-in types or custom types.
Example: adding a method to the string type to convert a string to title c...read more

Asked in Prolifics Corporation

Q. What is an API, and why do we use it?
API is a set of protocols and tools for building software applications. It allows different applications to communicate with each other.
API stands for Application Programming Interface
It defines how different software components should interact with each other
APIs can be used to access data or functionality from other applications or services
Examples of APIs include Google Maps API, Twitter API, and Facebook API
Asked in Koo App

Q. 1. Binary Search tree and B+ trees difference
Binary search trees are used for searching and sorting data, while B+ trees are used for indexing and storing data.
Binary search trees have a maximum of two children per node, while B+ trees have multiple children per node.
Binary search trees are best for small datasets, while B+ trees are better for large datasets.
Binary search trees have a faster search time, while B+ trees have a faster insertion and deletion time.
Binary search trees are used in databases for searching and...read more
Asked in Koo App

Q. 1. Max Sum subarray 2. Detect loop in linked list
Two technical questions related to algorithms and data structures.
Max Sum subarray: Find the contiguous subarray with the largest sum. Kadane's algorithm is a popular solution.
Detect loop in linked list: Use two pointers, one moving at twice the speed of the other. If they meet, there is a loop.
Asked in Yovant

Q. What are filters in MVC?
Filters in MVC are used to intercept and modify HTTP requests and responses.
Filters can be used to implement authentication and authorization.
They can also be used for caching and logging.
Examples of filters include AuthorizationFilter, ActionFilter, and ExceptionFilter.

Asked in HashedIn by Deloitte

Q. Describe the system design for a Snake and Ladder game.
System design for the game of Snake and Ladder
Create a board with 100 cells and mark the positions of snakes and ladders
Implement a player class with a current position on the board
Roll a dice to move the player and check for snakes and ladders
Keep track of player scores and winner at the end of the game

Asked in HashedIn by Deloitte

Q. Given an array, how do you count the occurrences of a specific element?
Count occurrence of element in an array of strings
Use a loop to iterate through the array
Use a dictionary to store the count of each element
Increment the count for each element encountered
Asked in UnPlatforms

Q. Some implementations in front end and backend.
Implementations in front end and backend
Front end: React, Angular, Vue.js, HTML, CSS, JavaScript
Backend: Node.js, Python, Java, Ruby, PHP
Examples: Building a login page with React and Node.js, creating a REST API with Python and Flask

Asked in Akamai Technologies

Q. Describe the high-level system design for a URL shortener.
High-level design for a URL shortener system
Use a database to store original URLs and their corresponding short URLs
Implement a service to generate unique short URLs and redirect to original URLs
Consider scalability and performance by using caching and load balancing
Ensure security by validating input URLs and preventing malicious redirects

Asked in NCR Corporation

Q. Can you predict the output of code snippets involving pointers?
Understanding pointer manipulation in C/C++ can lead to unexpected outputs, especially with arrays and dereferencing.
Pointers hold memory addresses, allowing direct access to variables.
Dereferencing a pointer gives the value at the address it points to.
Modifying a value through a pointer affects the original variable.
Example: int a = 5; int *p = &a; *p = 10; // a is now 10.
Pointer arithmetic can lead to accessing unintended memory locations.

Asked in American Express

Q. Explain oop concepts class, encapsulation etc
OOP concepts include class, encapsulation, inheritance, and polymorphism.
Class is a blueprint for creating objects with shared properties and methods.
Encapsulation is the practice of hiding implementation details and exposing only necessary information.
Inheritance allows a class to inherit properties and methods from a parent class.
Polymorphism allows objects to take on multiple forms or behaviors depending on the context.
Example: A class 'Car' can have properties like 'make'...read more
Interview Experiences of Popular Companies





Top Interview Questions for Software Engineer II Related Skills

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

