My journey through four years of computer science degree

Photo by Mantas Hesthaven on UnsplashEarlier, I had written a post on how I recovered from failing my first computer science exam and also gave a brief about my current situation. This is the second part of that post, so before proceeding, make sure yo…


This content originally appeared on Level Up Coding - Medium and was authored by Kunal Nalawade

Photo by Mantas Hesthaven on Unsplash

Earlier, I had written a post on how I recovered from failing my first computer science exam and also gave a brief about my current situation. This is the second part of that post, so before proceeding, make sure you have read my previous post.

This post highlights my journey through four years of computer science engineering (undergraduate) that involved solving problems, working on projects, campus placements, and interview experiences.

First Year

When the two years of my junior college ended, I was familiar with the basics of programming and the basic syntax of C++. I was excited to start a new chapter in my journey.

In the first year, we had C programming as part of our curriculum. Learning C was no big deal since I already had prior knowledge of C++ as well as basics like loops, conditions, inputs and outputs, etc. But knowing the basics is one thing, applying them to problems is entirely different. I struggled to solve easy-level coding questions and that’s when I realized I only had a theoretical knowledge of the concepts.

So, I started reading and understanding the code used to solve those problems. One of the most tricky ones was printing patterns like triangle, pyramids, Pascal’s triangle. I spent a lot of time understanding how these problems were solved.

With time, I got comfortable with solving basic problems and also had a pretty good grip on C. As part of the course, we also had to create a mini-project in groups of 3 or 4. I was excited. This was my first time working on a project in a team, even if the project was small.

We were told to use C and connect it with an SQL database. So, we had to learn SQL as well as ways to connect C with the database. It was challenging but we managed to implement SQL in our project. This showed me what it was like learning new technology and implementing it for a project.

Second Year

I was now familiar with programming basics and able to solve easy-level questions. It was time to get to the next level.

Photo by Ashley Knedler on Unsplash

I started understanding the limitations of C with respect to application development. We had Java as a part of our curriculum this year, so I started learning it before my semester even started. At the same time, I got to know Java’s coolest application i.e. Android! As an excited beginner, I jumped straight into Android without even getting comfortable with Java (rookie mistake).

As part of our mini-project this semester, we had to create a Java application with some backend datastore. We went with the popular choice, i.e. Android. Since I had already started learning Android before the project was even assigned, I was able to take the lead and initiate the project.

At the time, I was so excited that I wanted to implement everything at once. I started coding any cool feature I could think of, often spending hours doing so, with no idea of what the final thing would look like. I wasted a lot of hours on features that were not feasible to implement in a short span of time.

Eventually, I snapped out of it and worked only on the basic features. In the end, we were able to create a nice application. You can find it here if you are interested.

At this time, I also got introduced to competitive coding platforms like HackerRank and attended several coding competitions arranged by our college.

After this project, I got introduced to web development, mainly HTML, CSS, and JavaScript. We had a course in our fourth sem where we had to perform small tasks every week. I really liked the simplicity of web development.

Also, we had an important course on Algorithms in this sem. The pandemic struck in the middle of the semester and our exams were canceled. Since I had a habit of studying just before exams, I did not study that course properly which complicated things for me, more on this later.

Third Year

Photo by Burst on Unsplash

I had a decision to make, whether I should continue with Android or start exploring web development further. Even though I enjoyed working on the Android App, there were still a few issues. I found it really complicated at some points, but the major issue was the slow development (compatibility issues of my laptop with Android Studio) and time was of really high importance. So, I choose Web Development.

I started exploring several Web Development frameworks like Angular, Node JS and libraries like React. After some trial and error, I choose to continue learning React further.

In that year, I was pretty comfortable with programming and had some basic projects in my portfolio. But, it was time to take things to the next level. In that year, I was introduced to various software development models and how they are implemented. I also got to know the various stages the development of a project goes through at an industry level, namely the design, development, quality assurance and testing, deployment, and maintenance.

That was also the year when companies started to come in for summer 2-month internships. The interview processes consisted of a preliminary coding round and then the actual interviews. 5–6 companies came and I was unable to get through the coding round for any of them.

As the year went on, it got really annoying. I could not figure out why that was happening and consequently, I started questioning myself again. I soon realized I was missing a really fundamental thing about coding problems, and that was data structures and algorithms! I was still unclear about a lot of concepts in DSA.

At the end of the year, I knew I had to get comfortable with DSA in time for my college placements which were due to start in July, just 4 months away! I sought guidance from seniors as to how I could get started with DSA preparation.

