xiomay312 in  
Software Engineer  

Confused on goals and things to focus on career progression

I'm a software engineer with 2 yoe, when entering the job life after graduating, I've always had this confusion on what to focus on or even what goal should I pursue.

Before graduation, everything was relatively clear to me:
- I know that I would work after graduating and I know that work experience like internships would help and so that's what I did, I did 4 internships all in SWE Fields + I did lots of networking with top of students in my uni
- I had a personal goal to get into ICPC World Final, so I did lots of practice in Competitive Programming (I unfortunately didn't make it, though I managed to get Master in CodeForces, had ≥ 2800 leetcode rating and solved more than 3000+ problems)
- I know that a high GPA would relatively help me stand out so I did quite well (Had GPA with ≥ 3.75/4.00)
- Basically, I know what goal and things I would do in the future, and it was CLEAR to measure where I am and how far I am with the goal. And I try to effectively do things to get closer to my goal

But now I'm confused as hell, what goal should I pursue? I initially had the idea to become really good at being a software engineer, but I just can't find any good way to measure how "good" I am, software engineering is too damn broad

Wanted to find thoughts from here, especially those with long experience in the field, how do you find your goal and focus on the things that effectively move you towards the goal?

Now I focus more towards reading books, building connections, increasing soft skill, etc. Basically just good common skill to improve my career, but I'm not too satisfied if I haven't found that "clear path" yet
2
4060
Sort by:
Kafka0nKoffeeSoftware Engineer  
After those initial 1-2 years of working as an SWE, is when most SWEs starting asking themselves these questions. So it's a great indication of you being invested in your career so don't feel bad about having these thoughts. This is exactly how you should be feeling!

While I can't tell you exactly how to go about the process of finding the "clear path" ahead, I can tell you of how this exploration has played out for me:

So I'm 1-1.5 years into working as a generalist SWE and I think I would want to jump on the ML/AI bandwagon. At that time, and to a large extent even now, most ML/AI positions would like an academic background, post graduate preferably, in candidates. So I decide to pursue a master's degree. During the degree I realize that I don't necessarily enjoy the hardcore mathematics and statistics aspect of developing models and algorithms. I enjoy building software, solving problems like an "engineering" if that makes sense. So I realize that AI isn't at that point yet where I can use AI tools to solve software engineering problems. So half way through my master's I change my focus to distributed systems and cloud infrastructure which were areas where I was working during those first 2 years anyway. In hiring terms, I was a backend focused developer/engineer.

I continued to hone my skills within these two niches after graduation. I've discarded notions of ever touching frontend, data analytics, and a few other niches entirely over the last few years of working. I've been successful with the distributed systems and cloud focus and these continue to challenge me with continually new problems.

Now, going back to that realization that I wouldn't want to develop AI models but rather use them. So over the last 2 years, with the advent in LLMs, the AI industry has arrived exactly where I can start using them to solve engineering issues in software. So now, I'm slowly lateral-skilling into the space, went back to revise concepts of neutral networks, NLP, deep learning... Let's see where this takes me. I'm not however abandoning my DS and Cloud background but rather using my existing expertise in conjunction with AI to solve engineering problems in my product.

I've about 8 years of experience now and working as a Lead Engineer/Software Architect.

Hope this helps in terms of how one goes about trying different things and seeing what kind of work gets you excited. You may try something to only discover that you don't enjoy it as much as you thought you would and no matter how trendy it is and that's perfectly fine. Gotta start somewhere :)
7

About

Public

Software Engineer

Members

80,592