2

How do you grow yourself to become a great software engineer who is well respected outside of your job?

Profile picture
Senior Software Engineer at Grab2 years ago

The benchmarks I am setting here are people like Robert Martin, Martin Fowler, Venkat Subramaniam (known for agile and Java), Guido Von Rossum (developed Python), Jeff Dean, Sanjay Gehlawat etc.

Latter two are Senior Fellow at Google. Up until a certain point, I understand that promotions are about the scope of impact inside an organisation, but how do you grow yourself outside the walls of it so as to be on your way to be extremely good in your craft and among top software engineering contributors in the world.

Would appreciate answers from as many folks as possible.

225
2

Discussion

(2 comments)
  • 6
    Profile picture
    Meta, Pinterest, Kosei
    2 years ago

    One more thing worth mentioning: there is certainly an element of luck involved with getting to the upper echelons of "great" software engineering (which has an element of fame as well).

    For example, Jeff Dean and Sanjay Ghemawat are hugely successful, famous, and talented. But if they didn't join Google in the early days, I doubt they'd be as famous today. It's very, very hard to predict which companies will blow up and then lead to inventing cutting-edge technologies.

    The folks who you can more easily replicate are folks like Venkat Subramaniam or Jake Wharton, who have consistently given great talks that are respected by thousands of developers.

  • 3
    Profile picture
    Meta, Pinterest, Kosei
    2 years ago

    First, I'd suggest that you explicitly not worry about building up reputation outside of your work until you're already at least senior (which you are). Before those levels, unless you do something magical like create a huge open source project on your own, it's really hard to get visibility outside your company when you don't have it within your company.

    Once you get to the appropriate level, based on the names of the people you mentioned, it sounds like you want influence across many developers. All the people you mentioned have directly or indirectly impacted tens of thousands of developers based on their ideas + technologies. To achieve that, you have to earn the trust of the developer community. The standard ways of doing this:

    • Start an open source project which gets adopted across teams and companies.
    • Be a prolific speaker at conferences
    • Create a blog/book that clearly explains a topic, or makes something more accessible.

    What you can start doing right now is to maintain a blog or contribute to open source projects. These skills take years to develop, and you can start today.