Placement Bot.

A One Stop Guide for Placements.

Menu

Software Developer

Less than 1 month

  1. If you have prior knowledge about Coding, DBMS, OS and CN : You can refer to “CS Background: “Software Developer” or “Data Science/ML” role.
  2. In this section we will learn to code just enough to clear online tests as there is a shortage of time. Coding is essential if you want to target software developer roles and it IS POSSIBLE, given that your branch is eligible for sitting for the company
  • Choose one language, recommended C++ (or python) unless you already know some language
  • Learn the basics syntax from any website wherever you feel comfortable. Recommended:https://www.geeksforgeeks.org/c-plus-plus/
  • Imp topics to start with: Arrays and strings, functions,Vectors (Highly recommended to learn syntax and try questions from interviewbit, 1D and 2D, if you know arrays, vectors is easy), In-built functions of .sort(), .begin(), .end(). (This will help in online tests),
  • Solve easiest problems first. If you don't understand, always see the solution. But should spend time on attempting to solve completely and always see solution for better time complexity 
  • Important to break 1 month into 3 sets -
    • 0- 10 days: Focus only on improving coding skills.
    • 10 -20 days: Time bound problem solving
    • 20 -30 days: Revise theory and revisit problematic questions.
  • Process: Learn a topic → See syntax and one example question → try a new question from the same topic → Spend 5 minutes understanding the question → Try it on your own for at least 15-20mins → If not able to solve see solution (due to time constraint) -> understand the solution and try to reduce the time each concurrent week

Recommended: On the weekends, try solving questions from a mixed question bank for example Top 100 liked problems on Leetcode under the Easy tag. This will improve your capability to realise which data structure/ algorithm to apply. If you haven’t done that data structure yet it’s completely fine, but if you get stuck and the solution is a part of the bucket that you've already solved then try and understand the pattern that you missed identifying. And if you do solve it then good it means you're able to identify patterns

  1. Make GFG your bible. For example, if you are stuck at some question in Interview Bit, instead of revealing a solution in the website, go on GFG and only look for the part of the solution you are stuck with. Don’t look at code directly, try reading the explanation and retry. Don’t copy paste, if you are that tempted and stuck, just reveal the solution
  1. Also set targets for completion of the basics. Don’t take more than 12-15days to master the basics. Solve more questions, you’ll get better with practice.
  2. Recommended: Interviewbit: Complete till and including Level 3 thoroughly (OR Leetcode Top Interview Questions Easy and Medium are enough according to time OR corresponding topics from other platforms).(Continue practicing even during the placement process) Do one question from each bucket in InterviewBit, unless you see a staple question, go for it..
  3. Imp Theory topics for Online Tests: 
  • Theory of Operating System (Scheduling algorithms,Notes for OS GfG) This will take 2 days to make and it is completely theoretical and scoring
  • DBMS (ACID Properties, RDBMS, Diff bw rdbms and dbms, Types of Joins with examples)DBMS by Sanchit Jain (imp for interviews also) - Do not waste time on everything, just do important topics mentioned and do FAQs for DBMS from the internet
  • Computer Networks: OSI Model: Different layers , LAN, WAN, MAN, IP Addresses, Other FAQs from the internet
  1. Youtube solutions for questions you can’t understand that well
  2. (If you have time)180 SDE Problems - byTakeUForward (Do min. 2 from each Day)
  3. Imp Topics for Interviews: 
  • Must Do coding Questions: Imp: Arrays, Stacks, Queues, Implementation of stacks and queues using arrays : These are most important topics, rest may be attempted according to time left.
  • DBMS Theory: Diff b/w RDBMS and DBMS, ACID Properties (DBMS by Sanchit Jain)
  • 4 pillars/concepts of OOPs: Data abstraction, Inheritance, Polymorphism, Encapsulation, you should know what they mean and how are they different from each other, examples for each in real world scenario 
  • Have some unique examples handy for all 4 pillars. Everybody gives the same Person-Employee-Manager example. Be ready to write OOP code for a Bank Management System, this is the most asked one. Interviewer will look for the following:
    • Are you representing entities as classes, or just using primitive data types. For example, for representing money, are you using `double` or have you created a Money class.
    • Don't start writing getter and setter for your classes. That is not a real thing.
  • OS Scheduling Algorithms: Revise Theory
  • Difference between C++ , Python, Java (whatever is more prominent on your CV, mention ONLY what you REALLY know)
  • Fast and Slow pointers questions (If time permits, watch myCodeSchool pointers in C videos)
  • Constructor overloading in C++, friend function, inheritance with examples, #define
  • Explain Class and Object with sample code
  • Explain inheritance with sample code, friend functions, constructor overloading)
  • Project based questions (based on resume) 3 words:DO NOT LIE
  • During the interview, think out loud so that the recruiter gets to know your thought process. If you know the solution don't jump right into answering it. Start with brute-force approach, then see corner cases and finally present the best time and space complexity solution you know
  1. (Advanced level): For top companies: It is important to know DFS (both recursion and using stack) and BFS using queue. Apply this with reachability problems and/or shortest distance variants. Bonus if you learn Dijkstra (most definitely won’t be asked during screening test). 
  2. (Advanced Level): Learn basic DP problems such as coin change, staircase problem, matrix chain multiplication. Initial screening tests of the early companies had simple DP/Graph problems which if you crack, guarantees you to get shortlisted. Points 10 and 11 will take time to master and is an added plus point if you want to get into the top companies. Attempt solving after having a strong grasp of basics.
  3. Aptitude onIndiaBix, GfG and puzzles from InterviewBit are good. Keep a comfortable time range for the first day, such as 20 questions in 40 mins. Try to reduce the time taken after every 4 tests. The aptitude questions should also be a mixed bag, after completing the time bound tests, look at the questions you got wrong or found difficult, see which bucket they fall into and solve at least 10 different varieties of questions from that bucket (non time bound) till you are comfortable with that type.
  4. DO NOT NEGLECT APTITUDE! Sometimes it can make the difference!
  5. (ONLY IF YOU HAVE TIME): Important OS Topics: Basic definition and Job scheduling, CPU scheduling, Swapping, Process and PCB, Job queues, Short term/ medium/ long term scheduler, Context switch, IPC (shared memory and message passing), Synchronization, Scheduling Algorithms, multi threading and multicore programming, Synchronization and related algos (including bounded buffer, reader writer, dining philosopher and monitors), Deadlocks (v imp), deadlock conditions, Deadlock detection, Semaphores (v.v. imp), Memory management Strategies,Virtual memory and thrashing (very high frequency question in interviews). 

