CSE Simplified EP01 - The true CSE path
Welcome to the first episode of the series - CSE Simplified. In this episode, we will give you a brief overview of the true CSE path students should follow.
Following is the transcript of the episode. You may like to watch the video
In this video series - CSE Simplified, we will be sharing our ideas and suggestions as to how a B.Tech CSE student should be. This series is primarily for the 1st and 2nd year undergraduate students.
So, let's get started.
You all are future engineers of India. And after the completion of your degree, you are expected to be a problem solver, changemaker and a skillful person who knows how to tackle the challenges of the new world.
But because of several reasons like messed up education system, lack of proper guidance, senior support and being in a wrong influence, most of the passouts are unemployable.
A very few people get their B.Tech right. Do you have a full proof plan to become an employable engineer or job creator?
Every decision that you take during these 4 years affects your career in one way or the other.
After carefully observing this CS world for more than 3 years now, we, the JU eezy team brings you the success mantra to complete your B.Tech the right way.
Before we begin, I want to make it very clear that we are not here to brainwash or deviate you. We just want to show you the way we look at CSE and how you can get the most out of it. At the end it is up to you to decide what path to follow.
B.Tech vs BCA
Let us start by discussing on a great decision you have taken by picking B.Tech over BCA.
BCA is different from B.Tech based on the area they focus on. BCA is all about applications of CS. They need not go into greater depths of CS. While in B.Tech, you must know the working of computers, their architecture, theory of computation, computer networks, operating systems and a lot more. BCA also has some of these subjects but not in depth that B.Tech touches.
To make it short, a BCA guy would only know how to use a ML tool to build application but a CS Engineer would invent a new tool if required because he knows what's behind. BCA guy only knows how to use tools but B.Tech guy knows how to build one.
The reason I'm explaining this is that today most of the B.Tech students have mistaken B.Tech for BCA. Students think that just by knowing how to apply technology will make them an engineer. Well, it will make you fit for the jobs open to BCA candidates but it will not make you a CS Engineer. Then, why have they taken B.Tech CSE in the first place?
Common Mistakes / Misconceptions
Now let's see the common mistakes students make and the misconceptions they have.
- Falling for attendance certificates : Don't collect attendance certificates. They prove nothing about your skills. Attending a 2 hour workshop to build face unlock application is of no use until you learn further and build something useful out of it. Many recruiters have admitted on LinkedIn that they no longer believe in such certificates.
- Theoretical CS is 💩 : Students think Core CS is shit and waste of time. This is not true. Theoretical CS that includes DBMS, OS, TOC, COD, CN, CD etc is the core foundation of CS. There is no skip for this. Without learning this you won't be able to feel the hardwork computer scientists have put into making that machine you use. Although it is said theoritical, it is practical implementation. Theoritical CS helps in building efficient software and hardware systems. Students say it is of no use. But the concepts you learn there will always help you in future. If you have true passion for CS, you will never miss this knowledge as to how things work inside computer systems. It will boost your brain with enormous amount of concepts that will make you way more creative.
- Jumping directly to AI : Heading for AI at first will move your CSE journey upside down. AI is a fascinating field for everyone in CS, but it has some prerequisites which you can't neglect. Knowing just how to use a SDK or tool won't make you a ML engineer. You need to get into depths. Don't fall for AI jobs fit for BCA candidates. Be very good at programming, DSA and mathematics before jumping to AI. Do a good amount of research before entering this field.
- Taking subjects for granted : Most of the people think that scoring good in semester exams is enough. Which takes just one night effort per exam. The aim is not just to score but to feel and live the CS within. Without knowing the subject hierarchy, you may make mistakes by simply ignoring important subjects. And you will definitely regret such decisions. We will talk about this subject hierarchy in an upcoming video, so stay tuned for that.
- Making too many friends : Don't extend your friend circle beyond a certain limit. As it may badly impact your career. Many people make friends for security in the times of fight. That's a very bad choice. Unnecessarily, you will have to sacrifice a lot of time maintaining such friendships. Instead make friend who finds good in you, who uplifts you, who shares similar career interests with you, friend who makes you fly, who makes you independent and not those who criticize and demotivate you constantly. Make friendships for life not for small benefits. Ask yourself how many of your current friends will stand with you even after college. Choose wisely and see the impact for yourself.
Falling into the pit of false love : Many people take money and sexual desire based relationships as love. Such relationships will not last longer. You will lose money and more importantly the precious time which will never come back. Don't get into this Western influence. It will ruin your life. See for yourself how long do bodily pleasures based relationships last in the west? If your relationship is beyond body and mind ; you both mutually understand each other's life goals and are committed to support each other regardless of what likes and dislikes you have, then no on can stop you. Go for it.
But if it is not the case forget about it.
Here is a fun fact : Your career growth decides whether your relationship will exist after college or not!
Lastly I would like to say - jo apni galtiyon se samje wo Samjdar hai or jo dusro ki galtiyon se samje wo Bahut samjdar hai.
Building start-up in 36 hours : Naah, not at all. Many people think that they can build their start-up by just participating in hackathons. Not true. Hackathon is a sport. Take it as an opportunity to learn and grow together. Build up your team work skills. Learn new technologies. Meet other teams, build your connections.
Whatever problem you pick, there is a high chance of a solution already existing in market for it. So, standing in market and building your start-up takes enormous effort and patience. Do as much research as possible. Instead of building solution straight away, perform SWOT analysis and brainstorm the architecture first. Build a road map and go slow. Don't expect anything significant in terms of startup from hackathons. It takes months and years to build one. First learn, see the world around and then build your start-up.
Most importantly, never ever compromise CSE for your start-up. You have not picked Entrepreneurship but CSE. All this start-up business should be your second priority.
The Success Mantra
Now to be successful in CSE ie, landing up in Product based companies or a good college for masters in CS or joining a good startup or even starting your own, this is what you should do:
- Your top priority should be competitive programming : There is no escape for programming. Being in CS, you have to be very good at it. Because without being an efficient programmer, you can't build good software. Pick any good book, learn the fundamentals and dive deeper into any of the online platforms like Codechef, Hackerrank or Leetcode.
- Learn Core CS / Theoretical CS : Learn these subjects even if they are not taught well in college. They will help you understand CS better and build good softwares. Read books! College grades aren't enough, you must know the concepts very well.
Development : This is optional. But if you do, you will stand out among your peers. It is a great skill to have and it will boost your productivity. You can pick among App development, web dvpt, game dvpt etc.
According to me, these three are the basic pillars of B.Tech CSE.
- Soft skills : Your knowledge is of no use if you can't express your thoughts properly. Good speaking, listening and presentation skills are must. Work on them as well.
- Be creative : Grab skills like Graphics Designing, Animation, Video editing, blogging etc and enhance your creativity.
- Be a problem solver : Always see how you can implement your knowledge for the betterment of the society.
Be a multitasker : You can easily do 2 things in College perfectly but if you try to do more then 2 then it may impact your performance.
By 2 things I mean (College Study + CP) or (CP + Development) or (Development + College Study) or (Friends + College Study/Development/CP).
To cover more than 2 things you need to be very good at emotion control.
Humans can't do fast Context Switching. Brain can't can't stick to one thing for longer time. But if you take the control, you can easily multitask between 2 things.
You can also do slow motion multi tasking like
- College Study or Core CS
Alternating between CP & Development on weekly basis
Don't compromise Core CS and competitive programming for development. You can plan development during vacations or weekends.
Now the question arises which development field to choose? Well, it is totally up to you as to what you like. And let me be very clear that once you know competitive programming, you can get started with any kind of development in just a couple of days.
Let's see some of the prominent development fields one by one.
- Web development : This field is very diverse and difficult to survive in. It is very dynamic and there are plenty of framework choices to pick from. So, I personally don't recommend this.
- Game development : Unity is best place to start game development but it requires you to learn C#, which is extra burden given your vast B.Tech syllabus to complete. Same goes with web dvpt also, you may require to learn several new things apart from syllabus.
- App development : Here you have 3 choices,
- Native Android development → You can get started with Java and OOPS. Fortunately, they are in B.Tech syllabus also. So, two marks with one stone. You will see the practical implementation of your OOPS, SE, OOAD and design patterns knowledge. So, it is the best option to start with.
- Native iOS development → It requires you to learn completely new set of languages. Also, you need Mac. So, just keep it aside as it is extra overhead.
- Hybrid app development → Hybrid is new in market as compared to Native. It has limitations when it comes to using platform specific features. Native is way more powerful than hybrid.
So, you can easily start with Android app development without much extra effort.
Picking up development and completing the course won't be enough. Try to apply your skills, solve a problem and release it to the public. Development has several advantages. It opens door for freelancing, internships, jobs and even building your own start-up.
At last I would like to say, don't look for jobs ; Let jobs look for you. Prove your capabilities and show what you can or have built. Not only that, once you have required skills, you can even create jobs! Have impact on people and be helpful. Believe in yourself. Work hard! There is no shortcut. Have patience, your hard work will always pay off.
So, this a brief overview as to how a B.Tech CSE student should be. Share this video with those who are in need of this perspective. If we missed anything crucial share it in comments. Once again, this series is primarily for 1st and 2nd year students.
In the upcoming videos, we will take few more topics in depth. So stay tuned! And if you have any queries, we are happy to help. Just ask us in the comments below.