0% found this document useful (0 votes)
21 views17 pages

Kunal Interview Questions

Uploaded by

fortiratra
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views17 pages

Kunal Interview Questions

Uploaded by

fortiratra
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 17

RESUME Questions

Q. Tell me about yourself?

Good morning, sir

First, I would like to thank you for giving me this opportunity.

My name is Kunal Attri. I am currently pursuing B. Tech (CSE) from VIT Bhopal. Throughout my last 3
years of academic learning at VIT Bhopal, I have developed strong foundation in Java and Python. My
interests are in Machine Learning and Android Development, using which I have developed various
projects. One of my recent projects are Fruit Quality Detection. In this my role was to develop the
deep learning model for fruit quality detection and mobile app development. It was a wonderful
experience as I got deeper insights into integration of a deep learning model with a mobile app.

Other than this, I completed my schooling from Army Public School, in Delhi. During my school time, I
had the privilege of serving as the House captain, where I had the opportunity to lead my house to
numerous victories in various competitions. I was also appointed as the ATL Mentor and Ambassador
where I mentored my juniors about how to use basic electronics to solve everyday challenges. As the
ATL ambassador, I also organized ATL Tinkerfest, an event, where over 700 students from 29 schools
across Delhi participated. It was a great learning experience for me, as I organized 12 competitions
spread over just 2 days with a budget of 67k.

As for my hobbies, I also love to draw pencil sketches of landscapes and cartoons. I also enjoy playing
chess and solving sudokus in my free time. # I have a chess.com rating of 1637.

Q. You know about both Java and Python. Tell me some differences between Java and Python.

Java Python
It is compiled language It is Interpreted language
Statically typed Dynamically typed
Partially implement multiple inheritance Supports multiple inheritance
Lesser String ops More String ops
Uses braces for block of code Uses proper indentation
Has robust support for Multithreading and Less supportive for this.
Concurrency
Much faster Slower
Supports good DB connectivity Less support for DB connections
Used in many GUI and Web apps Used in Scientific and ML apps

Q. Tell me some similarities between Java and Python.

Similarities:

1. Both are OOP languages.


2. Both are cross platform languages.
3. Both use automatic memory management through garbage collection. Don’t have to worry
about memory allocation and deallocation.
4. Both support Web development and easy code readability.
5. Both have similar approach to error handling.

Q. What is Python?
Python is an interpreted, high-level and OOP language that is dynamically typed and able to be used
in a wide range of apps. It supports dynamic binding and type casting.

It is simple and intuitive. Its syntax is similar to English language which makes it very easy to
understand. Various modules and packages allow modularity and code reuse.

Main approach of python is to make code readable and simple to use.

Features:

1. Easy to learn and use – Syntax is simple and easily adoptable


2. Expressive language
3. Cross – Platform language – Works on most Oss
4. Free and Open Source
5. Standard Library – Offers lots of libs like pandas, NumPy, requests, matplotlib, etc.
6. Flexible with other languages and tools – It is diverse and can be easily integrated with a lot
of tools and frameworks.

Q. Why is Python so famous among people?

Q. Disadvantages of Python.

Disadvantages:

1. Extremely weak in mobile computing, therefore not widely used in app dev.
2. It is interpreted language, that makes it slow.
3. It shows errors at runtime as it is dynamic and interpreted. It can result in loss of time for
running large chunks of code.
4. No commercial support

Q. Which is better, Python or Java?

Depends on use case.

Q. What do you know about Android Development.

I have some experience in Android development. It basically involves creating mobile apps for
android devices. I am proficient in Java for android dev. I am also well versed in Android studio, IDE
for efficiently designing and developing android studio. I also have understanding about android
activity life cycle and data storage methods like Shared preferences. I also know about working with
APIs like Firebase in Android.

Q. What is Machine Learning? Tell me about some types and ML Models.

Machine learning is a branch of AI and CS which focuses on use of data and algorithms to imitate the
way humans learn. Primary goal of ML is to allow computers to identify patterns, make predictions,
or make data-driven decisions based on existing data. It is used in multiple applications like
recommendation systems, NLP, speech recognition, etc.

Various types of Machine learning techniques are:

