My First Six Months as a Staff Developer Advocate at TBD

My First Six Months as a Staff Developer Advocate at TBD

Table of Contents

Undervaluing Myself
The Epiphany
Self-Doubt
Happiness
TBD’s Projects

What I’m Working On

Livestream
Treating Docs as Code
Learning New Programming Languages
Experimental Writing
Helping Developers

Outside of Work
Challenges
The Definition of a Staff Developer Advocate

Undervaluing myself

Six months ago, I left my dream job as a Developer Advocate at GitHub—a role where I was thriving and deeply fulfilled—to become a Staff Developer Advocate at TBD, a business unit within Block. On paper, this career jump is illogical because I was a mid level Developer Advocate at GitHub, but it was an opportunity for me to stop underestimating my potential.

Since 2016, I have confined myself to junior roles:

Junior Help Desk Technician at 2 different companies
Junior Software Engineer intern at 2 different startups
Junior Software Engineer at 3 different companies
Junior Developer Advocate at GitHub, then promoted to Mid Level

Watching my peers from the same cohorts in coding bootcamps and college—including my husband—advance to more senior roles made me question my stagnation. After 7 years of working in various technical roles, why did I feel stuck?

The obvious argument is that everyone moves at their own pace, and I wasn’t always staying at companies long enough to earn seniority. Here’s my counterargument: While junior developers at larger companies often specialize in narrow areas on teams that focus on specific components, my startup experience allowed me to:

navigate the entire codebase
build multiple products from scratch
manage releases,
set up automated testing suites

And I exceeded expectations in nearly every role (except for one or two roles).

Beyond technical skills, I refined my developer education and leadership skills by co-founding and teaching a coding bootcamp for women and non-binary people of color. I ran the program for 4 years.

The epiphany

Then it hit me; the barrier was self-imposed:

My interview skills could be better. Although I think I’m “bragging” about my achievements in interviews, I always get feedback that I undersold myself.

I’ve experienced unconscious bias at one company that set me up for failure. This experience made me wary of pursuing roles where I might fail.

At GitHub, the transparency around the significant impact of my work, both internally and externally, helped me recognize my competence and self-worth.

I knew I could bring the following skills into a role that was senior level or above:

Coding
Leading by example
Quietly setting and raising team standards
Collaborating across teams
Solving problems proactively
Shaping and leading DevRel initiatives
Thought leadership for emerging technologies
Maintaining high productivity and efficiency
Growing communities through active listening
Continuous learning

Self-doubt

Advocating for a Staff position felt right, yet signing the offer letter introduced feelings of self-doubt:

Why would I leave a position where I felt both successful and valued?

Was I ready for the responsibilities of a Staff level role, especially without direct experience in senior positions?

What exactly do Staff Developer Advocates do?

My role at GitHub wasn’t deeply technical, so I wondered if some of my technical skills atrophied over time, and I wasn’t sure if I could keep up at TBD.

DevRel varies significantly across companies. Could I succeed in an environment different from GitHub’s?

Did I comprehensively understand TBD’s mission, and did I truly believe in it?

I leaned on trusted friends and colleagues for advice. They strongly supported my career progression, but there was a shared concern: I was a rising star at a company with an established and positive reputation. Meanwhile, they felt there were a lot of unknowns surrounding TBD. They reminded me that I’d be stepping into a less understood space, and I needed to make sure I’d be happy.

Happiness

I’m happy at this job because:

There’s a lot of psychological safety on my team (thanks to Angie Jones, my manager)
My teammates and I perfectly balance each other out. We’re always helping each other succeed.
My hard work is recognized
The projects are satisfyingly challenging. I don’t want to work on things that are too easy or too hard. These projects are hard enough that they push me to the next level without making me want to quit.
I’m learning how to deprioritize work for my own interests. This is still a work in progress .

TBD’s projects

My friends and my developer communities don’t quite understand what TBD is working on. And I don’t like the narrative, “I don’t know what they’re doing over at TBD,” so I’ll briefly explain.

