One thing that I learnt in one of the taro videos is to choose the right project for the career growth. However, I lacked this kind of vision/ability to evaluate. What I can do to improve this weakness? Should I grow more engineering domain knowledge or should I take some business courses to further improve myself?
Great question! Hybridizing as a product manager to develop your product direction is a very common behavior at Meta, so I know a lot about it. First, I recommend going through these discussions that have advice on this topic:
Should I grow more engineering domain knowledge or should I take some business courses to further improve myself?
This depends on what stack you work on and what team you're on, but regardless of all that, I highly recommend against taking business courses to develop a sharper sense there. A course by definition needs to be pretty general, but in order to really have a nose for impact and come up with high-leverage efforts, it's all going to be team-specific 99% of the time. It is near impossible to use external resources to get to senior, especially at a FAANG-level company like Snap.
There's 2 major types of projects you can add:
One common misconception about growing as an engineer is that you have to create (and then implement) a compelling vision. I actually think the minority of engineers reach very senior levels in this way.
I'd argue that you need very little product vision to get to a senior+ level. Instead, just observe the problems on the team and solve them.
Don't have an idea of problems within the team? Just ask someone, I'm sure they're happy to complain to you :)
I'd strongly advise against taking business courses -- I don't know of anyone where that was actually an effective use of their time or money. I'm biased, but I'd say you'd gain a lot more by being active within the Taro community 💯