Placement Experience and Preparation Strategy

Placement Experience and Preparation Strategy

Greetings, everyone! I'm Hariket Sukesh Kumar Sheth, a Computer Science student currently enrolled at the esteemed VIT Chennai. Today, I'm thrilled to share my journey through the so-called famous "The Placement season" – an adventure encompassing both on-campus and off-campus efforts. As you read along, I'll take you through my comprehensive preparation strategy, and provide insights into my interview experiences.

Data Structures and Algorithms Meme @backtobackswe - Imgflip


πŸ‘‰ Points to Address before we begin

Teens (FAQ)

  • Bro, what should I do if I have less CGPA. I see that higher CGPA people are preferred in my college !!!

    Answer: Definitely, in many colleges and companies, CGPA is considered because it's a simple way to compare candidates. However, when it comes to selecting resumes, it can be complicated due to the different styles people use. This might cause some talented candidates to be overlooked.

    In my opinion, CGPA is like an entrance ticket to an exam. It gets you into the exam, but it doesn't matter much afterward. Interviews rarely focus on CGPA. Just like having the entrance ticket doesn't determine if you'll excel in the exam, CGPA doesn't determine how well you perform in interviews. The key is to be well-prepared. So, when you get an opportunity, give it your all and shine to secure the job.

  • Bro, I am not getting anything on-campus, should I try off campus?

    Answer: Stay patient. Generally, on-campus offers hold a slight advantage over off-campus ones. Remember, this process might take time, so remain patient and excel in all phases. Believing you're well-prepared when you aren't is a mistake. Using "off-campus" as an excuse to evade hard work is incorrect. In reality, off-campus demands even more effort than on-campus. You need to find suitable openings, craft your profile, secure referrals, or apply directly, plus follow up on verifications. So, allocate your free time to this. Never solely rely on off-campus applications without thorough preparation.

  • Bro, how to prepare. I am very confused

    Answer: Absolutely, you should. I was in the same boat. There's a ton of online content out there, but be cautious of clickbait promising placements or internships. Don't fall for scams or quick fixes. Avoid switching too often; stick to one approach and trust it. Just because your friends are doing something doesn't mean you have to follow suit. In the end, everyone reaches the same goal, so your starting point doesn't matter much.

    There's a specific list of Data Structures and Algorithms. Pick one, learn the basics, solve problems – it's that simple! If you keep seeking advice from numerous people, you'll get various answers, and it might paralyze you from starting. The key is to begin! Don't waste your precious time.

  • Bro, I don't have enough content to put onto my Resume.

    Answer: If you find yourself with limited content for your resume, there are several effective strategies to consider. Exploring virtual internships can offer valuable experience to showcase. Applying for internships with startups can be more accessible and rewarding, building your resume's strength. Additionally, working on personal projects aligned with your field of interest demonstrates practical skills and dedication. Don't overlook including achievements, positions of responsibility, relevant coursework, and certifications. Remember, while aiming for a one-page resume, prioritize quality over quantity, ensuring each point adds credibility. Organize your resume professionally with clear headings and bullet points for easy reading. These strategies collectively allow you to create an impactful and credible resume, even with limited content.

  • Bro, I completed Striver / Love Babbar Coding Sheet, But still not able to clear the OA (Online Assessments). What should I do?

    Answer: Completing a coding sheet is indeed an accomplishment. However, it's important to note that it doesn't guarantee success in cracking Online Assessments. Neither the creators nor anyone else would assert such certainty. These coding sheets are designed to provide insights into frequently asked topics and crucial areas for your preparation. A strategic approach is key. After each Online Assessment (OA), dedicate time to revisit problems you struggled with. Analyze why you couldn't devise an approach. It's possible the question demanded coding techniques or algorithms you hadn't encountered before. It might even be a familiar problem presented in a different context that led to confusion. Carefully assess if you're weak in specific topics, and if so, reinforce them by solving more problems. In my case, I conquered my hesitations about Dynamic Programming by solving numerous related problems. Prioritize solving a diverse range of problems rather than repeating the same ones. Additionally, practice with a timed approach. Sometimes, a candidate devises a strong approach but can't complete it within the allotted time. To address this, track your time for each problem, engage in contests, and tackle challenges to refine your skills.

  • Bro, I have solved a lot of problems, but I keep forgetting it! What should I do !

    Answer: When you're tackling DSA problems, remember not to just memorize the solutions. It might seem easy to watch video explanations and then copy the best approach, but that's not the right way. Try to solve the problems on your own, even if your approach isn't perfect. Nobody starts with a perfect solution. It's through practice that you learn to write better code.

    If you're still struggling even without memorization, there are a few things you can do. Go back to problems you've solved before from time to time. If you used a different or unique approach for a problem, mark it so you can revisit it later. Taking short notes and reviewing them every few days can also help you remember better. Just remember, getting good at this takes time and practice, so keep at it.


