Software Development Engineer II
200+ Software Development Engineer II Interview Questions and Answers

Asked in Zepto

Q. Given two large numeric comma-separated strings, calculate their sum while maintaining the correct position of commas. Since the strings can be large, you cannot convert them into integral values.
Calculate sum of large numeric comma separated strings without converting to integers.
Split the strings by comma to get individual numbers
Iterate from right to left and add digits, carrying over if necessary
Maintain correct position of commas in the output string

Asked in Pine Labs

Q. Design a system like Redbus with the following functional requirements: 1. User can login/signup on the platform. 2. Functionality to choose between different operational routes. 3. Show all buses operating on...
read moreDesign a bus booking system with user management, route selection, and seat booking features.
User authentication: Implement login/signup using email and password.
Route selection: Allow users to choose from multiple operational routes based on their travel needs.
Bus listing: Display all buses available on the selected route with details like departure time and bus type.
Seat booking: Enable users to select and book available seats on the bus.
Booking history: Provide users with ...read more
Software Development Engineer II Interview Questions and Answers for Freshers

Asked in Zepto

Q. Design a file system similar to Google Drive, including file uploading, downloading, sharing, data loss and disaster recovery, file sharing collaboration, and version control.
Design a file system similar to Google Drive with features for uploading, sharing, and version control.
File Uploading: Users can upload files of various formats (e.g., .docx, .pdf) with a progress indicator.
File Downloading: Users can download files with options for different formats or versions.
File Sharing: Users can share files with specific users or generate shareable links with permissions.
Data Loss Handling: Implement redundancy and backups using distributed storage sys...read more

Asked in Porter

Q. 1. Given an array find a subset that sums to a given sum K 2. Given an array with duplicate elements, print all triplets that sum to K. Each element at any index i can only be used once.
Given an array, find a subset that sums to a given sum K and print all triplets that sum to K.
Use a recursive approach to find subsets that sum to K
Use a nested loop to find triplets that sum to K
Avoid using duplicate elements in triplets

Asked in Zepto

Q. How many microservices do you own and at what scale do they handle traffic?
I own 5 microservices that handle traffic at a scale of 10,000 requests per minute.
I own 5 microservices
They handle traffic at a scale of 10,000 requests per minute

Asked in Smallcase Technologies

Q. Design a low-level design (LLD) of a portfolio management system where you can add any stock to your portfolio, sell any stock, calculate the percentage return on your portfolio, and list your portfolio, which...
read moreDesign a portfolio management system to add and sell stocks, calculate returns, and display current prices and returns.
Create a class for the portfolio with methods to add and sell stocks
Implement a method to calculate the percentage return on the portfolio
Maintain a list of stocks in the portfolio with their current prices and returns
Use arrays or lists to store the portfolio data
Ensure proper error handling for invalid inputs or insufficient data
Software Development Engineer II Jobs

Asked in S&P Global

Q. What is the difference between truncate and delete, and when would you prefer one operation over the other?
Truncate removes all rows from a table, while delete removes specific rows. Truncate is faster but cannot be rolled back.
Truncate is a DDL operation while delete is a DML operation
Truncate resets the identity seed of the table, delete does not
Truncate is faster as it does not log individual row deletions, delete logs each row deletion
Truncate cannot be used on tables referenced by a foreign key constraint, delete can be used
Truncate operation cannot be rolled back, delete ope...read more

Asked in Zeta

Q. Design a system that allows the onboarding of new financial instruments defined by user-set limits, which may include daily amounts and transaction counts. Please outline two processes: 1. The onboarding proces...
read moreDesign a system for onboarding financial instruments with user-defined limits for transactions and daily amounts.
Onboarding Process: Define a user interface for inputting financial instrument details, such as name, type, daily limit, and transaction count.
Validation: Implement validation checks to ensure limits are within acceptable ranges (e.g., daily amount must be > 0).
Storage: Store the financial instrument details in a database, ensuring proper indexing for quick retriev...read more
Share interview questions and help millions of jobseekers 🌟

Asked in Amazon

Q. Given two sorted arrays nums1 and nums2 of size m and n respectively, return the median of the two sorted arrays. The overall run time complexity should be O(log (m+n)).
Find the median of two sorted arrays efficiently using binary search.
Use binary search on the smaller array to minimize time complexity.
Partition both arrays into left and right halves.
Ensure that all elements in the left half are less than or equal to those in the right half.
Calculate the median based on the combined size of the arrays (odd/even).
Example: For arrays [1, 3] and [2], the median is 2. For [1, 2] and [3, 4], the median is (2 + 3) / 2 = 2.5.