1. Supervised learning – Training on a labelled dataset. Algo learns to map i/p data to o/p labels
using examples in dataset. Suitable for classification and regression. e.g., DTs, SVMs, linear
regression, etc.
2. Unsupervised Learning – Training on unlabeled dataset. No output labels are provided. Algo
finds patterns or structures or relationships in the given data. Used in large, unstructured
datasets where humans are not able to find patterns easily, like customer segregation,
anomaly detection, etc. e.g., K-means clustering, hierarchical clustering, etc.
3. Reinforcement learning – In this, we focus on training agents to make decisions in an
environment to achieve a specific goal. It is inspired by behavioral psychology, where agent
learns by receiving feedback in form of rewards or penalties. Goal is to train agent to learn
best actions in diff situations to maximize rewards. Used in robotics, playing games, etc. e.g.,
Q-learning, Deep Q Networks.

Q. What is MySQL?

MySQL is an open-source relational DBMS that is widely used for managing and storing structured
data. It is popular for its reliability, scalability and ease of use. Features:

1. Relational DB – Structured in rows and columns.


2. Client – Server architecture – clients interact with server to perform DB operations.
3. Data Security – provides user authentication, access control, data encryption.
4. Scalability – Can handle large amounts of data and high concurrent user requests.
5. Transactions – Allows multiple data opns to be grouped together as a transaction. Ensures
data consistency and integrity in case of failures.
6. Replication – Supports replication, allowing data to be copied on multiple servers, giving high
data availability and fault tolerance.
7. Supports Triggers and Stored Procedures – can be executed in response to an event or timed.

Q. What do you understand by RDBMS?

Stands for Relational Database Management System. It is a software system designed to manage and
store structured data in RDB. Data is organized in tables, and each table represents an entity, and
each row in the table represents specific instance of that entity.

Data is stored in rows and columns and relationships b/w tables are established using keys:

1. Primary Key – it is unique identifier for each record in a table. Ensures each row in a table is
uniquely identified. Cannot contain NULL.
2. Foreign Keys – It is a set of columns in a table that refers to the PK of another table. It
establishes a link or relationship b/w the data in two related tables. Can contain null.
3. Unique key – Constraint to not allow duplicates in a column or set of columns.
4. Composite key – Set of columns together act as a unique identifier.
5. Candidate key – Column that can be used as a primary key.

Q. Do you know about ACID properties? Elaborate?

ACID properties ensure that DB transactions are reliable, consistent and maintain data integrity.
Widely used to ensure the correctness of DB operations and to guarantee that data remains in a valid
state, even in the event of a failure or concurrent access. Properties:

1. Atomicity – Guarantees that a transaction is treated as a single, indivisible unit of work.


Either all operations are performed or none. Entire transaction must be rolled back in case of
failure.
2. Consistency – Ensures that the DB is valid before and after the txn. Means, that any
constraints, rules or relationships refined in DB schema, must not be violated.
3. Isolation – Ensures that each txn is executed in isolation from other concurrent txns. Txns
must not interfere with other txns, and their intermediate states must be hidden from
others.
4. Durability – Guarantees that once a txn is committed, its changes are permanent and survive
any subsequent failures, like power outage, etc. Committed data must be stored safely in
non-volatile memory, ensuring that it is durable.

Can lead to performance overhead, in distributed and highly concurrent environments. In such
cases, some ACID properties might be relaxed like consistency or isolation to get better
performance.

Q. What are the difference between SQL and NoSQL based Databases?

SQL NoSQL
Relational DBMS Non-Relational DBMS
Has fixed or static schema Has Dynamic schema
Vertically Scalable Horizontally Scalable
Follow ACID (Atomicity, Consistency, Isolation, Follow CAP (Consistency, Availability, Partition
Durability) tolerance)
Suited for complex, well-defined data Suited for rapidly changing data requirements
Not suited for hierarchical data storage. Suited for hierarchical data storage.

Q. Explain in detail about your first project?

Q. What exactly is Deep Learning?

Q. What are neural networks?

Q. What is Deep Neural Network Model?

Q. What is the difference between ML, DL, and AI?

Q. You have mentioned Efficient Net B5. Can you further elaborate on that?

Q. Why did you specifically chose Efficient Net B5, and why not B1, B3, B7?

Q. What are convolutional neural networks?

Q. What was the dataset that you used?

