Hi Michael, tell us a little bit about yourself!
I'm an Asian-American guy from San Diego, graduated from UCLA, and moved up to the Bay for work. A lot of stuff piques my interest and they come and go, but some consistent things include tennis, bouldering, painting, drawing, reading, and video games.
Can you tell us what you do as Software Engineer at Google for those who are unfamiliar?
As a SWE, I write design docs, meet with managers and other engineers, and write code to meet project requirements.
How did you decide to pursue software engineering?
AP CS in high school senior year was my first exposure to programming. I realized when I was picking a major that I didn't feel particularly passionate about any subject. But I did notice that I kind of actually enjoyed doing the CS homework, at least relative to chem or English. I also interned at a tech company during undergrad and I enjoyed the type of work I did there. That basically put aside any aspiration of research/grad school since industry seemed like a good fit.
What programs & tools do you use everyday for work? What do you like/dislike about these programs?
Google has their own internal IDE they recommend that integrates well with their own stuff, so I use that. But in school I used VSCode and Xcode if I had to. I also have a notebook to draw code architecture and diagrams and data flows to better understand it. I find notebooks surprisingly helpful.
Any advice on how to stand out and get hired for those starting off?
You have to be good at solving coding questions. Not getting the right answer, but be a pleasant interviewee. You're trying to convince the interviewer that you would be a good coworker, someone that they would happily do a project with.This means you ask good, clarifying questions. When you get confused, think out loud and clearly express your ideas. Mock interviews with a friend are good for this.
What are some must-have resources (books, tools, podcasts, etc.) you would recommend for your industry?
I used Leetcode. I did read forums/sites dedicated to programming and tech jobs but I found it really skews your expectations.
What are 3 character traits that would make someone excel in your field?
amiable, diligent, open-minded
Most satisfying & difficult thing about your job?
Satisfying: cleaning code
Difficult: race time errors
What would you like to say to your younger self?
You're doing good
Best advice you've received/heard?
If you get stuck, try to do solve it yourself for 30-60 minutes, then ask for help and explain what you already tried.