Spending hours lost in a rabbit hole of fragmented forum posts and unresolved code issues, trying to build a solution that didn’t yet exist, was the start of my journey. It led me to becoming what I am today: a Developer Advocate.
Essentially, I act as a “Human API” for the developer community, taking complex product architectures and technical specifications and turning them into knowledge that is easy for others to use and understand. At least, that’s how I define what we, the ‘Developer Avocados,’ do.
My journey started with my first public code repository: a simple Python library that connected to a Cisco Unified Communications Manager (CUCM) server and performed operations on phone lines, partitions, and calling search spaces.
At the time, I was part of the CX Professional Services team in Mexico City, working with Cisco Collaboration technologies. That library was not just a side project. It was the result of countless hours of trial and error to make automation work in an environment with limited documentation and very little community guidance. I felt like Alice traveling down the rabbit hole to Wonderland. There were no complete tutorials, no clear examples, and no LLMs to fill the gaps, only fragmented forum posts and unresolved issues — and pure experimentation.
I celebrated every single little success, just to be reminded that I was on a tight deadline with customer. What kept me going were those little a-ha! moments every now and then, along with the joy of uncovering something new.
Eventually, through persistence and reverse engineering, I built a solution that automated some of the most common customer tasks. But once it worked, I realized I couldn’t just keep it to myself. Others were likely facing the same frustrations! After confirming there were no conflicts of interest, I published a royalty-free version of the core code along with tutorials and examples. I felt a deep sense of pride in that moment. It made me feel useful in a way that went beyond the role I was being paid for and was my way of making a tiny, yet meaningful contribution to the coders out there, helping them avoid the same pain I had just navigated.
That desire to share knowledge became even clearer at my first in-person Cisco Live, where I presented at the DevNet Theater. You might expect some nerves with a big opportunity like this, but for me, it was quite the opposite — I felt like a fish in water. I found myself reading the room, adjusting my speech in real-time based on the audience’s reactions. I learned to lean into the “vibe” and how to snap people back into the moment if I felt them drifting. Being in front of a live audience, showcasing a project built with Node.js, Google Dialogflow, and Cisco Contact Center made me realize how much I enjoy helping others learn through real, working examples.
Then, my journey took a literal leap across the ocean. I joined the Software and Automation (SAO) team in Lisbon, Portugal, developing software-based solutions for Enterprise and Service Provider customers. The move was a massive life change, but one that Cisco and my fellow Cisconians supported and walked me through every step of the way. Alongside my new role, I continued sharing real-world engineering experiences through talks, demos, and tutorials, focusing on practical lessons learned rather than idealized scenarios.
(Want to hear more about how I traded bolillos for pastéis de nata? You can read the full story of my move to Lisbon here!)
More recently, I have had the opportunity to do this full-time as part of DevNet. DevNet is the organization within Cisco dedicated to making coding and automation across our products accessible to everyone. Within DevNet, the DevRel team builds community and delivers technical content through blog posts, videos, tutorials, and public code repositories. As a Developer Advocate, this is exactly where my experience and passion come together.
Today, I share practical tips with the DevNet community across multiple formats, from guidance on building effective development environments to a video series on making the most of tools like Cisco RADKit with the power of coding and AI. I also engage with students and engineers through university masterclasses and technology events in multiple countries.
But moving into this role required me to completely rewire my brain. Suddenly, my “customer” wasn’t a specific account anymore, and my “deliverable” wasn’t a report or a code deployment. I traded fixed deliverables for a much broader, more creative way of generating value.
My customers are now the global IT community, and while there’s less traditional pressure, the responsibility feels even bigger. The goal is balancing usefulness, improvement, and innovation, while working closely with Cisco business units to provide the right context for new capabilities. It’s an amazing opportunity, but it’s also a shift in mindset — there’s no one telling me exactly what to do. I’m the one hunting for the next big idea that will truly help developers! But whether through DevNet sandboxes or public repositories with complete use cases and tutorials, the focus remains the same: making Cisco code easy, joyful, and accessible to everyone.
To explore my work and that of my fellow Developer Avocados, visit the DevNet YouTube channel and follow DevNet on social platforms. For everything DevNet-related, developer.cisco.com is the best place to start.
I’m always looking to connect with the community, so if you see me at places like Cisco Live, other tech industry events, or anywhere online, say hi! I’d love to hear about your own “rabbit hole” moments and how you’re using code to change the world.
For now, merge request approved: My journey as a developer advocate is now live in production!
Are you ready to turn your technical passion into a global impact? Explore careers at Cisco!