We’re not working on cryptocurrency, and we’re not working on blockchain (although, I guess, we’re slightly blockchain adjacent). We are working with cryptography. Here’s how I would describe our initiatives:

Making global payments easy – We recognize that much of technology is U.S. centric. We’ve proudly contributed to making money exchange easy within the U.S. through platforms like CashApp. Now, we’re striving to expand this accessibility worldwide with the development of the tbDEX SDK. At its core, tbDEX is an open source messaging service. Developers can use it to build applications that power global money exchange.

Modernizing ID management – Along with other organizations, we’re part of a collective to leverage W3C standards to reduce reliance on passwords or physical identification cards. In the future, we’re working on creating a world where it will be popular to store IDs and credentials on your cellphone via Verifiable Credentials, Decentralized Identifiers, and Agents.

Introducing data portability – We built the Web5 SDK to empower developers to create web apps where users can keep their data private and easily migrate data from one platform to another.

While many companies in this space use blockchain for data storage, we use our own invention –Decentralized Web Nodes. Many companies in this space use blockchain to anchor their DIDs. Instead, we made our own DID method and anchored it on BitTorrent.

What I’m working on

Here’s a few projects I’ve enjoyed working on:

Livestreams

I started a weekly Friday livestream. For the first few weeks, the livestream often featured my coworker Ace and I exploring the codebase, reading the documentation, building with the SDK, and debugging our applications on Twitch. It quickly evolved into a livestream where we bring industry experts from companies like Okta and Accenture to help us learn more about identity and global payments. And our community loves the show.

Treating docs as code

Before this job, I never really had to contribute to external documentation. I love the way TBD treats documentation as code. Code snippets are heavily tested. We have a ton of reusable components.

We talked about our strategy here with the Head of Open Source on this livestream:

And I’m getting positive feedback on my PRs:

Learning new programming languages

To support our SDKs, I learned Kotlin and Swift.

Here’s one of my first Kotlin PRs:


Fan Club VC with Kotlin snippets

#1212


What type of PR is this? (check all applicable)

[ ] ♻️ Refactor
[ ] ✨ New Feature
[ ] 🐛 Bug Fix
[x] 📝 Documentation Update
[ ] 👷 Example Application
[ ] 🧑‍💻 Code Snippet
[ ] 🎨 Design
[ ] 📖 Content
[ ] 🧪 Tests
[ ] 🔖 Release
[ ] 🚩 Other

Description

This PR adds kotlin code snippets to the Fan Club VC workflow. I already had this PR opened but it had a whole bunch of unnecessary changes or conflicting changes because it’s been sitting here, so I just closed it and created a fresh PR.

Related Tickets & Documents

Resolves #

Mobile & Desktop Screenshots/Recordings

Added code snippets?

[x] 👍 yes
[ ] 🙅 no, because they aren’t needed

Added tests?

[x] 👍 yes
[ ] 🙅 no, because they aren’t needed
[ ] 🙋 no, because I need help

No tests? Add a note

Added to documentation?

[ ] 📜 readme
[ ] 📜 contributing.md
[ ] 📓 general documentation
[ ] 🙅 no documentation needed

No docs? Add a note

[optional] Are there any post-deployment tasks we need to perform?

[optional] What gif best describes this PR or how it makes you feel?

To see the specific tasks where the Asana app for GitHub is being used, see below:

https://app.asana.com/0/0/1206268818053074

Here’s one of my first Swift PRs:


Receive Quotes Swift Code snippets

#1327


What type of PR is this? (check all applicable)

[x] 📝 Documentation Update
[x] 🧑‍💻 Code Snippet

Description

This PR adds code snippets for receive codes using the Swift SDK

Related Tickets & Documents

Resolves #

Mobile & Desktop Screenshots/Recordings

Added code snippets?

[x] 👍 yes
[ ] 🙅 no, because they aren’t needed

Added tests?

[x] 👍 yes
[ ] 🙅 no, because they aren’t needed
[ ] 🙋 no, because I need help

Finally

To see the specific tasks where the Asana app for GitHub is being used, see below:

