Reflections on Week 1 at RVTech
I am lucky enough to get an internship at RV Tech (or Rivian and Volkswagen Tech…). Getting an internship is hard these days, especially if you are an international student. I’m writing this series (hopefully I can keep it going until the end of my internship) for three reasons:
- Writing things down helps me internalize what I learned that week.
- These posts act as a memo so that in the future I can use them to prepare for interviews, especially behavioral ones.
- I think writing clearly will be a crucial skill for software engineers. AI is going to handle more and more of the coding, but engineers still need to communicate effectively, with LLMs and with people. And writing clearly means you can think clearly.
Let’s talk about my team. I’m on the Cloud OTA team, which is figuring out how to deliver software/firmware updates to cars. I knew it was an important team (if something goes wrong, we could potentially brick or cause harm to cars, or even worse…) but after I joined I realized OTA is far more important than what I originally thought. OTA is not only a way to update our customers’ cars, it is also important for testing internally. Every time a team wants to test a feature they are implementing or try to fix a bug, they have to go through our system to push the fix/update to the actual hardware. In other words, we have to deal with external customers and internal customers at the same time.
Our team members are all senior engineers and staff engineers, which makes sense, we don’t want our OTA system to fail at any time. It also gives me some pressure knowing that there is a huge gap between me and them.
Communication is not about getting the grammar right, it is about expressing the idea clearly
One thing I still struggle with, even though I have lived in the US for nearly a year, is that I can’t get all the grammar correct when I speak. Sometimes, after I say a sentence, I question myself — wait, should I use this word instead of that word? Is it verb-ing or just the verb? Then I noticed something on our team: we have engineers with 5+ years of experience who don’t speak English as well as me, yet they are still able to contribute to the team and climb to the position where they are now. So at the end of the day, it does not matter. All it comes down to — did the other person fully understand the points I want to convey?
Being proactive
I still hesitate about tagging someone in the Slack channel or messaging someone directly. I don’t want to bother or interrupt them while they might be busy. My mentor tells me to just message them, no need to wait. Communication through Slack is async: it is like sending a notification, not an interruption.
Working remotely is hard
The hardest adjustment is asking for help remotely. Most of our team members work remotely and all of our meetings are done through Zoom. Before, if I encountered a complex problem, I would take my laptop, walk to someone’s desk, and show them. Now I have to put the whole problem into words and screenshots. Writing too much detail is not a good idea since they are busy, but writing too little means they will have to ask follow-up questions to get a better picture. So: what is the quickest and most efficient way to make sure we are on the same page so that I can further explain the problem I am facing? This is the art of asking questions, and I will have to keep learning it for my whole career.