Q. How did you reach an accuracy of 97.39 %?

Q. Do you know about other modes of knowing quality of your model?

Q. Difference between Precision, Recall, F1 Score, Accuracy?

Q. You mentioned about integration of DL model with android app. Would you like to tell how you
went about it?

Q. Explain in detail about your second project?

Q. How do you explain ‘malware’ to a layman?

Q. What are Decision Trees?

Q. What is a Random Forest Model?


Q. What dataset did you use in this project?

Q. You achieved 84.36 % accuracy on test dataset. Don’t you think it is too less, specially for a
project like malware detection?

Q. Do you know background working of Streamlit?

Q. Explain in detail about your third project? What was your role?

Q. What is DCGAN?

Q. How does a Generator, generate data?

Q. What is a Captcha? And why do we need captchas? Where are they used?

Q. How did you go about designing the UI of this?

Q. What was your role as R&D team Member at Cyber Warriors Club?

Q. Tell me more about POCSO Committee? And what was your role in that?

Q. Explain about the Cy-Hunt Competition in which you volunteered? What was your role?

Q. You organized ATL Tinkerfest. Would you like to tell me more about how you went about it’s
execution? What challenges did you face and how did you overcome those?

Q. You know German as well! Can you speak a few sentences to me about anything?

Technical Questions
Q. What is your favorite data structure? And why? … Be ready to tackle any question on that, incl
real-life examples.

Q. Read about all sorting and searching techniques.

Q. Do read all DS and their implementations once.

Q. Also read Graph algorithms.

JAVA PROGRAMMING LANGUAGE


Q. What is your favorite language, and why?

Java

Q. Tell me more about Java.


Java is a high-level, general-purpose, class-based programming language. It is multi-platform, object
oriented and has a network-centric approach. It has a WORA (Write Once and Run Anywhere
approach).

Java was dev by Sun Microsystem, and later acquired by Oracle Corporation.

It is a very popular programming language because it has lots of libraries built on top of it.

Q. What are some features of Java?

Feature of Java:

1. Object Oriented – Being OOP language, it offers a lot of imp features like Data Encapsulation,
Inheritance, Data Abstraction, etc. It makes Java suitable for real-world entities and sole real-
life problems.
2. Platform Independent – Compilation of code in Java is not specific to any platform but rather
happens in platform independent bytecode. Then, JVM interprets it.
3. Secure – It helps develop secure and tamper-free code using public key encryption. Even, the
concept of pointers is also not there, as security might be compromised by pointers.
4. Multithreaded – It can perform many tasks simultaneously.
5. High performance – It provides high performance with Just in Time (JIT) compilers by
compiling bytecode to native codes at runtime. It helps enhance the performance of Java.
6. Distributed – It works really well with distributed environments. I can create and manage
multiple distributed application simultaneously. Hence, the code can be saved on diff
machines and accessed at the same time.
7. Dynamic – It is designed to change acc to the way environment is modified.

Q. Disadvantages of Java?

Disadvantages:

1. Execution of code becomes slow due to JIT Compiler.


2. H/W costs increase as there are high memory and processing requirements.
3. Java requires significantly more memory space compared to other languages.

Q. Why is Java so popular these days?

Java is very popular because it has a great suite of high-level concurrency tools and packages that
make it possible to create highly scalable solutions. Also, java is a platform-independent and WORA
programming language.

Q. What are interfaces, abstract classes and classes? Difference between them with real life
examples.

1. Interfaces:
a. They are like blueprints of a class.
b. It can have static final variables and abstract methods.
c. Java 8 supports default and static method definition in interfaces.
d. Java 9 also supports private method definition in interfaces.
e. Allows loose coupling between classes.
f. It is a mechanism to achieve abstraction (100%) and multiple inheritance in Java.
g. Cannot be instantiated.
h. Code – `interface INTERFACE_NAME {…} `
2. Abstract Classes
a. Declared with an abstract keyword. Cannot be declared as final class.
b. It can have both abstract and non-abstract methods.
c. Concrete Methods and variables can be static, non-static, final, private, protected,
public, etc.
d. Abstract methods cannot be private, final, static.
e. Cannot be instantiated.
f. It can have concrete constructors also. Not abstract.
g. Code - `abstract class CLASS_NAME {int vars; void fn () {…}; abstract void fn2(); …} `
3. Classes
a. It is a blueprint for an object.
b. It encapsulates data members, methods, etc.
c. Enable abstraction by hiding implementation details, and exposing only relevant
functionalities.
d. Object are instances of classes, representing some real-world entity.

