Hi everyone, I’m currently a junior student in Computer Science and about to graduate next year. So far, I’m kind of a goal-driven person, and I only learn what I feel important. In particular, since my goal is to become a software developer, I try to absorb knowledge that relevant to programming, data structures & algorithms (just enough for the interview), design patterns and architecture, database, etc. And I kind of forgot most fundamental concepts in ML/DL courses.
Recently, I had a backend internship position and start having a grasp of the career path of a software engineer. As far as I know, to become a person who is more valuable to the company (such as team lead, technical lead, software architect), not only coding and those basic concepts that I learnt so far, I also need to have a broad knowledge on the field, including what pros and cons of the framework, what design, language, and technology to choose for a particular project. More than that, to reach the highest technical position (CTO, I guess), management skills, risk assessment skills are also vital.
I started to doubt my previous mindset: ‘Learn only for my job’ might make me get trapped as an average coder till retirement. Should I try out something new? Should I learn more about other stuffs like DevOps skills, management skills, etc. Should I read more and more about technical trends? I really want to know what should I learn to become an expert in the field, and what should I focus on now. Thank you very much for helping me out, wish you guys a good day.