Nvidia Corporation is a software and fabless company which designs graphics processing units (GPUs), APIs for data science and high-performance computing, and a system on a chip units (SoCs) for the mobile and automotive market.
I came into my role with an advanced degree, so I started out as a mid-level engineer. However, I still need to be able to ask questions as I've never worked as an engineer before. I've seen all the Taro content around asking questions, but my manager has drilled in since a few months into this role that expectations are that I function independently, unblock myself, and don't take up much of others' time by asking questions. That it would count against me in performance reviews (versus for me if I help others with their questions).
Given the current job market, I don't know where else to go, but this environment leaves me pretty exasperated. Is it normal in other companies to go to more senior engineers with help getting unblocked? Are questions only really around code, or is it normal to ask for help debugging a feature/bug/test? I worry about becoming a senior with the expectation to be independent and help others when I myself have never received guidance to grow to that level properly.
I appreciate the value of side projects mentioned on Taro, and I'd like give one a shot. Whenever I've looked before, I got caught up in not finding ones relevant to my work. I work on the backend side, working in the machine learning infrastructure/ops space. That's literally the example used in the side projects video of one where it's hard to do on your own... so is it still worth doing a side project? Maybe one in a similar language (C++), even if it's not related?
I feel like I'm just not being creative enough here, but I'd rather not do a side project that's super unrelated to my area (e.g. learning a ton of frontend to build an app that has a small machine learning component) unless it's still valuable. Maybe to make this more general, how did those of you working on the backend get started with side projects?
I work on a product that runs on a variety of architectures, with code split across many GitHub repositories. We have a complicated build process. When making changes, I often struggle to find a way to run those changes efficiently (i.e. outside of the CI process). This is made worse when I need to make changes that also change the build process or need to run debugging tools like GDB.
When I onboarded, I was told that everyone has their own setup by people who've been on the team since its inception. It seems like people newer than myself have figured it out, even with how messy and changing everything is. However, I've been here for over a year and the team tends to work quite independently. Occasionally, folks will be quite helpful for a point or two, but generally everyone's stretched a bit thin and tends to focus on their tickets. My manager has also rebuffed any requests for collaboration or mentorship since I started, saying that I'm expected to be independent to show I'm ready for the next level. He did say I could that I could try to change the team's culture to be more collaborative if I wanted to take initiative, but that's not what's expected of a software engineer, especially if I want to do well and get promoted.
This question may be more about how to correctly get answers answered when you're no longer new, but I also feel that building (CMake, Docker, environment setup, package management, etc.) is slowing me down. Are there good processes for getting more efficient at building components/systems and unblocking yourself faster?