I suggest you start out by picking the technology you want to specialize in. My choice was that of Google Workspace as a platform, and Apps Script as the cloud-based JavaScript platform that lets anyone integrate with and automate tasks across Google products.
You might be interested in specializing in a technology like Node.js, Angular, Flutter, or React. Or maybe you would like to specialize in a broader topic like cloud computing, databases, or something else.
But this first tip might be put off by some as unnecessary. Why? Well, large technology providers usually have Developer Advocates for different products. For instance, Google has Developer Advocates for serverless technologies, web development, or, as in my case, for Google Workspace. Oftentimes a Developer Advocate will change teams after a couple of years.
So being specialized on one specific technology might seem irrelevant. But I would argue that it is very relevant when you are working towards becoming a Developer Advocate. Once you read tip #2 you will understand why, in my opinion, picking your technology is the first step.
By the way, there is a video version of this blog post. Check it out!
Once you’ve chosen your technology it’s time to freely share your knowledge with others. See why it’s important to have picked a technology? Only once you’ve done that can you start showing others how to use this technology.
I chose YouTube as the main channel to share my knowledge about Google Workspace and Apps Script. On March 17 2020 I published my very first video tutorial. From then onwards I consistently published “how to” videos every week.
I also started posting about the technology I specialized on on Linkedin, Twitter, Instagram and Pinterest. The latter two weren’t the focus of my efforts though.
Where would you like to choose your knowledge? Maybe think about which channels or mediums you like to consume information on. Choosing your favourite learning medium would be a good place to start with your posts, videos, talks, or whatever it is you want to start putting out for others to benefit from.
No matter where you share your knowledge, I would suggest doing so on a regular basis. Start with a cadence that you can stick to for months if not years. Choose one to two channels or mediums to not spread your efforts too thinly.
For almost every technology there is a corresponding community or even multiple communities you can reach out to and become a part of.
I quickly noticed that there were about a dozen Apps Script experts whose blog posts, tweets, videos, and newsletter I would keep on seeing and consuming. I started engaging with them on social media by commenting on their posts, resharing them with my followers, and so on.
Once you’ve picked your technology it’s most likely you will have already started learning from subject matter experts on whichever medium or channel you prefer. If not, have a look at Stack Overflow, Discord servers for your technology, and so on.
Why would you want to connect with the community? On the one hand this is a way to get yourself noticed and position yourself as an expert for the technology you have picked.
On the other hand it is an opportunity to contribute to the community and get to know them. If you know the members of the community, what challenges they face, and so on, you will be better equipped to help them once you are a developer advocate.
Most technology providers have expert programs that you can apply for. In my case I was nominated by a community member (see tip #3), who had seen my YouTube videos, for the Google Developer Expert program.
Research if there is an expert program for the technology you have picked and find out what the requirements are to enroll in that program. Knowing the requirements can also be a help in prioritizing which topics you want to cover or what type of content you want to create.
What are the benefits of being accepted into such an expert program? Being part of an expert program usually means that you have early access to new features, and you can give feedback concerning the program owner's products. Depending on the program it might also mean you get invited to speak at conferences and that your travel costs might be paid for by the technology provider.
Being part of an expert program also validates that you are an expert for said technology. This in turn can lead to interesting job or project opportunities for you.
This tip might sound a bit odd. But hear me out.
Although some very successful developer advocates have reached a certain level of popularity, being a developer advocate is not about becoming a celebrity. Being a developer advocate is all about having empathy for the community and wanting to help them.
In my opinion, if you have the mindset of: “I want to share my knowledge with others to help them”, you are setting yourself up for success.
If you follow every tip I’ve mentioned above it will take you X amount of time to become a developer advocate.
Well, I wish I could tell you how long it will take you. But I can’t even guarantee THAT you will become a developer advocate.
You see, I did all of the things mentioned above without having the goal of becoming a developer advocate. It turned out that what I did was great preparation for it but I didn’t know that at the time.
This is a classic case of “connecting the dots” in hindsight. It worked perfectly for me and I do believe that it can work for you too. But even if you don’t become a developer advocate you will have
become an expert for the technology of your choice
helped others through the knowledge you share
become part of a community that values you
So in my opinion you will most likely benefit from applying the tips I shared with you in this post, no matter if you become a developer advocate or not.