Reflecting on my time at Vonage

Sarcastic and old.
Search for a command to run...

Sarcastic and old.
No comments yet. Be the first to comment.
Fellow developers, have you ever wondered why some companies have an entire team dedicated to "developer relations?" This may seem like a new concept, but in reality, developer relations has been around for quite some time. In this article, we will e...

AI-driven Community Engagement

As an industry veteran, I've witnessed firsthand how the landscape of developer relations has evolved. Today, we stand at the cusp of a new era where artificial intelligence has become the driving force behind this change. In this post, I'll explore ...

The Keys to Success

Inexperienced Leadership in Developer Relations

It's my last day at Vonage today - no joke. While hard to completely grasp everything that's happened over the last couple of years, I wanted to try and take a moment and sum up everything since starting in August 2018.
One of the more forward-looking platforms used during my tenure was Firebase. I was able to spend a ton of time here learning how to use as much of the functionality that Firebase had to offer. Whether it was SMS translation, or adding two-factor authentication, the tool kit that Firebase gives you is extremely powerful, and always a consideration when I create new projects.
While easy to implement, Sentiment analysis is hard to get right and is far from perfect. However, as a general guide for intervention, it can do a good job of finding customers that may be more upset and can make that actionable. For call centers, it's a great tool.
Read my comparison - although it's a bit dusty now
Chatbots can be super fun, or really frustrating. While they can provide easy solutions to simple problems, covering all cases can be tricky, and it's easy to miss flows. Couple that with also trying to use speech transcription to match nouns and verbs programmatically, and now it's a disaster.
With the right amount of effort and planning, however, they can be extremely powerful and handle quite a lot of typical use cases. You can always push the call to a human when the script isn't working as a last resort.
You can read the tutorial for that here.
I feel like transcription is really well solved in most cases. Listening to audio and transcribing it word for word is the main function of these APIs, and they all do it efficiently and accurately. Don't be afraid to use them.
[Read another outdated comparison] (https://developer.vonage.com/blog/19/09/10/extending-nexmo-streaming-transcription-dr)
Translation, much like transcription, has been fairly well solved. Every translation API has some kind of lexicon customization to cover industry-specific terms and can cost a lot more than the base service, however, the basic level of translation is really good in general. I plan on using these more in the future as well.
One of my favorite tools in JavaScript these days is XState. The ability to define how an application should work as a state machine, and use that in any front or back end to control the flow of states - chef's kiss. I found it extremely useful with things like video, as I could create states that matched exactly what was happening with the SDK and API.
It's really a lot of fun to use - I recommend you try it out.
I built the Vonage CLI using Oclif, and I've really learned to love using oclif, CLI best practices, CLI history, and the command line itself.
Building a CLI isn't always the easiest thing to do, as it can run in so many environments, but solving these types of problems are fun for me.
While building the CLI and an updated SDK, I decided to work in a monorepo structure, using Lerna to manage the publication of the modules. I plan on writing more on how that is used in the future as well. It's a great resource, easy to understand, but hard to get started.
Last, and well, least, Typescript. I have an appreciation for types now, and while I still feel like I have a long way to go, learning Typescript has been rewarding, if not frustrating. This was one of the harder things to learn for me, but I really am better off for doing it.
Overall - it was a great learning experience. Being able to learn new things as a developer advocate is one of my favorite aspects of the job.
I'm thankful for the opportunities I've had here, and look forward to the future.