I already had a basic idea of common data structures like arrays, linked lists, stacks, trees, etc. But I needed to go further than that. So, I immediately started diving deeper into data structures and how they are used in solving problems. I also learned the fundamentals of algorithms including how to calculate time complexity. This YouTube channel helped me a lot with algorithms.

In just over a month, I was familiar with basic fundamentals, now it was time to solve coding problems.

Due to my semester exams, I was unable to study DSA for 10 days, which might not seem much, but as I said before, time was of utmost importance.

Final Year

Photo by Sebastian Staines on Unsplash

In my college, we had two options for the final year. The first one was opting for an internship in Sem 8 and finishing that semester’s courses immediately after the third year ended. The second one was to pursue the semester normally, where we would get a two-month summer break before the final year starts. Since I did not have an internship for the summer break, I opted for the first one which made it doubly important that I secure at least an internship.

Rigorous placement preparation

We had labs and assignments during the summer break, so I did not have the luxury of time to prepare for placements which were just 2 months away. But I had to get better at problem-solving if I wanted to get the best out of campus placements.

So, I made a plan and solved at least 4 coding problems every day from LeetCode. I targetted important DSA concepts and attempted to solve medium-level coding problems implementing those concepts. I was able to solve some of them and for the problems I couldn’t solve, I studied the solutions carefully and attempted the problems again after some time.

Soon, I started getting better at problem-solving and I was able to solve previous years interview questions of several companies visiting our campus.

The Placements

Placement season started in mid-July and big companies with large compensations started coming in. More than the interviews, I was anxious about the coding rounds. But it seems my rigorous preparation was coming to fruition as I crushed the first company’s coding round. The interviews also went well but sadly I was rejected.

In the coming days, I applied for more companies, and got eliminated in some coding rounds but passed others but failed in interviews. Finally, after a lot of rejections, I got an offer from a really good company where I am currently working as an intern and will be starting full-time in the same company soon.

Let me know in the comments section if you want me to write a post on my campus placements experience.

Conclusion

I have faced a lot of hurdles in my computer science journey, I am sure each one of you has. But those hurdles have helped me learn a lot. In every difficult situation, what matters is your attitude and the way you approach that situation. Every challenge is a learning opportunity and facing those challenges makes you better every time. I have also made a lot of mistakes that I don’t intend to repeat in the future.

In this post, I have explained my journey through four years of computer science engineering. I have just passed out of college, so my career is just getting started and there’s a long way for me to go. I have no idea how my career is going to pan out in the future but I am sure I’ll keep learning and be better than I am today.

This post was a bit different from my regular ones, but I thought I should share my experience as this is where my career really started. Give a few claps if you liked this post. And, If you want me to write more such posts, subscribe and follow me for weekly content. Reach out to me on Twitter if you want to discuss anything. Till then, Goodbye!!


My journey through four years of computer science degree was originally published in Level Up Coding on Medium, where people are continuing the conversation by highlighting and responding to this story.


This content originally appeared on Level Up Coding - Medium and was authored by Kunal Nalawade


Print Share Comment Cite Upload Translate Updates
APA

Kunal Nalawade | Sciencx (2022-06-14T11:57:48+00:00) My journey through four years of computer science degree. Retrieved from https://www.scien.cx/2022/06/14/my-journey-through-four-years-of-computer-science-degree/

MLA
" » My journey through four years of computer science degree." Kunal Nalawade | Sciencx - Tuesday June 14, 2022, https://www.scien.cx/2022/06/14/my-journey-through-four-years-of-computer-science-degree/
HARVARD
Kunal Nalawade | Sciencx Tuesday June 14, 2022 » My journey through four years of computer science degree., viewed ,<https://www.scien.cx/2022/06/14/my-journey-through-four-years-of-computer-science-degree/>
VANCOUVER
Kunal Nalawade | Sciencx - » My journey through four years of computer science degree. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2022/06/14/my-journey-through-four-years-of-computer-science-degree/
CHICAGO
" » My journey through four years of computer science degree." Kunal Nalawade | Sciencx - Accessed . https://www.scien.cx/2022/06/14/my-journey-through-four-years-of-computer-science-degree/
IEEE
" » My journey through four years of computer science degree." Kunal Nalawade | Sciencx [Online]. Available: https://www.scien.cx/2022/06/14/my-journey-through-four-years-of-computer-science-degree/. [Accessed: ]
rf:citation
» My journey through four years of computer science degree | Kunal Nalawade | Sciencx | https://www.scien.cx/2022/06/14/my-journey-through-four-years-of-computer-science-degree/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.