Live Classes: Upskill your knowledge Now!
Chat NowPublished - Mon, 05 Dec 2022
Adobe Systems Incorporated, also known as Adobe, is an American multinational company of Computer software. Adobe is headquartered in San Jose, California, United State with total 17000 employees across the world (in 2017). Adobe was established by John Warnock and Charles Geschke in December 1982. It was founded primarily to develop and sell the PostScript page description language. The Company provides various creative software products and services which are used by professional, application developers, enterprises and consumers. Adobe is famous for Photoshop, Acrobat Reader, Portable Document Format (PDF), Adobe Creative Suite, and Adobe Creative Cloud. Adobe mainly focused on three Segments, which are Digital media, Digital marketing, and print and publishing. Adobe is one of the best company to work for, and also Ranked as 5th best U.S. Company in 2003. Adobe is given ranked as 51th for Best Global Brands by Interbrand in year 2018.
CEO and Chairman: Shantanu Narayen
CFO: John F Murphy
CTO: Abhay Parasnis
Adobe recruitment process is one of the difficult recruitment processes. Adobe selects the candidates very carefully, with lots of screening to choose the best talent of all the candidates. The recruitment process of Adobe is also different from other companies as it takes 5- 6 rounds for an Interview. Following are the main rounds of the recruitment process.
Academic Criteria:
This first round will be the Online Test, which consists of two sections mainly. The first section will be based on basic aptitude and reasoning. The second section will contain the MCQ questions based on C/C++/JAVA output based questions, and coding question, which will be subjective. This round is organized on Hackerrank Platform, in which candidate can code in any of preferred language(C, C++ or Java). The first section of this round will be the most comfortable round of complete recruitment process but needs a good speed to clear it.
Sections | Time duration | Number of questions | Topics |
---|---|---|---|
Aptitude | 15 min | 15 questions | Quantitate Aptitude
|
Reasoning Section | 30 min | 30 questions | Logical Reasoning
|
Technical(MCQ) +Coding test(subjective) | 75-120 min | 15-20 Questions |
|
Sample aptitude questions with the answer to prepare for the first round:
i. Guda buka means Clear water
ii. Pin gola means Overcast sky
iii. Pin saf buka means Clear blue sky
Then, which of the following word means BLUE?
The second section of the first round is technical MCQ and coding section. This section is little tough to crack. It requires a thoroughly study of concepts for data structure, C, Bit manipulation, and algorithms. There are some sample questions for Adobe interview with the answers.
int main()
{
int i;
int arr[5] = {5};
for (i = 0; i < 5; i++)
printf("%d ", arr[i]);
return 0;
}
#include
int main()
{
printf("%d", main);
return 0;
}
scanf ("%3s", str);
char p[10];
char *s = "computer";
int length = strlen(s);
int i;
for (i = 0; i < length; i++)
p[i] = s[length - i];
printf("%s", p)
#include
struct st
{
int x;
static int y;
};
int main()
{
printf("%d", sizeof(struct st));
return 0;
}
#include
int main()
{
int arr[] = {5, 8, 10, 12,18};
int *p = arr;
++*p;
p += 3;
printf("%d", *p);
return 0;
}
This section is a coding round in which a candidate needs to write code for the given questions in any preferred language(C/C++/Java). Some of the coding questions are given below for practice.
Output:
Input linked list 68 30 14 20 Reversed Linked list 20 14 30 68
Output:
The product of 10 and 20: 200
Output:
Before swap 20 30 After swap 30 20
Output:
The series is 0 1 1 2 3 5 8 13 The nth term is 13
Output:
Total bits are=4 Total zero bits are=0 Total one's bits are= 4
Output:
The output for x^n, where x=6, n=3, 216
Output:
Input Tree is 1 3 4 7 8 9 10 Tree is BST or not: true Tree is BST or not: true Input Tree is 1 3 4 20 7 8 9 10 Tree is BST or not: false Tree is BST or not: false
Output:
18 20 30 15 10 16 4th node from end is: 30
This is the third main round of the Adobe interview process. It contains various rounds. In this round, candidates are checked on their technical skills. If candidate clears one round, then he/she can proceed for the next round.
The primary difference between typedef and #define is given below:
Example:
Output:
10 Andhra Pradesh
sprint() is a C library function which is termed as "string print." sprintf function is used to hold the formatted data output as String.
Syntax:
Example:
Output:
multiplication of 10 and 5 is 2
The statements:
The difference between the above two statements is that the first statement will create an array of 9 elements will automatically add the null pointer and the size of array 'a' will be 9.
But the second statement will create a pointer variable. We cannot perform any array operation on this pointer variable as it will be stored in read-only mode.
Example:
Output:
9 Cnmputer
Example 2
Data Breakpoint is a strong feature available for C++, which allow us to stop the execution when the value stored at a particular memory location changes. Data breakpoints can be used to solve the memory corruption issue.
The new and malloc() both are used for dynamic memory allocation. But there are various differences between new and malloc, which are given below,
Following are the basic differences between the process and the thread:
C++ provides shorthand property, which enables a programmer to use the assignment operator in a shorter way.
Example:
x=x+5; can be written as x+=5 using shorthand
x=x-10; can be written as x-=10;
Function prototype declaration: function prototype declaration statement gives the following information about the function:
Example:
Where add is the name of a function, and a, b and c are the passed arguments.
Function definition: The function definition is the actual source code of the function. Function definition gives information that what that function actually does.
Example:
Syntax:
Example:
The volatile keyword is a qualifier which is used with the variables at the time of declaration.
It gives the information to the compiler that variable's value can be changed at any instance of time even it does not appear to be modified.
Volatile keyword is used to declare a variable as a volatile variable. It can be used before the datatype or after the data type.
Syntax:
Pointers are the variables which stores address of another variable in C and C++.
Following are the main reasons that why we use pointers in C and C++:
In C++ language, we can pass an argument to a function by reference or by pointer, both are the correct approaches and precisely same, but the basic differences between both are:
In C, calloc() and malloc() are the library functions, and both are used for dynamic memory allocation. Which means it allocates the memory at run-time as per requirement from the heap section.
malloc(): malloc() function is a library function which allocates a single block of requested memory and return a pointer void to it, which can be cast to any return type. It returns the null value if sufficient memory is not available.
Syntax:
calloc(): calloc() function is also a library function which allocates the multiple blocks of memory of requested size. It initially initializes the memory to zero and returns NULL if memory is not sufficient.
Syntax:
The Virtual machine is a software program which behaves like a separate computer. It works same as the main computer and also capable of running applications and other programs. A virtual machine, called as a guest is created within the main machine called as host. There are two types of virtual machines depending upon their uses.
Synchronization is a process of performing two things simultaneously at the same time.
Synchronization is of two types:
Process synchronization: Process/thread synchronization is a mechanism which controls the access of shared resources between two concurrent threads. It ensures that two concurrent thread do not share the same resource at the same time. Synchronization deals with problems such as deadlock, starvation, busy waiting, etc.
Data Synchronization: Data synchronization is a technique which ensure the integrity of data between two devices. With the help of data synchronization, it keeps multiple copies of single data in different location. It includes file synchronization, journaling, Raid, etc.
Mutex:
Reader-writer problem:
In OS, a situation is called as Reader-writer problem for a particular shared data area which involves:
This problem mostly occurs in Concurrency or multithreading.
We can use void keyword for two purposes:
Function parameter: When we use void as function parameter, it means function does not accept any value.
Example:
Function Return type: When we use void as function return type, it means it will not return anything.
Example:
void keyword can also be used with the pointers which makes it more powerful as, when void is used with pointer it termed as generic type, which can hold address of any type.
An Exit controlled loop is a type of loop which first execute the instruction and then checks the condition. When we use exit controlled loop, then at least one time execution occurs even if the condition is false. The do-while loop is an example of exit controlled loop.
DNS server is a main part of DNS (Domain Name System) infrastructure. It is a computer server which stores and manages the database of IP addresses and their respective Hosts name.
DNS server is also called as name server, which is used to map the domain name to the corresponding IP address.
A single domain name can have multiple IP's that means IP addresses can vary with time.
TCP/IP model is termed as Transmission Control Protocol/Internet Protocol. TCP/IP model is a practical and concise version of the OSI model. Current network architecture depends on the TCP/IP model. It consists of mainly four layers:
1. Link Layer:
is responsible for the physical flow of data through the network. It consists of hardware devices such as optical fibre, coaxial cable, or twisted pair, etc. In this layer, data travels in the form of bits and frames.
The protocol used at this level is Ethernet, token ring, etc.
2. Internet Layer:
Internet layer is the Upper layer of the Link layer. This layer converts the data into data-packets, called as IP datagrams and send these datagrams across the host through the network. These datagrams consist of host and destination address, by which they are forwarded through the network.
The primary protocols used at this level are:
3. Transport Layer: This is the third layer of the TCP/IP model, which is responsible for the communication between the source host and destination host and error-free data transmission.
This layer consists of mainly two protocols:
TCP (Transmission Control Protocol): TCP is a reliable protocol for error-free communication between the source and destination host. It's a connection-oriented protocol.
UDP (User Datagram Protocol): This protocol is not reliable as compare to TCP protocol, we can use this protocol which does not require reliable communication. It is a connectionless protocol.
4. Application layer: This is the top layer of the TCP/IP model. It describes the application protocol and provides node-to-node communication.
This layer contains various higher level protocols which are:
The Stack is a particular area of RAM, just like as Heap. But stack is used to store local variables, parameters and return values used inside a function and stack stores and deallocates memory automatically.
When we call a function, stack performs following steps:
When we call a function, stack adds a stack frame which consists space for actual parameters, local variables, return address, etc. This stack frame lives in active frame till the time function is being called, and once execution finishes then stack remove that stack frame from the stack.
Stack Overflow: As we know that stack deallocated the memory and free up space after execution but still there is a condition when complete stack space used, and there is no more space to save the variables, so this is called stack overflow. It occurs because the space size of the stack is also limited in size, and at the time of execution if we allocate more memory than available memory than overflow occurred and the program got crashed. Some example for stack overflow are:
int * const p: By declaring a pointer in such a way that means we are declaring point variable p as constant, which cannot be changed. We cannot change the address its holding, or it cannot point to other variables. If we try to change the address of p, then it will give a compile time error.
const int * const p: By declaring a pointer in such a way means, we cannot change the address of the pointer as we as we cannot change the address at that address. If we try to do it, then it will generate a compile time error.
C++ provides the six default member functions which are given below:
To implement a dictionary, which type of data structure should be used depends on what we required, there are some following data structure which can be used for implementation of the dictionary.
Hash-table: If we want a simple dictionary with no option for the prefix, or nearest neighbour search then we can use Hashing or Hashtable for the dictionary.
Trie: It can be a good option if we want to add prefix and fast lookup. But, it takes more space than other data structures.
Ternary Search Tree: If we want all the qualities like trie but do not want to give the more space then we can use ternary search tree.
BK-tree: BK-tree is one of the best data structure if we want specifications like spell checker, find the similar word, etc.
We can find the unique word from a string by using HashMap, Set and Regex.
Candidate can also be asked for questions like:
This round is a challenging round as in this round the manager ask the questions based on your projects, so candidate must have in-depth knowledge about their project which they have done and some problematic puzzles which candidates needs to solve.
Tower of Hanoi is a very popular mathematics puzzle. In this puzzle, we are given three disk and three rods. Disks are arranged in the first rod like a stack, in ascending order. We need to transfer the disk from the first rod to third in the same order.
There are some rules as well:
Algorithm:
Let's suppose there are thee towers Beg, Aux, and Dest, and there are two disks where n disk is larger disk and n-1 is smaller one.
Start
Step 1: shift n-1 disk from tower Beg to Aux
Step 2: shift n disk from Beg to End
Step 3: shift disk n-1 form tower Aux to C.
Output:
Loop is occurred Linked List after removing loop 40 15 12 10 4
We can design an excel spreadsheets by using:
Memory protection is a mechanism which controls the unauthorized access of memory in the computer. Memory protection prevents the unallocated memory access by a process. Memory address is first checked before used by a process, to see whether it is allocated address or not.
There are two registers LBR and UBR are used to implement memory protection.
Virtual Memory is memory management technique of Operating System. Virtual memory is an extra space provided to a program when a main memory does not have the sufficient space to execute a code. It temporarily transfers data from RAM to disk storage, which uses inactive memory of hard disk, which is termed as Virtual Memory.
Suppose the linked list is sorted in ascending order then following is the algorithm for the same. Let the input node is 13 and let assign as n
Suppose Input linked list is:
1) If given linked list is empty then assign the node as head and return it.
2) If value of the node n is less than value of head node, then insert the node at start and assign it as head.
3) In a loop, search the appropriate node after which the input node is to be inserted. To search the appropriate node start from head, keep moving until you reach a node x(Let?s suppose 15)whose value is greater than the input node. The node before the x will be the appropriate node(11).
4) Insert the node(13) after the appropriate node(11) found in step 3.
After insertion:
Output:
Pair element found at position 0 and 4 Pair element found at position 1 and 7 Pair element found at position 2 and 5
HR round will be the last round for the complete recruitment process. This will be an easy round as compare to all above rounds as in this round, interviewer just wants to interact with the candidate. In this round, interviewer will judge the candidate on the basis of communication skills and soft skills.
This question is a very common question and asked mostly in most of the interviews. Answer of this question should be in the following way.
Good morning/afternoon/evening, sir/mam, it's my pleasure to have this opportunity for introducing myself. My name is Anamika Singh, and I belong to Udaipur. I have completed my B. Tech in CSE branch from Noida Institute of Engineering & technology, and I did my schooling from Saint John Inter College.
If I talk about my family member, so there are 5 members in my family including me. My father is a Government teacher, my mother is a housewife, and I have a younger brother who has completed his higher secondary last month.
I am having a good knowledge of programming languages such as C, C++, and Java. I have also created some college-based project on these technologies.
I am very Confident, smart and adaptive person. I can adjust myself in any environment and can deal with any type of situation.
My hobbies are playing badminton, dancing, painting, and internet surfing.
Thank you.
The interviewer asks this question to check if you are really interested to join or what is your motivation to join this company. You should answer this question in the following way:
Sir, Adobe is one of the great companies, which spread over world-wide. Everyone would love to work with Adobe. It's a great place to work. And my technical skills match with the company' requirement. I can show my technical skills to contribute for company's growth as well as my career growth.
By this question, interviewer wants to check, that how deep you know about your skills and how see yourself differently from others. Answer for this should be given as:
I have a good theoretical and practical knowledge of C, C++, Java, and Data structure. I have created various projects on these technologies. I can solve coding puzzles very efficiently in less time than others.
By this question, the interviewer wants to check your passion. Is this company is your dream company, or you want to join this company as you don't have any other options. So candidate should answer this question carefully.
To answer this question candidate should never use any other company's name while they can choose the characteristics of the company.
Example:
My dream job is one, which works on innovation and which provides product to the world which can change the one's lifestyle. And I was excited about this job. As per my knowledge, Adobe is a company which beliefs on the innovation and creativity.
This is a general and relaxing question as you don't need to think so much to answer this. To answer this question, you need to tell how many members do you have, and what they do.
Example:
There are five members in my family including me. My father Mr. Jay Prakash is a Businessman, having a business of Electronics equipment. My mother Mrs. Sunita is a great homemaker. I have two Elder brothers, who are working in HCL technologies as software developers.
Example:
After ten years, I want to see myself on a respective position in this company where I can handle big responsibilities of the company. I want to learn on every level which will enhance my skills, and it will be helpful for the company growth.
This is the same question as "why should I hire you," Answer should be given as question number 3.
Yes, I am a goal-oriented person, I have some key goal of life which I want to achieve as early as I can. I regularly update my goal list that till the time what I Have achieved, and what is remaining yet.
My greatest strength is my self-motivated nature. With the help of this, I can face any challenge.
My greatest weakness is my emotional nature. I get susceptible when I see someone in any adverse condition.
Fri, 16 Jun 2023
Fri, 16 Jun 2023
Fri, 16 Jun 2023
Write a public review