https://app.asana.com/0/0/1206684984656458

I love Kotlin, and I’m determined to gain a love and understanding for Swift. I’m looking forward to learning Go, Dart, and Rust.

Experimental Writing

I love writing. If I don’t have an opportunity to write, I’ll create it. I have a not-so-weekly newsletter called Last Week I Learned Web5, where I chronicle what I learned that week.

I am also experimenting with illustrated blog posts. I use storytelling to explain Web5 concepts as I understand them. Then, my talented sister illustrates them.

Helping developers

We have a robust community of builders. When I joined the company, we hosted back-to-back Hackathons between November and January. I helped hackathon participants debug their applications and understand different concepts so they could submit their projects. As a result, I gained expertise in our SDKs and understand how to use them with various frameworks.

Outside of work

(I kinda love working). But I want to live a balanced life where I do more than work. I’ve invested more time into my life outside of work by:

Going to therapy

Consistently going to the gym

// Detect dark theme
var iframe = document.getElementById(‘tweet-1743671289435377883-268’);
if (document.body.className.includes(‘dark-theme’)) {
iframe.src = “https://platform.twitter.com/embed/Tweet.html?id=1743671289435377883&theme=dark”
}

Attending concerts

// Detect dark theme
var iframe = document.getElementById(‘tweet-1764157260735873530-771’);
if (document.body.className.includes(‘dark-theme’)) {
iframe.src = “https://platform.twitter.com/embed/Tweet.html?id=1764157260735873530&theme=dark”
}

Reconnecting with friends

// Detect dark theme
var iframe = document.getElementById(‘tweet-1676911014309183490-29’);
if (document.body.className.includes(‘dark-theme’)) {
iframe.src = “https://platform.twitter.com/embed/Tweet.html?id=1676911014309183490&theme=dark”
}

Challenges

Self-Sovereign Identity and FinTech is a new space for me. I’m still learning how to:

Align my messaging to developers with the company’s messaging
Confidently explain concepts in a way that people can understand without overwhelming them
Prepare myself to answer unexpected questions after conference talks
Manage my time more effectively, so I can build out more educational tools for the community like AI assistants or video coding tutorials.
Getting my conference talks accepted and making my talks resonate with the audience. I used to have a popular talk called Level up with Copilot, but that’s unrelated to my job now.
Review PRs better

Developer Advocacy can be a demanding job, so I’m working on:

Being present and committing to less; I often agree to too many things especially when I’m feeling outgoing, then my introversion and overwhelm sets in, and I get flaky.

The Definition of a Staff Developer Advocate

After working as a Staff Developer Advocate for 6 months, I still find the exact requirements of a Staff Developer Advocate elusive. Similar to DevRel roles, the expectations for Staff level positions seem to vary across companies and individuals.

I aim to redefine the role of Staff to suit my goals: to make organizational and industry-wide impacts and to empower the team—and potentially the entire company—to succeed. I want to be a team enabler. I’m thinking I can start off by establishing my presence in this space, while also helping my coworkers shine and helping my manager lead initiatives.

My coworker Lam shared this resource with me about Staff Engineering Archetypes. I put my performance review into ChatGPT along with the archetypes guide, and ChatGPT said I display traits where I would thrive as an Architect archetype. I don’t know how accurate that is, but I found it interesting.

They describe an Architect as such:

“The Architect is responsible for the direction, quality, and approach within a critical area. They combine in-depth knowledge of technical constraints, user needs, and organization level leadership.”

Here’s a conversation I had with Cecil Phillip, one of my mentors and a Staff Developer Advocate at Stripe, about this topic:

// Detect dark theme
var iframe = document.getElementById(‘tweet-1764690706705289497-104’);
if (document.body.className.includes(‘dark-theme’)) {
iframe.src = “https://platform.twitter.com/embed/Tweet.html?id=1764690706705289497&theme=dark”
}

What does Staff level mean to you? What does it look like in Developer Relations?

Leave a Reply

Your email address will not be published. Required fields are marked *