Asked in Amazon

Q. Given an unsorted array containing elements in the range [1, n], find the missing number.
Find a missing number in an unsorted array with elements in the range [1,n].
Use a hash set to store the elements and check for missing numbers.
Calculate the sum of all elements and subtract it from the sum of the range [1,n].
Use XOR operation to find the missing number.
Asked in Buyogo Technologies India

Q. What is the implementation of Merge Sort for a 2D array where each row can have a different number of elements?
Merge Sort implementation for a 2D array with varying row lengths.
Iterate through each row and apply Merge Sort individually.
Merge the sorted rows together using a modified merge function.
Handle cases where rows have different lengths by adjusting merge logic.

Asked in Furlenco

Q. How would you design a database to store categories, sub-categories, and further sub-categories? Consider the category menu list of Flipkart as an example.
Design a hierarchical database structure for categories and subcategories similar to Flipkart's menu list.
Use a self-referential table for categories.
Each category can have a parent category ID to establish hierarchy.
Example: 'Electronics' can have subcategories like 'Mobiles', 'Laptops'.
Subcategories can further have their own subcategories, e.g., 'Mobiles' can have 'Smartphones', 'Feature Phones'.
Consider adding attributes like 'category_name', 'parent_id', and 'category_le...read more

Asked in Verizon

Q. 1. To check if word 1 is an anagram of word 2. 2. Questions around Springboot basics 3. SOLID design principles.
To check if two words are anagrams, compare the sorted characters of each word.
Sort the characters of both words
Compare the sorted characters to check if they are equal
Handle edge cases like different lengths or special characters

Asked in Wingify

Q. You are given a student table having columns as id, name, and score. Find the top 20 percentile of student's details based on their score.
Calculate top 20 percentile of student details based on score in a student table.
Calculate the 80th percentile score using formula: 80th_percentile = 0.8 * total_students
Sort the scores in descending order and find the score at 80th percentile position
Retrieve student details with scores greater than or equal to the 80th percentile score

Asked in Comcast India Engineering Center

Q. Write a goroutine code that is synced to another goroutine and waits until the first one passes some data to the next one.
Use channels in Go to sync two goroutines passing data between them.
Create a channel to pass data between the goroutines
Use a select statement to wait for data to be passed
Ensure proper synchronization to avoid race conditions

Asked in Bewakoof

Q. Design the database structure for an e-commerce service to track which products have been ordered in each order.
Design a database structure for an e-commerce service to showcase ordered products.
Create a 'products' table with columns like product_id, name, price, etc.
Create an 'orders' table with columns like order_id, customer_id, order_date, etc.
Create a 'order_details' table to link products with orders, with columns like order_id, product_id, quantity, etc.
Use foreign keys to establish relationships between tables.
Consider indexing columns for faster retrieval of data.

Asked in Urban Company

Q. Design Google Sheets. How will you handle concurrent editing in Google Sheets?
To handle concurrent editing in Google Sheets, use operational transformation to synchronize changes and resolve conflicts.
Implement operational transformation to track and merge concurrent edits
Use version control to manage different versions of the sheet
Apply locking mechanisms to prevent conflicts during editing
Utilize real-time collaboration features to notify users of changes
Implement conflict resolution strategies, such as last writer wins or manual resolution

Asked in Kutumb

Q. What are the key considerations for designing an e-commerce website, particularly in relation to authentication and inventory management?
Key considerations for e-commerce design include secure authentication, efficient inventory management, and user experience.
Implement strong authentication methods (e.g., OAuth, two-factor authentication) to protect user accounts.
Use SSL certificates to encrypt data during transmission, ensuring secure transactions.
Design a user-friendly interface for easy navigation and product discovery.
Integrate real-time inventory management systems to track stock levels and avoid oversel...read more

Asked in Groupon

Q. Design a Stack Overflow application. Provide a high-level design based on the given requirements, and a low-level design if asked.
Design a Stack Overflow-like application for Q&A with user interactions and content management.
User Authentication: Users can register, log in, and manage profiles.
Question and Answer Posting: Users can post questions and answers, with support for markdown formatting.
Voting System: Implement upvote and downvote features for questions and answers.
Tags and Categories: Allow users to tag questions for better organization and searchability.
Search Functionality: Enable users to se...read more

Asked in Kutumb

