I'm Charles Watkins
Here’s a run-through of my background and some commonly asked questions. Let’s connect on these channels:
🤔 Who am I?
I’m a Developer Relations Engineer at Grammarly, a tech company that builds AI-powered writing tools for the digital world. When I’m not blogging on dev.to, contributing to open-source examples or projects, or live streaming, I’m looking for new places to hike with my wife in not-so-sunny Seattle, WA.
🛠 Favorite technologies, frameworks, and top programming languages:
Python (Flask/Django), Node (Express/Fastify), Vue.js, React, SQL, GraphQL, Stripe, Google Cloud Platform, Google Analytics, Google Ads
🧳 What’s my story?
You can see my resume on LinkedIn page, but here's a quick recap of what I’ve done so far:
- Developer Relations Engineer: Support developers integrating the Grammarly Text Editor SDK by writing tutorials, updating docs, building demos, and finding creative ways to improve the overall experience of Grammarly’s developer platform.
- Senior Developer Advocate: Wrote technical tutorials, built demos, and influenced the direction of Stripe’s SDKs and APIs by gathering insights and feedback from the developer community.
- Senior Integration Engineer: Led integrations of Stripe's payments solutions from architecture to code implementation for enterprise users and crafted technical content demonstrating industry best practices.
- Customer Solutions Engineer: Developed and delivered customized demos, proofs-of-concepts, and applications as a full-stack engineer.
- Customer Engineer, Data Analytics: Led technical sales process, from technology advocacy and discovery to solution briefing and prototyping, for marketing technology sales opportunities; built code samples and workshops for events showcasing marketing via the Google Cloud Platform.
- Earned a Bachelor of Science Degree
- Spent a summer semester abroad in Kenya, played IM basketball, and majored in psychology
🤝 Let's connect
To start, the best way to reach out is through LinkedIn.
I'm open to speaking at conferences, being a guest on dev live streams, and playing PC games.
If you'd like my assistance, it would help to make your request clear and provide the details in advance of a conversation.
5 reasons why your .env environment variables don't work
It's happened to the best of us. You've just started your dev server after adding in all your required environment variables to your .env file, and for whatever reason, the environment variables just aren't working.🤔 Here are a few reasons why: While some frameworks and packages come built-in support for environment variables using .env, many packages like Express.js don't.
Making sense of Stripe Checkout, Payment Links, and the Payment Element
Stripe works to make payments as easy as possible, but sometimes all the industry terms and APIs available can overwhelm the best of us. In the Stripe Fundamentals series, we tackle an essential topic in each article and explain the topic in simple terms. This week, Charles Watkins will explain the differences between three approaches to accepting payments with Stripe: Stripe Checkout, Payment Elements, and Payment Links.
Fundamentals of the PaymentIntents and PaymentMethods APIs
Understanding how online payments work can be overwhelming. Developers must learn payment industry terminology, test the APIs, and choose a revenue model in order to complete a successful transaction. To guide you on this path, we're introducing the Payment fundamentals series: A collection of articles released every few weeks where we address fundamental developer topics and explain how they work.
Testing Payments with Stripe's New Postman Collections | Postman Blog
This is a guest post written by Charles Watkins, developer advocate at Stripe. Stripe builds payments infrastructure for the internet and exposes APIs for a variety of use cases. To improve the overall developer experience, we recently launched our own team profile on the Postman Public API Network to help anyone explore our payment, billing, and identity APIs.