Interface Abstract Class Class


Cannot be instantiated Cannot be instantiated Can be instantiated
No constructor Can have constructor Can have constructor
Abstract methods, Abstract methods, Only concrete methods
Static, Default methods (J - 8), Concrete Methods
Private methods (J - 9)
Static final variable only All variables allowed All variables allowed
For defining common behavior When common behavior and For concrete implementations
attributes can be shared
among related classes

Q. What is final class in Java?

A final class in Java is a class that cannot be extended. It means, it must be a class complete by
nature.

All wrapper classes in java like String, Integer, etc. are final.

Q. Tell about final methods in Java.

Final methods are those method in Java which cannot be changed or overridden once defined.
Hence, we cannot override a final method in a subclass.

Q. What are Singleton classes in Java?

It is a class in java which must only have once object instantiated at any point in time.

Steps to achieve:

 Make constructor private.


 Define a static method that returns Object of that class. Here, lazy initialization can be used
to do this.

Multi-threaded and DB apps use Singleton pattern for caching, logging, thread pooling, configuration
settings, Database connection management, etc.

Code: // Lazy loading – Object created acc. to requirement.


class Singleton {
private static Singleton instance;
private Singleton () {
// empty constructor
}

public static synchronized Singleton getInstance() {


if (instance == null) instance = new Singleton();
return instance;
}
}

Q. Give some use cases of having a private constructor in a concrete class.

Classes can have private constructor for various applications like:

1. Singleton pattern – where only object of class needs to be instantiated.


2. Factory methods
3. Enum-like classes, which have some specific object to be created via a static block of code.
4. Class with constant fields – public static final vars.

Examples:

1. Thread Pooling factory


2. Database connection management
3. Resource sharing

Q. Tell about keywords – static, final.

Static Final
Variables are associated with class, and not Variables are constant, and cannot be changed
objects. once a value is assigned.
Can be accessed using class name directly.
Methods are also related directly to class. Methods cannot be overridden by subclasses.
Cannot access object specific data.
Static code blocks run once when class is loaded Final class cannot be inherited by any other
into memory. class.

Q. What is JDK, JRE, JVM? Difference between them?

1. Java Development Kit (JDK) – it is a software development environment used for developing Java
applications. It includes JRE, Interpreter/loader, java compiler, java archiver, java documentation
generator and other tools needed in Java development.

2. Java Runtime Environment (JRE) – It provides the minimum requirements for executing a java
application. It consists of JVM, core classes and supporting files.

3. Java Virtual Machine (JVM) – Whatever Java program is run, JVM is responsible for executing the
java program line by line, hence it is also known as interpreter. It is instance of JRE at runtime of a
Java program. Widely aka Runtime interpreter. Responsible for Loading, Linking, Initialization.

Q. What is JIT?
Just-In-Time Compiler is important part of JRE. It is responsible for performance optimization of java
apps during runtime. JIT interacts with JVM at runtime and compile the suitable bytecode sequences
into native machine code. JIT Compiler aids in improving performance of Java programs by compiling
bytecode into native machine code at runtime.

Q. What is loose and tight coupling?

Coupling refers to degree of direct knowledge that one element has of another, i.e., how often do
changes in class A force related changes in class B.

1. Tight Coupling: Two classes often change together. i.e., if A know more than it should about
the way B was implemented, then A and B are tightly coupled.
class Subject {
Topic t = new Topic();
public void startReading()
{
t.understand();
}
}
class Topic {
public void understand()
{
System.out.println("Tight coupling concept");
}
}

2. Loose Coupling: In this, they are mostly independent. Only knowledge class A has about B is
only through its interfaces.

Tight Coupling is bad in but most of the time, because it reduces


flexibility and re-usability of code, it makes changes much more
difficult, it impedes test ability etc. loose coupling is a better choice
because A loosely coupled will help you when your application
needs to change or grow. If you design with loosely coupled
architecture, only a few parts of the application should be affected
when requirements change.
Q. What are default and static methods in Java?