πŸ“Š Preparation Strategy

How you Spend Your Time Studying | Exams memes, Relatable, School related

It's not about the quantity but the Quality

I kick-started my preparations for final-year placements in February 2023. While I had dabbled in Programming and a bit of Competitive Programming during my first year, it lacked consistency. The real focused preparation, however, began in March 2023, just about 4-5 months before the Placement season. Although my inclination had been toward Web Development, Research, and Software Development, I had a modest prior experience with Data Structures and Algorithms. Fast-forwarding five months, I proudly achieved the milestone of solving over 800+ problems on LeetCode, 750+ problems on GeeksForGeeks, 400+ problems on Coding Ninjas, and 180+ problems on Interviewbit.

A big question, why did you go to separate platforms?
It was my personal choice. I chose these platforms because I had used them before, and I wanted to improve my coding profiles. Sometimes, I noticed that a coding approach that worked on one platform didn't work on another – even with the same code. This happened because some platforms have strict test cases. Some platforms cared a lot about things like Time Complexity and Space Complexity, while others didn't mind as much, like Interviewbit. So, I ended up using multiple coding platforms.

For example, Coding Ninjas had good questions specific to companies, and GeeksForGeeks had a useful collection of questions from different companies and real interview experiences. LeetCode had great Database questions and an awesome Discussion forum. In the forum, you can learn different ways to solve a single problem, including faster ways and well-explained solutions. I made sure to solve the Problem of the Day on both LeetCode and GeeksForGeeks every day, along with my regular preparation.

In the world of preparation, quality matters more than quantity. It's not about solving hundreds of problems on LeetCode – that's not the key to success. Instead, focus on doing around 250 to 280 problems that challenge you and push your limits. We all know our comfort zone, so no need to go into that. What's important is trying different kinds of problems, not just sticking to a list. Don't rely too much on "code sheets." They're useful, but don't think that finishing one means you're all set. That's not true at all. Pay more attention to medium to hard-level problems. I used different websites like LeetCode, InterviewBit, GeeksforGeeks, HackerRank, and Coding Ninjas for my preparation. The point is, it's about the quality of your practice, not the quantity.

The realm of accomplishments often appears insurmountable, yet I assure you that with unwavering consistency, you too can effortlessly reach and surpass that remarkable milestone of solving 600-700 problems. Dedicate a mere 3 to 4 hours each day to your preparation, and you will soon find yourself on the brink of success. This daily routine should encompass a dynamic mix of activities, including tackling Data Structures and Algorithms (DSA) challenges on coding platforms, refreshing your understanding of Object-Oriented Programming (OOPS), delving into the intricacies of Operating Systems (OS), Database Management Systems (DBMS), and Networking, honing your aptitude through exercises encompassing Arithmetic Aptitude, Logical Reasoning, Verbal Ability, and English Proficiency, and nurturing your comprehension of core computer subjects. Embrace this holistic approach, and you'll be well on your way to mastery.


🍁 Preparation Map

πŸ“† 5+ Months Left for the Internship/Placement Season

Gandalf speaks! So, what am I supposed to do to prepare myself? | Teacher  humor, Teaching memes, Teacher memes

  • Learn / Master a programming language of your own choice.
    When it comes to picking a programming language for learning Data Structures and Algorithms (DSA), many questions arise. The truth is, whether you go with Python, C++, or Java, the choice matters less compared to your dedication to learning. However, I recommend leaning toward Java or C++. These languages are well-suited for grasping complex Object-Oriented Programming (OOP) concepts, making your learning experience smoother.

  • Craft projects that genuinely address real-world issues, avoiding those solely created for university coursework

    When it comes to selecting projects to showcase, prioritize those that you've personally undertaken. During interviews, it can be challenging to explain individual contributions within a group project effectively within a limited timeframe. Similarly, consider your Hackathon projects for inclusion in your resume only if they reflect a comprehensive implementation at a project level. If not, channel your efforts into crafting your independent projects, incorporating diverse tech stacks to tackle authentic real-world issues.


πŸ§‘β€πŸ’» 3-4 Months Left for the Internship/Placement Season

