Dell
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I applied via Naukri.com and was interviewed in Jun 2022. There were 3 interview rounds.
NAS and SAN storages differ in their architecture and usage.
NAS (Network Attached Storage) is a file-level storage that uses a standard Ethernet network to provide shared access to files.
SAN (Storage Area Network) is a block-level storage that uses a dedicated network to provide high-speed access to storage devices.
NAS operates at the file level, allowing multiple clients to access files simultaneously.
SAN operates at ...
I appeared for an interview in Aug 2016.
I rate myself 2 in C, 3 in C++ and 4 in DS.
I have a good understanding of basic concepts in C and can write simple programs.
I have worked on projects in C++ and have a decent knowledge of OOP concepts.
I am comfortable with data structures like arrays, linked lists, stacks, and queues.
Storage classes in C define the scope and lifetime of variables.
There are four storage classes in C: auto, register, static, and extern.
Auto variables are local to a block and have automatic storage duration.
Register variables are stored in CPU registers for faster access.
Static variables have a lifetime throughout the program and are initialized only once.
Extern variables are declared outside any function and can be a
C program to reverse a string in-place
Use two pointers, one at the beginning and one at the end of the string
Swap the characters at the two pointers and move the pointers towards each other until they meet
Handle odd-length strings by leaving the middle character in place
Program to insert a node in linked list
Create a new node with the given data
Set the next pointer of the new node to the next pointer of the previous node
Set the next pointer of the previous node to the new node
Program to find loop in linked list
Use two pointers, slow and fast, to traverse the linked list
If there is a loop, the fast pointer will eventually catch up to the slow pointer
To find the start of the loop, reset the slow pointer to the head and move both pointers at the same pace
Quick sort is a divide and conquer algorithm that sorts an array by partitioning it into two sub-arrays.
Choose a pivot element from the array
Partition the array around the pivot element
Recursively apply the above steps to the sub-arrays
Combine the sorted sub-arrays to get the final sorted array
Heap sort is a comparison-based sorting algorithm that uses a binary heap data structure.
Heap sort works by building a binary heap from the array to be sorted.
The largest element is then swapped with the root node and removed from the heap.
The heap is then restructured and the process is repeated until the array is sorted.
Heap sort has a time complexity of O(n log n) and is not stable.
It is often used in embedded syste...
C++ is a high-level programming language used for developing system software, application software, device drivers, and video games.
C++ was developed by Bjarne Stroustrup in 1983.
It is an extension of the C programming language.
C++ supports object-oriented programming, generic programming, and low-level memory manipulation.
It is widely used in industries such as finance, gaming, and operating systems development.
Exampl...
OOP stands for Object-Oriented Programming, a programming paradigm that focuses on objects and their interactions.
OOP is based on the concepts of encapsulation, inheritance, and polymorphism.
It allows for modular and reusable code.
Examples of OOP languages include Java, C++, and Python.
Which software are you referring to?
Please specify the software you are asking about
Without context, it is impossible to answer this question
Late binding is a programming concept where the method or function to be executed is determined at runtime.
Also known as dynamic binding or runtime binding
Allows for greater flexibility in code execution
Commonly used in object-oriented programming languages
Example: virtual functions in C++
Virtual functions are functions that can be overridden by derived classes.
Virtual functions are declared in a base class and can be overridden in a derived class.
They allow for polymorphism, where a derived class can be treated as its base class.
Virtual functions are called based on the actual object type, not the pointer or reference type.
They are declared using the 'virtual' keyword in the base class and optionally o...
A friend class is a class that is granted access to the private and protected members of another class.
A friend class is declared using the 'friend' keyword.
A friend class can access private and protected members of the class that granted it friendship.
Friendship is not mutual, meaning the friend class does not grant access to its own members.
Friend functions can also be declared in a class to grant access to private a
++x is faster than x++ because it increments the value before using it.
++x increments the value before using it, while x++ increments the value after using it.
++x is faster because it saves the overhead of creating a temporary variable.
In some cases, the difference in speed may be negligible and the choice between the two may depend on readability and coding standards.
A null object is an object that does not have a value or reference to any object.
A null object is different from an object with a value of zero or an empty string.
It is often used to represent the absence of an object or value.
Null objects can be used to avoid null pointer exceptions in programming.
It is a conceptual idea in programming and computer science.
I am a software engineer with experience in developing web applications and mobile apps.
Proficient in programming languages such as Java, Python, and JavaScript
Skilled in using frameworks like React, Angular, and Spring Boot
Experience in working with databases such as MySQL and MongoDB
Familiarity with agile development methodologies
Passionate about learning new technologies and solving complex problems
My strength is my ability to quickly learn and adapt to new technologies and programming languages.
Quick learner and adaptable to new technologies
Able to work with multiple programming languages
Strong problem-solving skills
Attention to detail
Good communication skills
I need to improve my time management skills.
Prioritize tasks based on urgency and importance
Set realistic deadlines and stick to them
Avoid multitasking and focus on one task at a time
Use tools like calendars and to-do lists to stay organized
Yes, I am okay with the job location in Noida.
I am willing to relocate for the right opportunity
I have researched the area and feel comfortable with the location
I am excited about the opportunity to work with this company and location is not a major factor
Samsung is a South Korean multinational conglomerate known for its electronics, appliances, and smartphones.
Founded in 1938 by Lee Byung-chul
Employs over 300,000 people worldwide
Produces a wide range of products including TVs, refrigerators, washing machines, and smartphones
One of the largest smartphone manufacturers in the world
Has a strong focus on innovation and research and development
I am excited about the company's innovative projects and the opportunity to work with a talented team.
I am impressed by the company's reputation in the industry
I am excited about the company's focus on innovation and cutting-edge technology
I am eager to work with a talented team and learn from experienced professionals
I believe that my skills and experience align well with the company's needs
I have the technical skills, experience, and passion to contribute to your team and help drive success.
I have a strong background in software development, with expertise in multiple programming languages and frameworks.
I am a quick learner and adaptable to new technologies and methodologies.
I have experience working in both individual and team settings, and am able to communicate effectively with colleagues and stakeho...
I'm sorry, I don't understand the question. Could you please clarify?
Please provide more context or rephrase the question.
I'm not sure what 'giving cat' means in this context.
Could you please explain what you are looking for?
I chose VJTI because of its reputation for excellence in engineering education.
VJTI has a long history of producing successful engineers.
The faculty at VJTI are highly experienced and knowledgeable.
VJTI has state-of-the-art facilities and resources for engineering students.
The alumni network of VJTI is strong and provides great opportunities for networking and career growth.
I prefer jobs in other locations due to personal reasons and career goals.
Personal reasons such as family or lifestyle preferences
Career goals such as industry focus or company culture
Other locations may offer better opportunities or work-life balance
Preference for smaller or emerging tech hubs
Examples: Hyderabad, Chennai, Mumbai, Delhi
I applied via LinkedIn
Operating system uses memory protection to prevent modification of const variables like const int i=5;
Operating system marks the memory page containing i as read-only
Any attempt to modify i will result in a segmentation fault
Compiler may optimize code by replacing i with its value at compile time
Explanation of memory layout in main memory of computer system.
Main memory is divided into four segments: stack, heap, data, and code.
Stack stores local variables and function calls.
Heap stores dynamically allocated memory.
Data stores global and static variables.
Code stores the program instructions.
Example: int x; //stored in data segment, int *p = new int; //stored in heap segment
Two methods to allocate memory in C are malloc and calloc. Malloc allocates memory block of given size while calloc initializes the allocated memory block to zero.
Malloc allocates memory block of given size while calloc initializes the allocated memory block to zero.
Malloc returns a pointer to the first byte of allocated memory block while calloc returns a pointer to the first byte of initialized memory block.
Malloc is...
new() is an operator in C++ used for dynamic memory allocation.
new() returns a pointer to the allocated memory.
It can be used to allocate memory for primitive data types, arrays, and objects.
Memory allocated using new() must be deallocated using delete operator.
Example: int *ptr = new int;
Example: int *arr = new int[10];
Example: MyClass *obj = new MyClass();
malloc and new are used to allocate memory dynamically. Malloc is faster but new is safer.
malloc is a C function while new is a C++ operator
malloc only allocates memory while new also initializes the memory
new throws an exception if allocation fails while malloc returns NULL
malloc is faster because it does not involve constructor calls
new is safer because it ensures type safety and prevents memory leaks
extern and static are storage classes in C programming language.
extern is used to declare a variable or function that is defined in another file or module.
static is used to declare a variable or function that is local to a file or module.
Example of extern: extern int count; //declares count variable defined in another file.
Example of static: static int count = 0; //declares count variable local to the file.
The two statements are equivalent and declare a pointer to a constant integer.
Both statements declare a pointer to an integer that cannot be modified through the pointer.
The 'const' keyword can be placed before or after the 'int' keyword.
The pointer itself can still be modified to point to a different integer.
Example: const int *p; and int const *p; both declare a pointer to a constant integer.
Cannot modify value pointed by p, but can change the address it points to.
p is a pointer to a constant integer with value 5
a) is valid as p can point to a non-constant integer
b) is invalid as *p is a constant and cannot be modified
Self referential structure is a structure that contains a pointer to the same type of structure.
It allows a structure to reference itself within its own definition.
It is commonly used in linked lists, trees, and graphs.
Example: struct Node { int data; struct Node *next; };
Here, the Node structure contains a pointer to another Node structure.
Structure and union are data structures in C language. Union stores only one value at a time while structure stores multiple values.
Structure is used to store different data types while union is used to store only one data type at a time.
Structure allocates memory for all its members while union allocates memory for only the largest member.
Structure is used when we want to store multiple values of different data types ...
Structure byte padding is the insertion of unused bytes between structure members to align them in memory.
Padding is added to ensure that each member of a structure is aligned on a memory boundary that is a multiple of its size.
The amount of padding added depends on the size and alignment requirements of the members.
Padding can affect the size of a structure and the performance of code that uses it.
For example, a struc...
To check if a linked list is circular, we can use Floyd's cycle-finding algorithm.
Floyd's cycle-finding algorithm uses two pointers, one moving at twice the speed of the other.
If the linked list is circular, the fast pointer will eventually catch up to the slow pointer.
If the linked list is not circular, the fast pointer will reach the end of the list and the algorithm will terminate.
Windows is a proprietary operating system developed by Microsoft.
Windows is a graphical user interface (GUI) based operating system.
It is designed to run on personal computers, servers, and mobile devices.
Windows has different versions such as Windows 10, Windows 8, Windows 7, etc.
It supports a wide range of software applications and hardware devices.
Windows is known for its ease of use and user-friendly interface.
UNIX is an operating system developed in the 1970s, while LINUX is a free and open-source operating system based on UNIX.
UNIX is proprietary, while LINUX is open-source
UNIX is older and has a longer history, while LINUX is a newer development
UNIX is more stable and reliable, while LINUX is more customizable and flexible
UNIX has a more limited user base, while LINUX has a larger and more active community
Examples of UNIX...
A real-time operating system is an OS that processes data and events as they occur, without delay.
Real-time operating systems are used in applications that require immediate response, such as aviation, medical equipment, and industrial control systems.
They prioritize tasks based on their urgency and importance, and can handle multiple tasks simultaneously.
Examples of real-time operating systems include VxWorks, QNX, an
There are 6 types of CPU scheduling: FCFS, SJF, SRTF, Priority, Round Robin, and Multilevel Queue. Each has its own advantages and disadvantages.
FCFS (First-Come-First-Serve) - processes are executed in the order they arrive
SJF (Shortest-Job-First) - shortest job is executed first
SRTF (Shortest-Remaining-Time-First) - preemptive version of SJF
Priority - processes with higher priority are executed first
Round Robin - eac...
No, there is no ideal CPU scheduling possible.
CPU scheduling is a complex problem with many variables.
Different scheduling algorithms are suited for different scenarios.
The ideal scheduling algorithm would depend on the specific system and workload.
For example, a real-time system would require a different scheduling algorithm than a batch processing system.
To set process priority in Windows and Linux, use task manager and nice command respectively.
In Windows, open task manager, right-click on the process and select 'Set Priority'
In Linux, use the 'nice' command followed by the process name or ID and the priority level (values range from -20 to 19)
Higher priority levels mean the process will get more CPU time
Examples: 'nice -n 10 firefox' sets Firefox priority to 10 in Li...
The priority of a mobile application depends on the business goals and user needs.
The priority of a mobile application can vary depending on the business goals and user needs.
For example, a mobile banking app may have a higher priority than a social media app for a bank.
On the other hand, a social media app may have a higher priority for a media company.
The priority can also depend on the target audience and the market...
Senior Software Engineer
1.8k
salaries
| ₹10 L/yr - ₹38.3 L/yr |
Software Engineer
1.1k
salaries
| ₹5.2 L/yr - ₹18.5 L/yr |
Principal Software Engineer
967
salaries
| ₹19 L/yr - ₹55 L/yr |
Software Engineer2
875
salaries
| ₹7 L/yr - ₹23 L/yr |
Senior Analyst
523
salaries
| ₹6 L/yr - ₹22 L/yr |
Samsung
Vivo
OPPO
LG Electronics