If we want to add a new interface to interface, then its implementation code has to be provided in all
implementing classes. But we can just provide a default method which allows the interface to have
methods with implementation without affecting the classes that implement it.

Static methods are used to construct methods that will exist regardless of whether or not any
instances of classes are generated. It is part of class rather than the part of an instance of a class.
They can only access static variables.

Q. What is a marker or tagged interface in Java? Give some examples.


It is an empty interface. It is a design pattern in which we provide runtime type information about
objects. It provides means to associate metadata with a class where the language does not have
explicit support for metadata. E.g.

1. Cloneable: indicates that it is legal for clone () method to make a field-for-field copy of
instances of that class.
2. Serializable: It makes an object eligible for saving its state into a file, aka serialize.
3. Remote: Makes an object eligible for remote object, and accessible by non-local machines.

Q. Error Handling in Java?

It is way to handle runtime errors so that the regular flow of the application can be preserved.

Exception is an unwanted state or unexpected event, which occurs during the execution of a
program. They can be caught and handled by the program.

Errors are irrecoverable conditions such as JVM running out of memory, memory leaks, stack
overflow errors, library incompatibility, infinite recursion, etc. They are beyond the control of a
programmer.

Exceptions –

1. Checked … compile time exceptions


a. ClassNotFound
b. InterruptedException
c. IOException
d. SQLException
e. FileNotFound
2. Unchecked … runtime exceptions like null ptr…. Not checked during compile time
a. ArithmeticException
b. ClassCastException
c. NullPointerException
d. ArrayIndexOutOfBoundsExcepion
e. illegalThreadStateException

Q. What is Garbage collector and how does it work?

It is the process of automatic memory management. When java programs run on JVM, objects are
created on heap portion of program. When objects are no longer needed, garbage collector finds
these unused objects and deletes them to free up memory.

Finalize method is called by garbage collector.

four ways to make an object eligible for garbage collection.


1. Nullifying the reference variable
2. Re-assigning the reference variable
3. An object created inside the method
4. Island of Isolation

When?
It makes java memory-efficient because the garbage collector removes the unreferenced objects
from heap memory.

It is automatically done by the garbage collector(a part of JVM), so we don’t need extra effort.

Q. Does Java have pointers?

Java doesn’t support pointer explicitly, But java



uses pointer implicitly: Java use pointers for
manipulations of references but these pointers are not
available for outside use. Any operations implicitly done by
the language are actually NOT visible.
So overall Java doesn’t have pointers (in the C/C++ sense) because
it doesn’t need them for general purpose OOP programming
In Java, all primitives like int, char, etc are similar to C/C++, but all
non-primitives (or objects of any class) are always references. So it
gets tricky when we pass object references to methods. Java
creates a copy of references and pass it to method, but they still
point to same memory reference.
Q. Is Java fully Object Oriented?

Fully OOP qualities:

1. Encapsulation
2. Inheritance
3. Polymorphism
4. Abstraction
5. All predefined types are objects
6. All user-defined types are objects
7. All operations performed on objects must be only through methods.

Java is not pure object oriented:

1. Primitive Datatypes are there in java which are not objects like int, char, boolean, byte, short,
long float, double, etc.
2. Static keyword – We can use methods of a static class without objects, which defies object
oriented.
3. Wrapper classes like Integer do convert primitives to objects, but still we can communicate
with objects without methods, like add, subtract, etc.

Basically -> we are using primitive data types like int, and while doing additions, we are still doing it
without methods.

Q. What are volatile and transient keywords in Java?

Volatile - It is used to indicate that a variable’s value may be modified by multiple threads
simultaneously. It ensures that variable value is always read from and written to the main memory,
rather than thread specific caches, ensuring data consistency across threads. It guarantees that the
visibility of such variable is synchronized for all threads. But, do not guarantee operations atomicity.
Transient – It is a variable modifier used in serialization. If, at the time of serialization, we don’t want
to save the value of a variable, then we can use transient. JVM just considers its default value to be
stored in serialized form. It is used when we don’t want to save personal data or data which can be
calculated/derived using other serialized objects or mechanisms. It’s good to not store confidential
or unrequired data.

Static – such variables are not serialized as they are class specific.

Transient final – such variables data is stored whatever was declared initially and not default value.

