I want to keep this answer pretty short because it’s better experienced than explained.
Pros :
- Heavy Competition hence, better quality of engineer if taken the degree seriously
- Better opportunities compared to any other stream of Engineering.
- Although you don’t end up in a Good College you still can work on your skill thanks to all the material available on internet.
- Computer is your new best friend.
Cons:
- Heavy Competition from every other field to work as a software Engineer.
- Never Ending learning
- Every 5 Years a new wave of technological buzz
- Too many options to choose, at times this is a problem.
- C language isn’t a very friendly language unless you get your basics very clear.