Software Development Engineer 3
50+ Software Development Engineer 3 Interview Questions and Answers
Q1. What are triggers , where can they be used ? What is a mutating trigger problem , how can it be solved?
Triggers are database objects that execute automatically in response to certain events. Mutating trigger problem occurs when a trigger tries to read or modify a table that is already being modified by the same transaction.
Triggers can be used to enforce business rules, audit changes, and maintain referential integrity.
They can be used to automatically update a table when a related table is updated.
Mutating trigger problem can be solved by using compound triggers, which allow ...read more
Q2. Find overlapping interval to calculate final payment for store worker
Finding overlapping intervals for calculating final payment of store worker
Identify all the intervals for which the worker is eligible for payment
Check for overlapping intervals and merge them
Calculate the final payment based on the merged intervals
Q3. How to define a parameterized cursor in PLSQL , how to open and close it
Defining and using a parameterized cursor in PL/SQL
Declare a cursor variable with parameters
Open the cursor using the OPEN statement and pass in the parameter values
Fetch rows from the cursor using the FETCH statement
Close the cursor using the CLOSE statement
Q4. What is Rownum ? Is expression Rownum >4 correct ?
Rownum is a pseudocolumn in Oracle that assigns a unique number to each row returned by a query.
Rownum starts with 1 and increments by 1 for each row returned by the query.
The expression Rownum > 4 is correct and will return all rows with a Rownum greater than 4.
Rownum can be used to limit the number of rows returned by a query, for example, 'SELECT * FROM table WHERE Rownum <= 10'.
Q5. Design a mook-my-show type of system for companies. Companies can define schedule of event, number of seats available and prices if any. Only employee of company should be able to book show.
Design a system for companies to schedule events, manage seats, and allow only employees to book shows.
Create a database to store company information, event schedules, seat availability, and employee details
Implement an authentication system to verify employee credentials
Develop a user interface for companies to define event schedules, seat availability, and prices
Allow employees to search and book shows based on their company affiliation
Ensure proper validation and error han...read more
Q6. What is the difference between procedure and function
Procedure is a set of instructions that performs a specific task, while function returns a value after performing a specific task.
Procedure does not return a value, while function returns a value
Procedure can modify the values of input parameters, while function cannot
Functions can be called from within a procedure, but procedures cannot be called from within a function
Share interview questions and help millions of jobseekers 🌟
Q7. Write a query to delete duplicate records from a table
Query to delete duplicate records from a table
Use GROUP BY to group the records by the columns that define duplicates
Use HAVING to filter out groups with count greater than 1
Use DELETE to remove the duplicate records
Q8. Offline store management system
An offline store management system is a software that helps manage inventory, sales, and customer data in a physical store without an internet connection.
The system should have a database to store product information, sales data, and customer information.
It should have a user-friendly interface for employees to input and access data.
The system should be able to generate reports on sales, inventory levels, and customer data.
It should have a backup system in case of data loss o...read more
Software Development Engineer 3 Jobs
Q9. How to define user defined exceptions ?
User defined exceptions can be defined by creating a new class that extends the Exception class.
Create a new class that extends the Exception class
Add constructors to the class to initialize the exception
Throw the exception using the 'throw' keyword
Q10. Have you worked upon CI/CD, Microservices, Junits, Async apis, Multithreading?
Yes, I have experience with CI/CD, Microservices, Junits, Async APIs, and Multithreading.
Implemented CI/CD pipelines using Jenkins for automated testing and deployment
Developed microservices architecture using Spring Boot and Docker containers
Wrote Junit tests for unit testing and integration testing
Worked on building async APIs using frameworks like Node.js and Spring WebFlux
Utilized multithreading in Java applications for improved performance
Q11. 1. For a leaderboard fetch ranking for a given user and 5 users above and below this user, where data set is huge in terra bytes 2. Find longest substring with max 2 distinct chars in a list
Fetch leaderboard ranking for a given user and neighbors, handle huge dataset
Use a distributed system like Hadoop or Spark to handle the huge dataset
Implement a ranking algorithm to efficiently fetch the leaderboard
Retrieve the ranking for the given user and fetch 5 users above and below
Ensure the solution is scalable and can handle increasing data size
Q12. Design a CRUD of saving and getting a message in Spring boot. Write all classes from controller, service, repository.
Design a CRUD of saving and getting a message in Spring boot
Create a Message entity with fields like id, content, createdDate
Create a MessageRepository interface extending JpaRepository
Create a MessageService class with methods for saving, getting, updating, and deleting messages
Create a MessageController class with endpoints for CRUD operations using @RestController and @RequestMapping annotations
Q13. write code for Boggle game
Code for Boggle game
Create a 2D grid of letters
Generate all possible words using the grid and a dictionary
Implement a search algorithm to find valid words
Track score based on word length and rarity
Allow for multiple players and rounds
Q14. Design High Level Design for Instagram. (Subset of instagram features is in scope)
Design a high level design for a subset of Instagram features.
User authentication and profile creation
Photo and video uploading with filters
News feed displaying posts from followed users
Like, comment, and share functionality
Direct messaging between users
Q15. Sliding window based question : maximum sum of distinct subarray with length k
Find maximum sum of distinct subarray with length k using sliding window technique.
Use a sliding window of size k to iterate through the array
Keep track of the sum of elements within the window
Maintain a set to keep track of distinct elements in the window
Slide the window by removing the leftmost element and adding the rightmost element
Update the maximum sum as you iterate through the array
Q16. Design a communication system for chat/notifications
Design a communication system for chat/notifications
Use a real-time messaging protocol like WebSocket for chat functionality
Implement push notifications for notifications to keep users updated
Include features like read receipts, typing indicators, and message history
Consider implementing message encryption for security
Allow users to customize notification settings for different types of messages
Q17. Design a report card generation system with dynamic class/subjects
Design a system for generating report cards with dynamic class/subjects
Create a database to store student information, class details, and subject details
Allow users to input class details and subjects for each class dynamically
Design a template for report cards that can be customized based on class and subjects
Implement a feature to generate report cards based on the selected class and subjects
Include options for teachers to input grades and comments for each subject
Q18. Talk about the most challenging technical feature you implemented
Implemented a real-time collaborative editing feature using WebSockets
Designed a scalable architecture to handle concurrent edits from multiple users
Implemented conflict resolution algorithms to ensure data consistency
Utilized WebSockets for bi-directional communication between clients and server
Q19. What are CNN and how yolo model works
CNN stands for Convolutional Neural Networks, used for image recognition. YOLO (You Only Look Once) is a real-time object detection model.
CNNs are deep learning models specifically designed for processing visual data like images and videos.
They consist of multiple layers such as convolutional, pooling, and fully connected layers to extract features from the input data.
YOLO is a popular object detection model that divides the image into a grid and predicts bounding boxes and c...read more
Q20. High level system design of Book My show
Book My Show is a high-level system for booking movie tickets and event tickets online.
Users can search for movies or events, view showtimes, and book tickets online.
The system should handle user authentication, payment processing, and ticket confirmation.
It should also include features like seat selection, seat availability updates, and booking history.
The system should have a database to store movie/event information, user data, and transaction details.
Q21. Find the level of a node in a binary tree?
The level of a node in a binary tree is determined by the number of edges on the path from the root to that node.
The level of the root node is 0.
To find the level of a node, traverse the tree starting from the root and increment a level counter as you move down the tree.
The level of a node can also be determined by its distance from the root node.
Q22. Design a book reader service such as kindle
Design a book reader service similar to Kindle
Implement a user-friendly interface for browsing and purchasing books
Include features like bookmarking, highlighting, and note-taking
Support various file formats such as PDF, EPUB, and MOBI
Provide options for customization like font size, background color, and reading progress tracking
Q23. LRU Cache Design framework for exception handling
Design a framework for exception handling in a LRU Cache system
Implement try-catch blocks to handle exceptions
Use specific exception classes for different types of errors
Consider using logging mechanisms to track and debug exceptions
Implement a global exception handler to catch unhandled exceptions
Q24. Search in a sorted rotated array
Search for a target value in a sorted rotated array.
Use binary search to find the pivot point where the array is rotated.
Determine which half of the array the target value may lie in based on the pivot point.
Continue binary search in the appropriate half of the array to find the target value.
Q25. diffrence between throttling and debouncing
Throttling limits the number of times a function can be called over a certain period, while debouncing delays the execution of a function until a certain amount of time has passed without it being called.
Throttling ensures that a function is not called more than once in a specified time frame.
Debouncing delays the execution of a function until a certain amount of time has passed without it being called.
Throttling is often used in scenarios like scroll events to limit the rate...read more
Q26. How ViewModel work internally
ViewModel is a class that is responsible for preparing and managing the data for an activity or fragment.
ViewModels are designed to store and manage UI-related data in a lifecycle-conscious way.
They survive configuration changes, such as screen rotations, and are not destroyed when the activity or fragment is destroyed and recreated.
ViewModels are typically used to hold data that is needed by multiple fragments or activities within an application.
They can also be used to comm...read more
Q27. Android In depth
Android is a mobile operating system developed by Google, based on the Linux kernel and designed primarily for touchscreen devices.
Android is open-source and allows developers to create applications using Java or Kotlin.
It has a large user base and a wide range of devices running on different versions of the OS.
Android provides a rich set of APIs for accessing device hardware, sensors, and services.
Google Play Store is the official app store for Android, where users can downl...read more
Q28. What are residual networks
Residual networks are a type of neural network architecture that utilize skip connections to help with training deep networks.
Residual networks were introduced by Kaiming He et al. in the paper 'Deep Residual Learning for Image Recognition'.
They address the problem of vanishing gradients in deep networks by introducing skip connections that allow the gradient to flow more easily.
Residual networks have been widely used in computer vision tasks, such as image classification and...read more
Q29. Find median in two sorted arrays
Merge two sorted arrays and find the median
Merge the two arrays into one sorted array
Calculate the median based on the length of the merged array
Handle cases where the total length is even or odd
Q30. ode working and its functionalities
Code working and its functionalities
Code working refers to the process of writing, compiling, and executing code to achieve a desired outcome
Functionalities of code include data manipulation, logic implementation, and interaction with external systems
Examples of code working functionalities include sorting algorithms, database queries, and user interface design
Q31. how do you manage states
I manage states by using state management libraries like Redux and MobX, and by following best practices like separating UI and business logic.
Use state management libraries like Redux or MobX to centralize and manage application state
Follow best practices like separating UI and business logic to keep states manageable and maintainable
Utilize local component state for simple and isolated state management within components
Q32. What are states in flutter
States in Flutter are the data values that can change during the lifetime of a widget.
States are used to manage the data that changes over time in a Flutter application.
There are two types of states in Flutter: Stateful and Stateless.
Stateful widgets have mutable state that can change over time, while stateless widgets are immutable.
Examples of states in Flutter include user input, network requests, and animations.
Q33. Typical LLD with API and DB schema
LLD stands for Low Level Design, which includes designing API and database schema for a software system.
LLD involves detailed design of individual components/modules of a software system.
API design includes defining endpoints, request/response formats, authentication mechanisms, etc.
DB schema design involves defining tables, relationships, indexes, constraints, etc.
LLD ensures that the system is scalable, maintainable, and efficient.
Example: For an e-commerce platform, LLD wo...read more
Q34. Check if a tree is balanced
A balanced tree is a tree where the heights of the two subtrees of every node never differ by more than 1.
Traverse the tree and calculate the height of each subtree
Check if the heights of the left and right subtrees differ by more than 1
Repeat the process for all nodes in the tree
Q35. what is coroutine
Coroutines are a type of computer program component that allow for cooperative multitasking and non-preemptive scheduling.
Coroutines are similar to subroutines, but they can pause and resume execution at specific points.
They are useful for tasks that involve asynchronous operations or managing concurrent tasks.
Coroutines can be implemented using language-specific constructs or libraries, such as async/await in Python or Kotlin's coroutines.
Example use cases include network pr...read more
Q36. What is seald class
A sealed class is a class that cannot be inherited or extended by other classes.
Sealed classes are used to restrict inheritance and ensure that a class cannot have subclasses.
They are often used when a class is considered complete and should not be extended further.
Sealed classes can have abstract members and can be used as base classes for other classes.
An example of a sealed class in C# is the System.String class.
Q37. Designing posts feed in react.js
Designing a posts feed in React.js
Use state management library like Redux to store and manage posts data
Create a Post component to display each post with relevant information
Implement infinite scrolling or pagination for loading more posts
Include features like like, comment, and share buttons for each post
Q38. what is throttling
Throttling is a process of limiting the number of requests or data flow in order to prevent overload.
Throttling is used to control the rate of data transfer or API requests to prevent server overload.
It can be implemented by setting limits on the number of requests per second or minute.
Throttling can help maintain system stability and prevent performance degradation.
Examples include rate limiting on API endpoints to prevent abuse or setting limits on data transfer speeds.
Q39. System Design of hotel mgmt
System design for hotel management including booking, check-in/out, room allocation, and payment processing.
Use a database to store information about rooms, bookings, guests, and payments.
Implement a booking system that allows guests to search for available rooms based on dates and preferences.
Include a check-in/out process that updates room availability and guest information.
Design a room allocation algorithm to optimize room usage and guest satisfaction.
Integrate a payment ...read more
Q40. Find Second Highest Number
Find the second highest number in an array.
Sort the array in descending order
Return the element at index 1
Q41. Design movie booking system
Design a movie booking system
Create a database to store movie details, showtimes, and seat availability
Develop a user interface for customers to browse movies, select showtimes, and book seats
Implement a payment gateway for secure transactions
Include features like seat selection, seat reservation timeout, and booking confirmation
Q42. Design Google calendar
Design a Google calendar
Allow users to create events and set reminders
Provide options for recurring events
Include sharing and collaboration features
Integrate with other Google services like Gmail and Maps
Q43. Triplet Sum in An array
Find if there are three elements in an array that sum up to a given target value.
Sort the array first to make the solution more efficient.
Use two pointers technique to find the triplet sum.
Handle duplicates by skipping them while iterating.
Q44. Design LLD of Dream11
Design LLD of Dream11
Use microservices architecture for scalability and flexibility
Implement user authentication and authorization for secure access
Utilize caching mechanisms to improve performance
Design database schema for storing user data, teams, matches, and scores
Include features like creating teams, joining contests, and viewing live scores
Q45. Explain Initialisers in swift
Initialisers in Swift are special methods used to create and initialise instances of a class, struct, or enum.
Initialisers are used to set up the initial state of an instance.
They are defined using the 'init' keyword.
There are designated initialisers and convenience initialisers.
Designated initialisers are the primary initialisers for a class.
Convenience initialisers are secondary initialisers that call a designated initialiser.
Example: init(name: String) { self.name = name }
Q46. pollyfil for debounce
Polyfill for debounce function in JavaScript
Implement a debounce function that delays invoking a function until after a certain amount of time has passed without it being called again
Use setTimeout to delay the execution of the function
Clear the timeout if the function is called again within the specified time frame
Return a function that can be called to trigger the debounced function
Q47. Find in 2d matrix II
Search for a target value in a 2D matrix and return true if found, false otherwise.
Start from the top right corner or bottom left corner for efficient search
Use binary search in each row or column to narrow down the search space
Handle edge cases like empty matrix or target not found
Q48. Find Mirror of tree
To find the mirror of a tree, we need to swap the left and right children of each node recursively.
Start from the root node of the tree
Swap the left and right children of the current node
Recursively call the mirror function on the left and right subtrees
Q49. Designing posts
Designing posts for social media platforms
Consider the target audience and platform
Use eye-catching visuals and engaging captions
Include relevant hashtags and tags
Maintain consistency in branding and tone
Monitor engagement and adjust strategy accordingly
Q50. Design Parking lot
Design a parking lot
Consider the size and capacity of the parking lot
Decide on the layout and organization of parking spaces
Implement a system to manage parking availability and reservations
Include features like ticketing, payment, and security
Consider accessibility and convenience for drivers
Interview Questions of Similar Designations
Top Interview Questions for Software Development Engineer 3 Related Skills
Interview experiences of popular companies
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/Month