Campus Placements- SDE
With placement season just around the corner, many final year students might be confused about getting a start or assessing their preparation level. Last year, I was in the same position trying to prepare for SDE profile.
Given the variety and size of topics to be covered, it can become a daunting process to decide what to practice and from where to learn. I tried to put together some resources which I found useful during my preparation so that you get an idea of what is expected from you and you can move ahead in a slightly planned way.
Resources
Interviewbit
- Do Graphs, Heaps and maps from other platforms also. Quite basic here
Geeksforgeeks
- Try medium and hard level questions from here
- Test cases are weak
- Complete Practice Track (on loop xD) https://practice.geeksforgeeks.org/home/
- DP + Graph ***
Leetcode
- Try Easy and Medium level question from here
- After you are completed with all the topics, do random questions using Pick One feature
HackerEarth
- Good for understanding graphs
https://www.geeksforgeeks.org/top-20-dynamic-programming-interview-questions (Look for similar links for other topics in gfg)
https://www.geeksforgeeks.org/must-do-coding-questions-for-companies-like-amazon-microsoft-adobe/
For Interview prep:
OS:
https://www.studytonight.com/operating-system (Basic but sufficient for interviews)
https://www.geeksforgeeks.org/operating-systems
knowledge gate OS series — youtube
DBMS:
https://www.studytonight.com/dbms/ (For theory)
https://www.hackerrank.com/domains/sql (For questions. Complete this entire track few days before your interview)
OOPS: Very important for interviews
https://www.geeksforgeeks.org/object-oriented-programming-in-cpp/ (Complete Source )
https://www.tutorialspoint.com/cplusplus/cpp_interview_questions.htm
https://www.geeksforgeeks.org/quiz-corner-gq/#Operating%20Systems%20Mock%20Tests C++ programming mock tests
https://www.studytonight.com/cpp/cpp-and-oops-concepts.php
Networking:
Only if you have relevant projects in your CV or extra time left
https://www.geeksforgeeks.org/computer-network-tutorials/ (Very large, Do topics related to your project only )
Important Topics / Commonly Asked: OSI Model, TCP/IP and other protocols like SMTP, UDP and their uses
https://www.geeksforgeeks.org/commonly-asked-computer-networks-interview-questions-set-1/ (Take help from here to see relevant topics)
https://www.geeksforgeeks.org/computer-networks-set-1/ (For Practice)
System Design:
ONLY if you have completed everything else.
Very few companies touch this topic.
Preparation
Form coding groups among yourselves and compete in a positive way
Try to devote 12 hours per day. (This includes coding as well as discussions with your group)
Write complete codes, Don’t move on by just understanding or forming pseudocodes (There will be a lot of questions and you won’t be able to remember the approach for long otherwise)
Question banks of companies are quite repetitive and predictable. Keep yourself updated with the type of questions being asked by the same company in other IITs
Attempting Coding Tests
Common Platforms: HackerRank, HackerEarth, Interviewbit, Mettl, Cocubes (make sure you are acquainted with the interface)
Generally, 3–4 coding questions are asked in tests, Some companies ask 10–20 MCQs also
Make sure you have seen previous year questions of respective companies before you attend their test
Your schedule can get quite hectic so be prepared for that. Around 4–5 tests every day, which means you won’t get time to start any new topic. So make sure you are already done with all CODING topics before this phase
Make sure you have formed a decently optimized solution, otherwise last few test-cases won’t pass and they carry more weightage ( Focus more on time efficiency, memory efficiency doesn’t matter much in these platforms )
If nothing works, at least Hardcode xD
Save time, Use STL!!! (vector, list, priority queue, maps, set, multiset)
Interview time
Must have a script ready for everything in your CV. (Your intro, details of your projects, achievements, etc.)
Help your friends. Take Mocks, raise questions from their resume, quiz them on CS topics.
Practice writing neat codes on paper
CS topics will come in handy here (OOPS!!!)
Prioritize your company preferences (Very important in spot rounds)
More shortlists boost your confidence but don’t worry if you are not shortlisted, because most of the companies release their waitlists once they are here
Know a little about the companies you are shortlisted in
Additional resources and notes
https://www.seas.upenn.edu/~cit595/cit595s10/lectures/processvsthreads.pdfhttp://java-questions.com/ds-time-complexity.html
SYSTEM DESIGN https://www.youtube.com/watch?v=54cXxQyeCMQ
Infix to postfix all conversions
Process vs thread
Design pattern
Sorting Algos
Dijkstra, Union find, Bipartite graphs
Use Linked List to merge sort
OOPS https://www.tutorialspoint.com/cplusplus/cpp interviewquestions.htm
GIT
https://www.edureka.co/blog/interview-questions/git-interview-questions/
https://career.guru99.com/top-40-interview-questions-on-git/
http://rogerdudler.github.io/git-guide/
SQL https://intellipaat.com/blog/interview-question/mysql-interview-questions/
Tried to keep this as concise and to the point as possible. If you have any doubts, confusion, or suggestion, feel free to reach out here. Hope this makes your placement journey a little easy.
ALL THE BEST