Q. What is the minimum number of steps required to go from integer x to integer y, given that the allowed operations are subtracting 1 or multiplying by 2?
To find the minimum steps from x to y, use operations of subtracting 1 or multiplying by 2 strategically.
If x >= y: The only option is to subtract 1, so steps = x - y.
If x < y: Use a combination of operations. For example, if x = 3 and y = 10, multiply by 2 to get 6, then subtract to reach 10.
Working backwards can simplify the problem: If y is even, divide by 2; if odd, add 1 to make it even, then divide.
Example: To go from 5 to 20, multiply 5 by 2 to get 10, then multiply by...read more

Asked in Amazon

Q. Can you describe how a hashmap works?
A hashmap is a data structure that stores key-value pairs and allows for constant time lookup and insertion.
Hashmaps use a hash function to map keys to indices in an array.
Collisions can occur when multiple keys hash to the same index, which can be resolved using techniques like chaining or open addressing.
Example: HashMap<String, Integer> map = new HashMap<>(); map.put("key", 123); int value = map.get("key");

Asked in Flipkart

Q. Create a console application to show flights between two cities with the minimum number of hops.
Create a console application to show flights between two cities in min no of hops
Use graph traversal algorithms like BFS to find the shortest path between two cities
Represent cities and flights as nodes and edges in a graph data structure
Implement a console interface for users to input two cities and display the shortest path between them

Asked in S&P Global

Q. How would you build a responsive Web UI page when loading large images from a database, similar to a social networking site?
To build a responsive Web UI page with large images, use lazy loading, image optimization, and responsive design techniques.
Implement lazy loading to only load images when they are in the viewport.
Optimize images for web by compressing them and using modern image formats like WebP.
Use responsive design techniques like CSS media queries to adjust image sizes based on screen resolution.
Consider implementing a content delivery network (CDN) to serve images faster.
Use placeholder...read more

Asked in Comcast

Q. Convert a string to an integer.
Convert a string representation of an integer to its integer value, handling edge cases and invalid inputs.
Use the built-in function int() in Python: e.g., int('123') returns 123.
Handle leading/trailing spaces: e.g., int(' 42 ') returns 42.
Manage invalid inputs: e.g., int('abc') raises a ValueError.
Consider negative numbers: e.g., int('-42') returns -42.
Handle large numbers: e.g., int('12345678901234567890') returns 12345678901234567890.

Asked in Amazon

Q. How many users did your system have?
The system had over 1 million users worldwide.
The system had a global user base.
The user count exceeded 1 million.
Users were from various countries and regions.

Asked in Amazon

Q. Implement a simplified Video Codex using data structures
Implement a simplified Video Codex using data structures
Use a hash table to store key-value pairs of video frames and their corresponding codecs
Implement a priority queue to efficiently retrieve the most frequently accessed video frames
Consider using a linked list to maintain the order of video frames in the codex

Asked in Zeta

Q. How can a series of unique random numbers be generated efficiently without any repetitions?
Efficiently generating unique random numbers can be achieved using algorithms and data structures that ensure no repetitions occur.
Use a Set: Store generated numbers in a Set to automatically handle duplicates. Example: `Set<Integer> uniqueNumbers = new HashSet<>();`
Shuffle an Array: Create an array of numbers and shuffle it. Example: `Collections.shuffle(Arrays.asList(numbers));`
Random Sampling: Use random sampling techniques to select numbers from a range without replacemen...read more

Asked in HashedIn by Deloitte

Q. Describe your experience building an API using a Python framework for document processing.
Build a Python API for document processing using a web framework like Flask or FastAPI.
Choose a framework: Flask or FastAPI are popular choices for building APIs.
Set up the project structure: Create directories for routes, models, and services.
Define API endpoints: Use decorators to define routes for document upload and processing.
Implement document processing logic: Use libraries like PyPDF2 or docx to read and process documents.
Handle file uploads: Use multipart/form-data f...read more

Asked in Wingify

Q. Given a binary tree, find the maximum distance between any two leaf nodes.
Find the maximum distance between any two leaf nodes of a binary tree.
Traverse the tree to find the maximum depth of left and right subtrees
Calculate the maximum distance by adding the depths of left and right subtrees

Asked in Furlenco

Q. Explain the software practices followed in your projects, such as proper unit testing, CI/CD deployment process, and scrum practices.
I follow best software practices like unit testing, CI/CD, and Scrum to ensure quality and efficiency in my projects.
Unit Testing: I implement unit tests using frameworks like JUnit or NUnit to ensure individual components function correctly.
CI/CD: I use tools like Jenkins or GitHub Actions for continuous integration and deployment, automating the build and release process.
Scrum Practices: I participate in daily stand-ups, sprint planning, and retrospectives to enhance team c...read more
Interview Questions of Similar Designations
Interview Experiences of Popular Companies
Top Interview Questions for Software Development 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