No photo description available.

  • Learn and Master Data Structures and Algorithms

    • Begin by mastering the concepts of Time Complexity and Space Complexity. While some students might initially find these topics straightforward or uninteresting, they hold immense importance. Grasping the methods to calculate time and space complexity through various techniques is essential. This includes scenarios involving recursion, backtracking, nested concepts, and intricate cases of looping. Delve into these intricacies and understand them thoroughly. Incorrectly stating time or space complexity to a recruiter can result in a negative impression or raise concerns.

    • Begin by building Data Structures from scratch. While libraries can be convenient for tackling complex problems, it's crucial to have a solid grasp of manual implementation. Data structure implementation becomes particularly valuable in scenarios where you need to handle unconventional twists in questions that demand a customized approach.

  • Prepare a Draft of your Resume and get feedback

    Now is the opportune moment to concentrate on drafting your resume and share it with experienced seniors for their insights. Occasionally, you might miss errors that a seasoned senior could identify. Numerous aspects require attention to craft an impeccable resume. In today's competitive landscape, HR managers receive over 1000+ resumes. Thus, it's crucial not to hasten this process; take your time to meticulously prepare your resume.

    If you want you can reach out to me via my LinkedIn Services Page for a free Resume Review.

  • Make a List of Companies

    By doing this, you can focus on particular companies as soon as they post new openings. Set up job alerts on specific portals to avoid repeatedly checking them. I've found Glassdoor, Indeed, Cuvette Tech, Freshers Hunt, company-specific career portals, LinkedIn Jobs, and Naukri.com to be helpful job portals personally.

  • Focus on Improving yourDigital Footprint
    This aspect is often overlooked but holds significant importance. Keeping your digital profiles well-maintained can enhance your search engine optimization (SEO) ranking. When recruiters search your name and find your profile at the top, it creates a positive impression that you've engaged in valuable activities. However, it's crucial not to be complacent if your profile is already ranked well. Consistently updating your profile is equally vital. Share your new achievements, projects, engage in "Learn in Public" endeavors, and connect with communities. Key profiles to focus on are your coding profiles, LinkedIn, and GitHub.

  • Start Solving Medium-Hard Problems

    Getting stuck on Easy Level Problems for an extended period won't sufficiently prepare you for internships or placements. Once you've grasped the fundamentals of the data structures and feel comfortable with solving easy-level problems, it's time to transition to tackling medium and hard-level problems. After solving the questions on your own, take the time to review the Discussion Forums or Community Posts. This helps you learn about different approaches others have taken to solve the problems.

    At this stage, it's crucial to keep track of the time you spend on each problem. Pay attention to the time complexity and space complexity of your solutions. This step ensures you're not just solving problems, but doing so efficiently. By moving on to more challenging problems and being mindful of your approach's efficiency, you'll be better prepared for the demands of internships or placements.


πŸ–₯️ 1-3 Months Left for the Internship/Placement Season

  • Be Consistent and Explore Variety of Problems

    Don't restrict yourself solving coding sheets. Focus on solving variety of problems and make yourself aware of different coding patterns and techniques. This will help you be ahead of around 62% of the batch since most of the students stress over quantity. Quality matters rather than quantity. So be consistent and keep solving new variety of problems.

  • Finalize your Resume
    As you work on finalizing your resume by incorporating the last-minute points and feedback, remember to keep the formatting simple. Prioritize readability, ensuring that recruiters can easily understand your content. For convenient sharing, consider uploading the resume to a public drive and generating short links. This way, you can quickly provide the resume link whenever required.

    For Example: The short-link to my Resume is https://bit.ly/HariketResume

    In addition to the resume's content, pay attention to the file name and size. A suitable file name format for resumes is FirstName_LastName_Resume.pdf. Moreover, aim for a file size under 1MB. These seemingly minor details contribute to a professional and streamlined presentation of your resume. Be sure to also review the other tips mentioned in the upcoming blog to enhance your resume preparation process.

  • Side by Side Prepare for Aptitude
    It's crucial to maintain your consistency in practicing DSA. For aptitude preparation, allocating 1-2 hours daily is sufficient. If you're wondering how to approach aptitude, consider exploring resources like indiabix.com and careerride.com. These platforms provide valuable materials to enhance your aptitude skills. Remember, the key is not to memorize formulas mechanically; focus on truly understanding the underlying concepts. Some websites might inundate you with a surplus of formulas for a single topic, but that approach doesn't guarantee effective learning. Instead, prioritize understanding the fundamental formulas that cover the majority of scenarios.

    Aptitude topics are conveniently grouped, which simplifies your learning process. Be sure to concentrate on grasping the basics and concepts, rather than being overwhelmed by excessive formulas. This strategic method will be more beneficial in mastering aptitude skills. In addition to solving topic-specific problems, engage in mixed assessments and collection tests to assess your overall knowledge. Remember that in aptitude questions, speed is as crucial as accuracy. Familiarize yourself with various techniques like answer estimation, option substitution, and option elimination. These strategies can enable you to solve questions within seconds.

  • Side by Side Start with Preparation of Core Subjects

    Just as emphasized in the Aptitude Section, it's crucial not to neglect your Data Structures and Algorithms (DSA) studies while focusing on core subjects. Maintaining consistency in your DSA practice is of utmost importance. It's counterproductive to solve a large number of problems in one day and then go inactive for several days. Balancing both aspects of your preparation is key.

    If you enjoy learning through videos, I recommend exploring the GateSmashers YouTube Channel for comprehensive course content tailored to your needs. However, if you find yourself easily distracted on YouTube and prefer reading materials, GeeksforGeeks offers an excellent resource with comprehensive written content.

    For those who prefer learning from handwritten notes, Riti Kumari has created a valuable collection of handwritten notes covering a wide range of topics. Incorporating these resources into your preparation strategy can significantly bolster your readiness. Remember to explore these options to fortify your preparation efforts.

  • Note Down mistakes done in solving problems - Revisit !
    It's not solely about solving questions; it's equally essential to derive learning from your mistakes. Rather than avoiding them, embracing errors and extracting insights from them is crucial. Human nature tends to lead to the repetition of mistakes, whether in similar scenarios or different contexts. Thus, developing the habit of reviewing and revisiting past mistakes proves valuable in your journey towards improvement.