Other topics: BIOS, Multicore, Dual mode (Read), Storage systems, Prevention, avoidance, recovery of deadlocks, Banker’s algorithm(only read) 

(If you don’t have time, Refer to Notes for OS GfG. (Scheduling algorithms is easy and very scoring)

HR Round:

This is a very important round as it decides if you cross the finishing line or not.

Some important points:

  1. Have answers ready to general questions. Refer to “interview tips” category of the chatbot
  2. Usually HRs will look out for red flags in your personality, motivation, enthusiasm too
  1. Be confident and be prepared for any kind of questions..

IF YOU ARE DONE WITH ALL TOPICS HERE :D , REFER TO “SOFTWARE DEVELOPER” ROLE ON “CS BACKGROUND” OPTION ON THE BOT

AND COMPLETE THE EXTRA TOPICS :D


Data Science / Machine Learning

Less than 1 month

  1. You don’t need todo something “extra”. The above mentioned guidelines will be applicable as is. The interviews for DS/ML companies are strongly Resume focussed. So knowing your resume and projects in and out is a must.
  2. If you're targeting a particular company just do a Google search of - {Company name} in analytics or AI. Then you can frame your resume by doing work that will make your resume more appealing to the company .
  3. Sometimes the interviewer throws a real world problem involving a ML model at the interviewee. Be prepared for such questions, they are fairly easy to answer if you have practical experience training ML models and basic intuition regarding working of the different components. 
  4. You should be knowing Machine Learning algorithms basics: Linear Regression, Logistic Regression, Decision Trees, Random Forest, SVM and so on. 
  5. If you have worked on some projects related to Data Science/ML be thorough with it and practice explaining it for interviews.
  6. IFYOU HAVE a Data Science/ML Projects in your resume take note of guidelines mentioned below:
  • Have clarity on the motivation behind using a particular algorithm for your models. You should know why you used a particular model. Example: Why did you use resnet and not inception net?
  • In case of a neural network architecture , learn how the data drives the number of nodes, activation and hidden layers and not vice versa , can establish that if you're able to create graphical visualisations of your out and in metric ( Explaining your projects or any solution in such a way goes a long way in establishing your understanding of the topic for the interviewer).
  • So when describing a project, make sure to highlight each of the following points: (1 or 2 sentences for each point should be enough, ask interviewer if you should explain that part in detail, if they give the green signal then elaborate)
    • 1. What was the motivation?
    • 2. What were you trying to achieve in terms of performance?
    • 3. What all experimentations did you carry out ?
    • 4. What worked and what didn't and why?
    • 5. What problems did you face, how did you overcome these challenges?
    • 6. And finally what was the ultimate solution you arrived at
    • 7. For ML projects it is always important to give numbers such as value of performance metrics(example: xyz model gave an accuracy of y% etc) along with the practical utility of a project or the motivation behind it under the project description.
  1. Aptitude: Follow point 12 of Software Dev.
  2. Consulting firms do mostly analytics projects , tech or product based companies like IBM , Schneider , Phillips etc are working on creating their own machine learning models , choose accordingly .

Other Links -towardsdatascience.com ,medium.com, 10 basic ML interview-questions for concepts , analyticsvidhya and kaggle for data sets and hackathons