Placement Experience - Sachin Agarwal (Adobe)




The Placement process is one of the key highlights of college life, and planning in the right direction is indispensable. One thing I'll emphasize is getting started early. And if you think it is too late to start preparation, don't freak out but start ASAP. This will give you an advantage because placements are basically a competition at the end of the day.


My Preparation Strategy

Coming on to my experience with this process, I will begin by emphasizing on the placement preparation relevant to the sectors which I was targeting. Before I began I was pretty clear on which companies I’d be targeting, and so figuring out my preparation goals was fairly straight forward. I was majorly focusing on practicing my coding skills, brushing up my CS core subjects and solving logic puzzles alongside the generic interview preparation including HR and resume preparation. So in the following points, I’ll go over my preparation (and some tips) briefly: 

Resume

I started building my resume from the very first week of July. I took reviews from seniors/batchmates/friends. Taking help and continuously evaluating it made significant changes in my final draft. The earlier you are, the more time you get to refine your resume. Remember the resume is your first impression. Make sure you do not lie on your resume and only write things you will be able to defend during the interview and stress on the impact you created in your projects/internships. There will be a negative impact if you are not able to answer the questions asked by the interviewer related to your resume. Resume format is provided by TPO so you do not need to worry about that.

Aptitude

Although I personally never practiced for it. But if you want to practice it there are a lot of sites like - GFG, Indiabix etc. Normally I have seen that in an internship test there are more questions related to aptitude as compared to placement test. The reason is, till 2nd year only limited core CS courses are taught. So there is no choice left to judge the candidates on the basis of aptitude as well. Practicing daily will make this part a piece of cake.

Coding

To give you a brief, from 2nd-year itself I was involved very much in coding. I was regularly practicing coding on sites like Codechef, HackerEarth, Hackerrank, Codeforces. I have spent a lot of time on the basic stuff. I was a regular student of CC classes(Coding classes taken by our seniors). In starting I practiced all questions properly which were given by our seniors. I discussed all my doubts with my friends, seniors, participated in the discussions. Although questions asked in companies are easier and different from these ones present in the sites mentioned above. However, by practicing on these sites will teach you to identify the crux part of the problem. I should suggest you to give regular contests on these sites. Regularly participating in contests will teach you time management and pressure handling.


Now, coming to my summer's preparation strategy for placements. Initially, I was nervous about placements as I could not manage to get a good internship in 3rd year. But with constant moral support of seniors and friends, I managed to keep myself calm during the preparation. The time had came to sit and start preparing, keeping in mind about companies. Summer vacation is precious time for preparation for internship/placement. As soon as I reached home I made my daily schedule. I jotted down all topics on paper which wanted to cover. Keeping in mind about the topics, I started coding on Interview bit, Leetcode, GeeksforGeeks. I did almost all the important questions (which I will share with you ) topic-wise, company wise (which I was targeting) and gave regular contests on Codeforces. Make sure you cover all the standard algorithms. Many questions are repeated from the previous years or from the company visiting some other campuses. So make sure you solve previous questions thoroughly before going for the tests. GeeksforGeeks has always been my go-to website for theory/solutions of specific questions largely because of its detailed description of every topic.

Theory Part (CS core subjects)

I dedicated regularly one-two hours to revise all theory concepts. Topics which I gave attention are as follows:
  1. Java (Very Important)
  2. Operating Systems
  3. Networking
  4. DBMS
  5. Language-Specific preparation (which you mention, you have command, in your resume)
  6. Query related problems (MySql)

TIP: If you have interests in other technologies, which you prefer to mention in your resume, prepare for them as well. 

I saw all previously asked questions regarding these topics which are available on GeeksforGeeks.

Puzzles

Puzzles are often asked in interviews. I always planned for puzzles in my schedule. I would advise to take puzzles seriously. So, regularly practice them. The platform I followed for the prep was GeeksforGeeks. I have read all the puzzles given on GFG.

Basic Preparations

For HR interview preparation, I made an HR document with the personalized answers to a variety of HR questions. Along with this, the communication part is also very important. So for those who lack in communication skills, I would suggest them to practice for it. The method, for improving communication and building confidence, which I liked most was to talk myself in front of the mirror. I used to ask myself a random question and tried to answer that. You can also talk to your siblings or make a call to a friend and talk to him in English. Practicing this will help you in gaining confidence.

Now I will share with you my interview experience of Adobe. By that you will get some real idea of company questions and their interview processes.

My Interview Experience

Round 1 (Online Coding)

