Software Development Engineer 3

50+ Software Development Engineer 3 Interview Questions and Answers

Updated 9 Nov 2024

Popular Companies

search-icon

Q1. What are triggers , where can they be used ? What is a mutating trigger problem , how can it be solved?

Ans.

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

Ans.

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

Ans.

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 ?

Ans.

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'.

Are these interview questions helpful?

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.

Ans.

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

Ans.

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 🌟

man-with-laptop

Q7. Write a query to delete duplicate records from a table

Ans.

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

Ans.

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

SDE III, Amazon 5-12 years
Amazon India Software Dev Centre Pvt Ltd
4.1
Bangalore / Bengaluru
SDE III 3-6 years
Panasonic India Pvt. Ltd
4.1
Mumbai
Software Development Engineer 3 4-7 years
RingCentral
4.0
Bangalore / Bengaluru

Q9. How to define user defined exceptions ?

Ans.

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?

Ans.

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

Ans.

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.

Ans.

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

Ans.

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. Sliding window based question : maximum sum of distinct subarray with length k

Ans.

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

Q15. Design a communication system for chat/notifications

Ans.

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

Q16. Design a report card generation system with dynamic class/subjects

Ans.

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

Q17. Talk about the most challenging technical feature you implemented

Ans.

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

Q18. What are CNN and how yolo model works

Ans.

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

Q19. High level system design of Book My show

Ans.

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.

Q20. Find the level of a node in a binary tree?

Ans.

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.

Q21. Design a book reader service such as kindle

Ans.

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

Q22. LRU Cache Design framework for exception handling

Ans.

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

Q23. Search in a sorted rotated array

Ans.

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.

Q24. diffrence between throttling and debouncing

Ans.

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

Q25. How ViewModel work internally

Ans.

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

Q26. Android In depth

Ans.

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

Q27. What are residual networks

Ans.

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

Q28. Find median in two sorted arrays

Ans.

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

Q29. ode working and its functionalities

Ans.

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

Q30. how do you manage states

Ans.

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

Q31. What are states in flutter

Ans.

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.

Q32. Typical LLD with API and DB schema

Ans.

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

Q33. Check if a tree is balanced

Ans.

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

Q34. what is coroutine

Ans.

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

Q35. What is seald class

Ans.

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.

Q36. Designing posts feed in react.js

Ans.

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

Q37. what is throttling

Ans.

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.

Q38. System Design of hotel mgmt

Ans.

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

Q39. Find Second Highest Number

Ans.

Find the second highest number in an array.

  • Sort the array in descending order

  • Return the element at index 1

Q40. Design movie booking system

Ans.

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

Q41. Design Google calendar

Ans.

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

Q42. Triplet Sum in An array

Ans.

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.

Q43. Design LLD of Dream11

Ans.

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

Q44. Explain Initialisers in swift

Ans.

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 }

Q45. pollyfil for debounce

Ans.

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

Q46. Find in 2d matrix II

Ans.

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

Q47. Find Mirror of tree

Ans.

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

Q48. Designing posts

Ans.

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

Q49. Design Parking lot

Ans.

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

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

Top Interview Questions for Software Development Engineer 3 Related Skills

Interview experiences of popular companies

4.1
 • 4.9k Interviews
3.9
 • 390 Interviews
3.6
 • 172 Interviews
3.9
 • 119 Interviews
3.6
 • 111 Interviews
3.3
 • 41 Interviews
2.4
 • 16 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

Software Development Engineer 3 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