Q. What is serialization and deserialization in Java?

Serialization is the process of converting the state of an object to a bytestream. Deserialization is the
reverse of serialization and converts bytestream back to the original object. For this, a class must
implement Serializable interface.

Q. What does static do in case of static variable and method?

Q. What are types of variables?

Q. how many types of numbers are there?

Q. Tell me about String in Java?

Q. Why is String class final in Java?

Q. What is the difference between char [] array and String?

Q. Default sorting method in Arrays.sort() and Collections.sort()?

OBJECT ORIENTED PROGRAMMING


Q. What is Object Oriented programming? Tell me about some features of OOPs.

Q. How do you explain OOP to a layman? Give a real-life example.

Q. What are the advantages and disadvantages of OOPs?

Q. What is a class and an object?

Q. Explain Inheritance with types and with real life example?

Q. What is Polymorphism? Types of polymorphism?

Q. What is diff between overloading and overriding?

Q. What is Encapsulation?

Q. What is Abstraction?

Q. Difference between Encapsulation and Abstraction?

Q. Difference between shallow copy and deep copy in OOPs.


Q. Tell me about Copy constructor and copy assignment operator.

Q. Explain deadly diamond of death problem and its solution.

Q. What is a constructor? Types of constructors?

Q. What is a destructor?

Q. What is a virtual function?

OPERATING SYSTEMS
Q. Explain term Operating System to a layman?

An OS acts as an intermediary b/w the user of a computer and the h/w. Its purpose is to provide an
environment in which a user can execute programs conveniently and efficient. It is a s/w that
manages the h/w. It is concerned with allocation of resources and services to programs.

To a layman, consider computer as a big house with many rooms and many different people. OS is
like the manager of the house who makes sure everything runs smoothly and all activities are
coordinated properly.

1. Manager schedules people living, OS schedules programs to run. It decides which program
gets to use the resources.
2. OS also takes care of security, making sure only certain programs or people get to access
certain parts of the house, ensuring personal information is kept safe.
3. Therefore, OS is like the manager of the house making sure, everything is organized. Secure
and runs smoothly so that you can use your computer effectively.

Q. Tell about functions of OS.

Functions:

1. Resource Management – Manages which process should get h/w, releasing and giving h/w
and other devices.
2. Process Management – Schedules and terminates processes with some algorithms.
3. Storage Management – Refers to management of file system on the hard disk. Eg file systems
are NTFS, ext4, FAT32, etc.
4. Memory Management – keep track of how much memory has been used and by whom.
Allocation and deallocation of memory space.
5. Security/Privacy Management – Uses passwords to prevent unauthorized apps from
accessing data. e.g., Windows uses Kerberos.

Q. What are various techniques of Inter process communication?

Inter process communication is the set of interfaces which is usually programmed in order for
programs to communicate between series of processes. This allows programs to run concurrently in
OS. Various Methods in IPC:

1. Pipes – it is a unidirectional communication channel, for IPC b/w two related processes. One
writes to the pipe, while other reads from it. Pipe is buffered.
2. Message Passing – Allows messages to be passed between processes using either a single or
multiple message queues. Can be one-to-one or one-to-many communication. Managed by
system kernel.
3. Shared Memory – Technique in which multiple processes can access the same region of the
memory. It allows high speed communication between processes.
4. Semaphores – They are integer values >= 0. Used for controlling access to shared resources.
To prevent multiple resources from accessing the same resource simultaneously. Basically,
used in situations associated with synchronization or to avoid race condition.
5. Socket – They are used to communicate between process running on different hosts. Provide
a standard interface for communication, independent of OS and language.

Posix: Shared memory; Mac: Message passing; Windows: Message passing w/ local procedural calls

Q. Tell me about RPCs.

Remote Procedural Calls – It is a technique for distributed computing. It allows processes running on
different hosts to call procedures on each other as if they were running on the same host.

Q. What is the working of message queue?

Processes use mailbox (ports) for sending and receiving messages. Each mailbox has a unique id and
processes can communicate only if they share a mailbox. Can have many communication links
between processes, and multiple processes can use a single mailbox. Used in client-server
architecture, where server is receiver and many clients are senders.

In this, one process sends the message and keeps it in the mailbox, while other process receives it
from the mailbox. Can be direct communication or indirect communication – in direct, processes
must name the receiving process. In indirect, there is no such need, and a mailbox is used rather.

