So I’ve just started my Master’s in CS and wanted to know what subjects (aside from DS and Algo) to review from my bachelor’s that would be important to know while searching for a job as well as which would be useful while on the job. The reason I ask is because I kinda bumbled my way through my Bachelor’s and didn’t really study the subjects well so I want to take the time to relearn them if they’re important to whatever job I’m gonna get (most probably software engineering). For reference here are some of the subjects that were part of my curriculum:
- Data Structures using C
- Design and Analysis of Algorithms
- OOP using JAVA
- Database Management Systems
- Operating Systems
- Software Engineering
- Data Communications
- Compiler Construction
- Object Oriented System Development
- Computer Networks
- Web Programming and Services
- Distributed Systems
- Embedded Systems
- Software Project Management
- Artificial Intelligence
- Data Mining
I only did a little tiny bit of the higher education thing, so not sure what "revise" means in this context but I'd say keep algorithms and data structures if that's not what you're already planning.
The first thing I wasted my time learning was Java back in the day... I hate Java (and OOP) so much now. Got that DARPA money though at one point lol. But OOP has been a disaster for organizations everywhere, except for game dev probably. I have just never seen a single codebase in a business or information processing environment where the OO nature of it didn't just become the equivalent to the organization taking a 12oz hammer and smashing 2 toes on each foot of every developer after a couple revisions were needed.
Anyway... my votes for emphasis would be Database Management Systems and Distributed Systems.
'Revise' is British for 'review'
So is OOP even worth studying atleast for interview purposes? (And java is the only language I'm decent in :agony-wholesome: )
Also, I should give the functional programming intro video that's been sitting in my watch later playlist for 6 years a shot eh? Or is there an even better programming paradigm?
I love functional programming, but sadly it's not that helpful for getting a job. The only area where functional programming really seems to have become mainstream is web dev, and that's mostly because of React.
There's no such thing as the best paradigm, learn what seems cool or what employers want. Sadly, those will usually be two different things.