πŸ“šTemplates to Approach for Off-Campus Placements

  1. Template for Referrals (Situation when you shortlist a job posting on Career Website)
    Dear _______ (Recruiter Name),

    I hope this message finds you well. I am writing to express my interest in the ____ opening at _________ (Company) and to kindly request your referral for this role: _________ (Job ID/ Job Link). I have been following __________(Company)'s technological advancements and am deeply impressed by the innovative solutions your team consistently delivers. With the skills they require and the skills I have, I am confident that I can contribute effectively to ______________ (Company)'s engineering endeavors. Your endorsement would not only validate my qualifications but also provide valuable insights into my potential as a member of the ____________ (Company) team.

    Your support is highly desirable as I believe it will significantly strengthen my application.
    Thank you for considering my request. I have attached my resume for your reference. Your time and support are greatly appreciated.
    - Github:
    - Linkedin:
    - Leetcode:
    - GeeksForGeeks:

    Best regards,
    [Name]
    [Email]
    [Phone]
    [Attach updated Resume]
    [Job Link]
    [Job ID]

  2. Template for Enquiring About Open Roles (Situation when appropriate roles aren't listed on Careers Website)

    Hi ______ (Recruiter Name),
    I hope this message finds you well. I am writing to express my strong interest in pursuing _______ (Type of Role: Interbship/Part-Time/Full Time) _________ (Job Role, Ex: Software Developer) roles at _________(Company) and to inquire about potential opportunities suitable for a final year Computer Science Engineering student. I am passionate about _______________.

    - Linkedin:
    - Github:
    - Portfolio:

    As I approach the culmination of my undergraduate studies, I am enthusiastic about the prospect of joining a dynamic team that values innovation and offers a platform for continuous learning and professional growth. My academic journey has provided me with a comprehensive understanding of C, C++, Java, Python, DSA, etc. Through hands-on projects and internships, I've had the opportunity to apply and refine these skills. I am genuinely impressed by ________ (Company)'s contributions and I am eager to contribute my insights and skills to further enhance your team's success. If there are any potential openings or insights you could provide, I would greatly appreciate the opportunity to discuss how my background aligns with your needs.

    Thank you for considering my inquiry. I am looking forward to the possibility of connecting and learning more about potential avenues at __________ (Company).

    Warm regards,
    [Name]
    [Phone Number]
    [Email]
    [Updated Resume]


πŸ“’ Must-Know Topics

Data StructuresAlgorithmsConcepts
Vectors, Arrays, StringsSorting Algorithms (Insertion, Merge, Quick, Bubble, Selection Sort)Bit Manipulation, Two Pointer, Sliding Window
Hash TablesBinary Search, Sieve of Eratosthenes, KadaneDynamic Programming, Memoization
HeapsGraph Algorithms (Prim's, Kruskal's, Dijkstras)Recursion, Backtracking, Greedy
Stacks & QueuesBreadth First Search (BFS), Depth First search (DFS)Time Complexity and Space Complexity
Linked ListsGraph Algorithms (Dijkstra's, Prim's, Kruskal's)Number Theory, Prefix Sum
Trees, Tries & GraphsTree Traversals (Preorder, Postorder, Inorder)Topological Sort
Advanced (Segment Tree)Kosaraju's and Tarjan Algorithm, Floyd’s cycle detection algorithmAdvanced Concepts (AVL Trees, Red Black Trees)
String Algorithms (Rabin Karp, KMP, Boyer Moore)

(Reference: https://www.bigocheatsheet.com/)

Β