Send and receive can be blocking (synchronous) or non-blocking (asynchronous). Blocking send
means sender is blocked until the receiver receives the message. …!

Q. What is a Race condition?

Q. Explain what is deadlock?

Q. What is Coffman’s conditions for a deadlock?

Q. What is mutual exclusion?

Q. Explain term semaphore?

Q. What is Busy Waiting? With some real-life examples?

Q. What are paging techniques in OS?

Q. What is paging?

Q. What is Segmentation in OS?

Q. What is Context Switching?

Q. What exactly happens during context switching?

Q. What is a process?

Q. What is a PCB? What all data does it have?


Q. What is the difference between Process and Threads? Explain with real life example.

Q. What are interrupts? What exactly happens when an interrupt occurs?

Q. Questions on concurrency.

NETWORKING
Q. Explain in detail about what happens when you type www.google.com in your browser?

Q. Explain term Networking to a layman?

Q. What are types of networks?

Q. Tell me about L1, L2, L3 devices?

Q. Difference between Switches and Router?

Q. Briefly tell me the working of router.

Q. What is ISO OSI Model? Layers in OSI Model.

Q. Why do we need 7 different layers?

Q. What is the role/functions of 7 different layers?

Q. What is TCP/IP Model? Explain about its layers.

Q. What are some classes in IPv4 addressing?

Q. What is the difference between IPv4 and IPv6?

Q. What are Peer to Peer Network? Adv and Disadv?

Q. What are Client-Server network? Adv and Disadv?

Q. What is TCP and UDP? Differences? Real life use cases?

Q. What are the flags of TCP?

Q. What are contents of a TCP Message?

Q. What happens in ping and traceroute?

Q. What is layering and switching in networking?

Q. How layering pattern works in Chrome?

Q. What is DNS? How does it work?

Q. What is ARP and it’s uses?

HR Questions
Q. Why do you want to join [COMPANY]?

Q. Name some Competitors of [COMPANY]?


Q. Tell me any 2 current affairs related to [COMPANY]?

Q. What are your strengths and weaknesses?

Q. What are your future objectives and goals?

Q. Will are your plans for higher studies?

Q. Do you know some products of [COMPANY]?

Q. What other company interviews did you attend? Why did you fail to be selected?

Q. What was your most difficult obstacle in life and how did you overcome it? What preparations
did you made?

Q. Why do you want to start your career with [COMPANY]?

It would be my honor to start my career at [COMPANY] as an Associate Software Engineer. During my


academic journey, I have had opportunities to work on various amazing projects like Fruit Quality
Detection using ML, Malware Detection, Drone detection, projects on blockchain in which I designed
and developed my own basis for database. Through all these projects and other opportunities, I have
developed strong foundation in Java and Python and developed critical skills like problem solving,
teamwork, critical and analytical thinking, interpersonal skills, etc. I am eager to apply my skills and
learn newer languages, tech stack as I contribute to your company success.

Other than this, [COMPANY]’s core values like customer satisfaction resonate with my values. I am
enthusiastic to join an organization which is at the forefront of innovation and is bringing positive
change in the industry. I believe that starting my journey at [COMPANY] will be a crucial step as I will
get to take on new challenges head on, develop myself and cater exponentially to company’s success.

I am excited to be part of a dynamic team at [COMPANY] and contribute my skills to make a


meaningful impact. I am committed to growing with your company and forging a successful career
path together.

Refer:
1. https://www.geeksforgeeks.org/object-oriented-
programming-oops-concept-in-java/
2. https://www.geeksforgeeks.org/oops-interview-
questions/
3. https://www.interviewbit.com/oops-interview-
questions/
4. https://www.interviewbit.com/operating-system-
interview-questions/
5. https://www.geeksforgeeks.org/top-20-puzzles-
commonly-asked-during-sde-interviews/
6. https://www.geeksforgeeks.org/operating-
systems-interview-questions/ (overkill)
7. https://www.interviewbit.com/dbms-interview-
questions/
8. https://www.geeksforgeeks.org/commonly-
asked-dbms-interview-questions/
9. https://www.geeksforgeeks.org/last-minute-
notes-operating-systems/
10.

You might also like