There were 3 coding questions in 1 hour and 30 minutes. Question level was easy and easy-medium.
  1. Given a bag of capacity 1 kg to 3 kg. The bag can contain a maximum of two items at a time and the total weight of items in the bag should be between 1 kg to 3 kg (because of the capacity of the bag). There is an array of items which is denoting the weight of the item. ith index  item weight is arr[i].  Given that every item weight is between 1 kg to 3 kg. You have to move all items from source to destination. Find out the minimum number of moves required to move all items.
    1<=n(total number of items)<=10^5
    1<=arr[i]<=3
    (Hint:- Sort the array and apply the two-pointer approach, in which the first pointer is denoting the first index of the array (minimum weight) and the second pointer is denoting the last index of the array (maximum weight)).
  2. Given an array with +ve and -ve values. Bob has to traverse the whole array with an initial value of x. If the value is positive then Bob adds this value in x and if the value is negative then subtract value from x. So it may be possible that at a particular index of the array, Bob has a value of x <=0. So you have to help Bob to find out the minimum value of x such that x always remain >=1 for every index of the array.
    1<=n<=10^5
    1<=arr[i]<=10^5
    (Hint: Find out what can be minimum -ve value possible for x that would be the answer.)
  3. https://www.geeksforgeeks.org/minimize-the-maximum-difference-between-the-heights/

I solved all three question so I was pretty confident to get a call for the interview and after one hour I was called for the interview.

Round 2: Interview


This round was totally based on coding questions. In this, the interviewer was only asking coding questions from every student.

  1. https://www.geeksforgeeks.org/search-in-row-wise-and-column-wise-sorted-matrix/
  2. https://www.geeksforgeeks.org/find-the-largest-subtree-in-a-tree-that-is-also-a-bst/
    (slight variation is that print sum of all nodes of maximum Binary Search Tree)
  3. https://www.geeksforgeeks.org/maximize-sum-selected-numbers-performing-following-operation/

The interviewer was very friendly and he gave me a hint to solve 3rd question and finally, I solved it.
Soon, I was called for the 3rd round 😊

Round 3: Interview

Interviewer gave a glance at my resume and asked about my projects (briefly). Then he started to ask Operating System questions.

  • What are process and thread? Difference between them. Real-life example of them
  •  Assume you are given four threads which take 1 sec to execute completely and given is 1 CPU with one core processor. How much time will the processor take to execute all threads? 
  • Now, what will be the effect on the execution of threads of different priority or the same priority if all threads come at the same time?
  •  Now if the single-core processor is changed to a dual-core processor, quad-core processor then what will be the time of executing all threads. 
  • Now change 1 CPU to 2 CPU, 4 CPU with a single-core, dual-core, quad-core, octa-core processors, now what will be the time to execute all threads.
  • What is Deadlock?
  • One puzzle (Link to puzzle)

I give all answers with patience. I was not sure about my answers. But hopefully, I was called for the 4th round.

Round 4: Interview

The Interviewer asked me to introduce myself. He asked about the first project which was written in my resume. A thorough discussion went on for about 30-35 minutes over the project. Questions were like – 
  • How to implement a particular feature in it.
  • If I changed it what will effect on project or on output.
He asked me whether I knew object-oriented programming or not. I said yes, but he did not ask any questions over it (God knows their mind). 
He then moved to DBMS which was written in my resume.  He Asked about :
  • Normalization and why it is used?
  • Types of normal forms and details about every normal form. 
  • How to resolve if any table does not follow particular normal from.
  • Design a database schema of college time table, which has attributes like teachers, students, classrooms, courses, every year (from 1st year to final year ). How to normalize it? How the tables will look like and how will they be related to one another?

He finally ended with asking if I have any questions for him.

Then I was called for HR round. If you are called for HR round then you can be 90% sure about your selection but still, there is a risk of 10%.

Round 5: (HR round)

  • Introduce yourself, talk about your family background
  • Name of your dream company and why?
  • Names of adobe products in the market.
  • A Brief discussion about my project.
  • What do you want to change in Adobe photoshop?
  • What do you expect from Adobe?
  • Why did you not do an internship?
  • Why do you want to join Adobe?
  • What types of companies you would prefer to work?
  • Strengths and weakness.
  • Asked CEO name of Adobe (I did not remember it at that time :p ).

Finally, he gave me a chance to ask any question from my side.

We were asked to leave and wait for results. I was pretty confident for selection but you should always be ready for every situation. On the next day, I received a call from TPR that I was finally selected in Adobe. I explained you everything but I could not explain the happiness that I felt at that time in words. Finally I got a job. My first job.

I would like to stress on some miscellaneous things and key takeaways from my experience: 

You should keep going no matter what happens because there are many stereotypes related to “Day xx” and trust me, it does not matter which day you get placed, be it in terms of salary or the profile. You just have to be patient because the entire process can get exhausting and scary sometimes. You might face many rejections but trust the process. Almost everyone who bothers to put in effort manages something good in the end. 

Have a plan but don’t get too attached to it because placements are very luck-based and things mostly won’t go according to the plan. Go with the flow, keep your plan flexible and be prepared for the worst-case scenario but do hope for the best.

Please help each other and be empathetic. 

So, this was my experience. Hope you would like it. If you have any queries regarding this, feel free to ask me anytime. Here is my mail id - sachinagarwal793@gmail.com

Comments

Post a Comment