Note: This blog is principally meant for students of DA-IICT, Gandhinagar for preparation for their internship drive.
However, the methods and facts apply to most other colleges too
and other students are equally welcome to go through this.
However, the methods and facts apply to most other colleges too
and other students are equally welcome to go through this.
Q1. What have I done to be qualified enough to write this?
A1. I am Dushyant, BTech Third Year, DA-IICT, Gandhinagar.
Most of the readers would have run into me during some sort of activity/event in the college,
be it IEEE based, Dance, or Synapse or MUN. I did manage to get a Summer Internship offer
at Deutsche Bank, though, and have worked with a few startups, too.
But I have failed at many more attempts, and I will do my
utmost to ensure that you don’t face the difficulties that I did.
Most of the readers would have run into me during some sort of activity/event in the college,
be it IEEE based, Dance, or Synapse or MUN. I did manage to get a Summer Internship offer
at Deutsche Bank, though, and have worked with a few startups, too.
But I have failed at many more attempts, and I will do my
utmost to ensure that you don’t face the difficulties that I did.
Q2. Why am I writing this?
A2. The internship drive is one of the most challenging, mind numbing phases that
you will have to brave throughout your college life.
The grind starts April on, when seemingly the entire batch fights for the coveted 40-60 seats.
You will face a vast plethora of emotional imbalances during this time, as your friends get internships,
people who you wouldn’t have tossed a coin with would get in and you won’t.
But you just have to keep your emotions under wraps and keep the grind on.
you will have to brave throughout your college life.
The grind starts April on, when seemingly the entire batch fights for the coveted 40-60 seats.
You will face a vast plethora of emotional imbalances during this time, as your friends get internships,
people who you wouldn’t have tossed a coin with would get in and you won’t.
But you just have to keep your emotions under wraps and keep the grind on.
Q3. Is this an Interview Experience?
A3. It is an interview experience, but not a conventional one you will see on
GeeksforGeeks saying how a student passed through a few rounds and ended up getting an offer.
I faced too many failures throughout the drive, and got even more experience, which is what
I want to share with you, so that you can get better equipped than I was.
GeeksforGeeks saying how a student passed through a few rounds and ended up getting an offer.
I faced too many failures throughout the drive, and got even more experience, which is what
I want to share with you, so that you can get better equipped than I was.
Q4. Why are we reading this now? We have a year to the internship drive……..
A4. Do you remember how much time you had given for JEE/GUJCET?
At least two years, to get into a coveted institute. Many of your seniors would tell you
that the two months before the internship drive(that is, May and June, 2020 for you) are when
you can grind extra. There are people who can turn the tables around within the two months time,
but that calls for immense dedication and a lot of luck. And not all of you are going to have that.
Those who have worked on Competitive Programming know that it takes time and patience to master.
If you believe you can develop that mindset in two months, you are welcome to try it out.
But for those who do not want to just rely on getting lucky, now is the time to start.
At least two years, to get into a coveted institute. Many of your seniors would tell you
that the two months before the internship drive(that is, May and June, 2020 for you) are when
you can grind extra. There are people who can turn the tables around within the two months time,
but that calls for immense dedication and a lot of luck. And not all of you are going to have that.
Those who have worked on Competitive Programming know that it takes time and patience to master.
If you believe you can develop that mindset in two months, you are welcome to try it out.
But for those who do not want to just rely on getting lucky, now is the time to start.
Q5. So, here is something important. How to go about it?
A5. Summer Internship interviews are ALL ABOUT COMPETITIVE CODING AND DSA.
The companies that come, come with a simple mentality, projects you do, be it Android or Web,
show that you have passion to go the extra mile to learn something. That is it.
You would hardly be expected to code in Android or HTML-CSS in the company where you’d intern.
Projects are looked at ONLY IN THE FINAL ROUND OF INTERVIEWS, NOT BEFORE.
So, it is wise to do just one or two projects, but do them so good and so thoroughly
that you can answer any question even remotely related to them.
Doing a project in Technology X, means that you are hereby giving the interviewer the right
to ask simply anything remotely related to X.
For instance, I had made a simple task management app in Android,
but was braced for questions for anywhere from inside the Android Documentation.
So, you must know exhaustively about your project before you mention it on your resume.
Step 1: Get started with Competitive Coding:
This is for those who are yet to venture out into the CP domain.
The best step to get started would be HackerEarth. Use CodeMonk to learn concepts through tutorials
and apply the concepts to problems.
Remember, there might be a lot of temptation to ask someone the solution or look for it online.
But you will learn and remember if you have worked the solution yourself.
The companies that come, come with a simple mentality, projects you do, be it Android or Web,
show that you have passion to go the extra mile to learn something. That is it.
You would hardly be expected to code in Android or HTML-CSS in the company where you’d intern.
Projects are looked at ONLY IN THE FINAL ROUND OF INTERVIEWS, NOT BEFORE.
So, it is wise to do just one or two projects, but do them so good and so thoroughly
that you can answer any question even remotely related to them.
Doing a project in Technology X, means that you are hereby giving the interviewer the right
to ask simply anything remotely related to X.
For instance, I had made a simple task management app in Android,
but was braced for questions for anywhere from inside the Android Documentation.
So, you must know exhaustively about your project before you mention it on your resume.
Step 1: Get started with Competitive Coding:
This is for those who are yet to venture out into the CP domain.
The best step to get started would be HackerEarth. Use CodeMonk to learn concepts through tutorials
and apply the concepts to problems.
Remember, there might be a lot of temptation to ask someone the solution or look for it online.
But you will learn and remember if you have worked the solution yourself.
Step 2: Register yourself on Codeforces and Codechef. Codechef has monthly challenges,
and you get a lot of time to work on them, hence they are a good place to clear your concepts.
Codeforces has coding contests once or twice a week, and follows a rating based system.
Codeforces contests are considered to be some of the best in the business, and newbies might
often find it depressing to be unable to solve even one of the 6-7 questions.
But the trick is to keep at it. A few days after the contest is over, tutorials and solutions are made
available for some problems.
YOU MUST GO THROUGH THE SOLUTIONS OF THE PROBLEMS YOU COULDN’T SOLVE,
so that you can learn new concepts, AND THOSE YOU COULD, so that you can learn of
new and more efficient approaches to solving a problem.
and you get a lot of time to work on them, hence they are a good place to clear your concepts.
Codeforces has coding contests once or twice a week, and follows a rating based system.
Codeforces contests are considered to be some of the best in the business, and newbies might
often find it depressing to be unable to solve even one of the 6-7 questions.
But the trick is to keep at it. A few days after the contest is over, tutorials and solutions are made
available for some problems.
YOU MUST GO THROUGH THE SOLUTIONS OF THE PROBLEMS YOU COULDN’T SOLVE,
so that you can learn new concepts, AND THOSE YOU COULD, so that you can learn of
new and more efficient approaches to solving a problem.
HackerEarth and Codeforces/Codechef are meant to go hand in hand,
simultaneously and regularly, only breaking for exams.
simultaneously and regularly, only breaking for exams.
Step 3: GeeksforGeeks.
GeeksforGeeks must be a personal favorite of a lot of you by now to get quick answers
to whatever question you look at. I have interned as Technical Content Writer at GeeksforGeeks,
and trust me, blindly looking at the solution is NOT THE CORRECT WAY.
The problems you will see in coding interviews will definitely be something totally alien
to what you have studied so far.
So unless you are CRYSTAL CLEAR about approaches to solve a problem,
you are a case in deep trouble. GeeksforGeeks should be referred to only when you have
developed a solution for a problem and wish to check if it can be optimised.
GeeksforGeeks must be a personal favorite of a lot of you by now to get quick answers
to whatever question you look at. I have interned as Technical Content Writer at GeeksforGeeks,
and trust me, blindly looking at the solution is NOT THE CORRECT WAY.
The problems you will see in coding interviews will definitely be something totally alien
to what you have studied so far.
So unless you are CRYSTAL CLEAR about approaches to solve a problem,
you are a case in deep trouble. GeeksforGeeks should be referred to only when you have
developed a solution for a problem and wish to check if it can be optimised.
Step 4: InterviewBit
InterviewBit is an exhaustive resource of 500 problems covering almost all important topics and
standard questions sorted by company and category. Whilst most seniors might suggest you
to start InterviewBit in May so that the questions remain fresh in your mind,
do note that it has 500 problems.
The trick is not to memorise them , but understand the particular problem, the particular Data Structure
or Algorithm used, and study every concept associated with that particular problem.
This would mean close to 2-3 hours per problem, and you are good to crack any question similar
to that problem. 500*3=1500 hours. Take a call accordingly.
InterviewBit is an exhaustive resource of 500 problems covering almost all important topics and
standard questions sorted by company and category. Whilst most seniors might suggest you
to start InterviewBit in May so that the questions remain fresh in your mind,
do note that it has 500 problems.
The trick is not to memorise them , but understand the particular problem, the particular Data Structure
or Algorithm used, and study every concept associated with that particular problem.
This would mean close to 2-3 hours per problem, and you are good to crack any question similar
to that problem. 500*3=1500 hours. Take a call accordingly.
Q6. Pointers don’t really matter, do they?
A6. We had about 8 - 9 companies for SI this year, and only 2- 3 of them had pointer criteria in the
range of 6-7. Doesn’t sound that formidable, does it? To the naked eye, it might seem like it wouldn’t
be that difficult. But during the final round, when the company is supposed to select one out of three
candidates who performed equally well in interviews, pointer is given preference.
Also, some companies might not declare pointer criteria upfront, but students with a low CPI
are somehow absent from further rounds. A pointer of 7.5+, preferably 8+, would do good for
FinTech companies like Goldman Sachs, Deutsche Bank, Morgan Stanley.
Amazon and Sprinklr are more or less uncaring about pointers. Microsoft does consider pointer in
the end, and in our case, most students who got selected had CPI 8.8+.
range of 6-7. Doesn’t sound that formidable, does it? To the naked eye, it might seem like it wouldn’t
be that difficult. But during the final round, when the company is supposed to select one out of three
candidates who performed equally well in interviews, pointer is given preference.
Also, some companies might not declare pointer criteria upfront, but students with a low CPI
are somehow absent from further rounds. A pointer of 7.5+, preferably 8+, would do good for
FinTech companies like Goldman Sachs, Deutsche Bank, Morgan Stanley.
Amazon and Sprinklr are more or less uncaring about pointers. Microsoft does consider pointer in
the end, and in our case, most students who got selected had CPI 8.8+.
Most seniors would have told you that the third semester is difficult, and so, keep an eye on the CPI.
Some general points to be kept in mind:
- Make a habit of pen-paper coding, that is, writing and dry-running your code on paper with a sample test case, before coding it on the machine. In the interview, it is the pen paper coding which will validify your strengths.
- Keep reading up on OOPS concepts(C++/Java) from GeeksforGeeks or Balaguruswamy’s book, regularly, so that you are not overloaded in the end. In depth OOPS questions are asked, both as MCQs in the Coding round and the interviews.
- Programming Languages you should know: Either C++ or Java. Only. No Python. Even if you use Python for ML or such like, do not use Python for Competitive Coding. Python is a slow language and is liable to give TLE when most C++/Java code with the same logic can pass. Secondly, most of the companies use absurd platforms for coding tests which do not support any language other than C, C++, Java, for eg. Amazon, Morgan Stanley. So, C++ or Java is a must.
- I will make a separate document or append info about interview experience later. But you have to be prepared for not working computers, absurd platforms, and slow internet.
Some important YouTube links:
- BacktoBackSWE : This guy explains extremely intuitively. Must watch to clear your concepts on DP, BackTracking, Trees especially.
- Abdul Bari : He gives really good whiteboard explanation for standard problems. His time complexity approach is extremely useful.
Apologies for the improper formatting......I am working on it and will update the blog as soon as I am done with it.
ReplyDelete