62

What are some tips for quick growth when you're just starting out?

Profile picture
Software Engineering Intern at Google2 years ago

I'm still in school, but I will be graduating in a couple months. My goal is to get promoted as quickly as possible at a reputable company like Google. However, there are so many ways to get better as a software engineer, and I'm unsure how to prioritize all of this information. What should I focus on since I'm earlier-in-career to really unlock that fast career progression?

1.6K
2

Discussion

(2 comments)
  • 55
    Profile picture
    Robinhood, Meta, Course Hero, PayPal
    2 years ago

    Great question! There's definitely so many angles to being a strong software engineer, and it can easily be overwhelming. For someone at your level, I would boil it down to these 2 big categories:

    Communication

    • This is a skill I see 95% of more junior engineers fail to invest in nearly enough. The discourse around software engineering is overly dominated by the code and tactics (just look at the programming memes that go viral on LinkedIn), so a lot of people just don't realize this is important.
    • The biggest reason why communication is important is because being good at it enables you to build up relationships faster. In particular, you want to make sure that you have a very strong relationship with your engineering manager; this is especially important at Google as their performance process is pretty heavy and I've heard that your manager is a much larger player in your promotion now. Here's our video on how to maximize your benefit from those meetings: Having The Proper Mentality For Manager 1 on 1s
    • Everything in your career (and life in general) becomes far easier when people like you.
    • To help everyone build up their communication skills overall, check out my communication series here: Alex's Guide To Effective Communication

    Writing Great Code Quickly

    • At most companies, the junior -> mid-level promotion is ~80% determined by your coding proficiency.
    • All software engineers understand that they need to write code, but I've generally seen engineers struggle to go from average speed to top speeds and especially with quality. To get into specifics, the most common flaw I see with code quality among interns/junior engineers (L3s) is that their PRs are too big and clunky. Here's our video on how to get better at that: One Diff, One Thesis - What Every Code Review Should Be Like
    • Since you're in school and about to graduate, I recommend doing side projects if you can to get a head start. My side projects as a UCLA undergrad were a huge career boost for me, and I wish I had invested more into them as a student (I wasted way too much time playing video games). You can learn more all this here: "How to make the most of my time in school?"
    • To help with this overall, I wrote an extremely in-depth guide here: "How can I write great code faster?"
  • 44
    Profile picture
    Meta, Pinterest, Kosei
    2 years ago

    Wanted to add 2 context-specific pieces of advice:

    1. Since you'll be a new grad engineer, +1 to Alex's recommendation to focus on coding velocity. I would NOT spend much time on things like architecture or code review, at least for the first few months.
    2. Understand the tradeoff b/w quality + speed. For example, at Google, most teams will place a premium on well-structured, well-tested code. That likely won't be true if you go to a growth-stage startup -- they'll prefer speed. Actionably, look at top performing engineers on the team and look at their code reviews.