git:(GSoC) git merge DSA-CP

git:(GSoC) git merge DSA-CP

You'll have to resolve many merge conflicts. A tough but possible task.

ยท

4 min read

Before beginning the blog, I would like to let you know that I am not a CS student. I am an Electronics and Communication Engineering student at IIT Roorkee.

Scenario.

5 May 2023\> Selected for a large-size project of The Palisadoes Foundation under Google Summer of Code'23. Only had a bit of experience with Competitive Programming and zero knowledge of Data Structures and Algorithms (not even a clue about InterviewBit problems). Ranked Pupil [About 1300 rating] on Codeforces and solved 0 problems on Atcoder. 0 problems solved on CSES Graphs, DP, Tree and Range Queries section.

19 July 2023\> On-campus Day 1 internship tests begin for the summer internship 2024. Managed to complete all the tasks that were expected to be completed before 1 August, according to my GSoC timeline. Ranked Expert [1648 rating] on Codeforces and 1901 rating on Codechef, regularly solved problems on Atcoder. Solved every problem which had 2000+ submissions on CSES Graphs, DP, Tree and Range Queries section. Solved around 350 problems on InterviewBit.

I love to brag. ๐Ÿ˜

As a result, I got 2 offers for summer intern from Google and Microsoft [both SWE roles], and I was able to pass my mid-term evaluation of Google Summer of Code'23. The final evaluation is expected to be completed by 23 Oct 2023. ๐Ÿ˜„

Journey.

I tried to keep everything organized. I divided the time between GSoC and CP+DSA evenly. CP+DSA is something that requires a lot of concentration and we get the best results when our brain is most active, on the other side I believe a project in Dev doesn't require a lot of concentration [obviously, I am assuming you would be comfortable with the tech stack if you were given a GSoC project]. So, I consumed most of my time exploring CP-Algos from cp-algorithms.com.

When I was tired of CP, I jumped to work on the GSoC project, enjoying some of my fav music hits [it was kind of a stress buster, lol ๐Ÿ˜†]. Never imagined GSoC would act as a stress buster. Obviously, I had to ensure I completed the tasks mentioned in my timeline.

I had already talked about DSA with my seniors, and all of them said it will be a cakewalk if someone is good at CP. With this in my mind, I mainly focused on Competitive Programming for a full month.

I started with Data Structures and Algorithms in June. Solved all the easy problems at first from InterviewBit [All topics], this took me around 20 days. I never left Competitive programming, as it is something that requires consistency.

The following are the main sources of my knowledge in...

Competitive Programming
CSES, Atcoder, Codeforces, Codechef, cp-algorithms
Data Structures and Algorithms
InterviewBit, LeetCode, GeeksForGeeks

CSES: A goldmine

CSES problem set is a goldmine for Competitive Programming enthusiasts, this problem set contains a problem on almost every algorithm in cp-algorithms. Important sections for the internship tests are mainly Graphs, Trees, Range Queries, Dynamic Programming, and Arrays [pretty obv ๐Ÿค–].

Distractions?

Distractions are always present, it all depends on you how you want to deal with them. For me, the biggest distraction was Instagram. Luckily, I knew a pretty easy solution to that, uninstalling it from my iPhone. Easy-Peasy. ๐Ÿ˜

Intense month: June

June 2023 came out to be very intense for me. I had just 3 things on my mind

  • Data Structures

  • Competitive Programming Algorithms

  • Google Summer of Code

I experienced a lot of ups and downs during this period.

On-campus intern season summary.

There is no guarantee that you'll receive a Day 1 offer, even if you are ahead of your peers. Luck is a big factor in on-campus internship season, especially if you are a non-CS student and a boy [iykyk]. ๐Ÿ‘ฆ๐Ÿป

Are CP and DSA all that is required for on-campus internship interviews and tests?

Reminder, I always targetted for SWE-related roles. I have no idea about the recruitment process for other fields.

Also, many companies want their interns to have a deep knowledge of CS fundamentals, like OS, OOPs, Networking etc.

I had gone through OOPs but, had little to no idea about other courses. Luckily, I wasn't asked about CS fundamentals in any of my interviews. ๐Ÿ˜ฎโ€๐Ÿ’จ

Conclusion.

I believe you can easily manage your GSoC project along with exploring other fields like CP and DSA, only if you follow a fixed schedule, limiting the distractions around you for 2-3 months. Can't describe the feeling of getting a day 1 offer and completing the GSoC project simultaneously. You'll surely need 1-2 weeks of rest and watching your fav TV series and movies after the complete process. ๐Ÿ˜Œ

Thanks for reading. Hope you enjoyed it.

Do connect with me on Linkedin, and follow me on Instagram [yes, I am back after the intern season.] ๐Ÿ˜‚

Drop me a message if you need any help. I'll answer it asap. Thanks.

ย