Sign in

Kevin Kempf

@kckempf.bsky.social
43 followers 109 following 122 posts

Software Engineer at AWS

PostsRepliesMedia
Kevin Kempf @kckempf.bsky.social · 20/08/2026
I used a domain/business glossary and RAG to improve my Langgraph SQL Agent's performance! Let me know what you think about my approach. www.grokkist.com/blog/sql-age...
grokkist.com
Reducing Ambiguity in a SQL Agent using a domain glossary and RAG
A domain glossary can give an LLM agent context it needs to finish a task, but when that is not enough to understand importance, RAG can reduce ambiguity
000
Kevin Kempf @kckempf.bsky.social · 07/07/2026
Last month I had a lot of fun writing an LLM proxy for collecting telemetry in Langfuse. I played around with writing a Text-to-SQL agent that uses that observability. This is the first post in a series about how I am using observability to improve an AI tool. www.grokkist.com/blog/sql-age...
grokkist.com
A LangGraph SQL agent with per-call observability
Building a text-to-SQL agent on top of the canonical LangGraph tutorials, then routing every model call through my own OTel-emitting proxy so I can see what it actually does
021
Kevin Kempf @kckempf.bsky.social · 07/07/2026
I think we can blame anything bad that happens in soccer on Trump, and he should henceforth be enemy #1 to USMNT. (This is not a rational thought).
000
Kevin Kempf @kckempf.bsky.social · 30/06/2026
Wild that Germany got a goal called back for running a "pick play" in the Patriots' home stadium.
000
Kevin Kempf @kckempf.bsky.social · 23/06/2026
Philadelphia treating the World Cup visitors to lightning in commemoration of Benjamin Franklin's kite experiment.
010
Kevin Kempf @kckempf.bsky.social · 11/06/2026
My Astro blog now publishes site.standard.* records to my PDS, pulls Bluesky replies as comments at build time, and uses a script to auto-link each blog post to its Bluesky thread. www.grokkist.com/blog/astro-a...
grokkist.com
Publishing the Blog to the ATProto Ecosystem with site.standard.document
How I integrated my Astro static blog with the Standard.site lexicon to publish records to ATProto with Bluesky replies as comments and Bluesky post auto-discovery
000
Kevin Kempf @kckempf.bsky.social · 09/06/2026
cdk-dms-replication v0.2.0 introduces a fluent builder for DMS-to-DynamoDB object mappings, adding compile-time type safety and synth-time validation. Now you can catch mistakes before you start your DMS run. www.grokkist.com/blog/cdk-dms...
View of Mount Greylock from Stony Ledge.
000
Kevin Kempf @kckempf.bsky.social · 05/06/2026
I wrote an LLM gateway -- yallmap -- that makes it easy to track usage data and translate Claude Code requests for local Ollama models. Please take a look, try it yourself, and give feedback or contributions on Github. www.grokkist.com/blog/yallmap/
grokkist.com
yallmap — Yet Another LLM Proxy
Building an Anthropic-native LLM gateway in TypeScript
000
Kevin Kempf @kckempf.bsky.social · 20/05/2026
When I was AWS, I migrated an Aurora MySQL database to DynamoDB with no downtime using DMS. There was no AWS CDK Construct then, so I wrote one recently and made it open source. In this post I use it to do a similar migration. www.grokkist.com/blog/migrate...
grokkist.com
Migrating From MySQL to DynamoDB Using the cdk-dms-replication Construct
Zero-downtime MySQL to DynamoDB migration using AWS DMS and a single CDK construct
020
Kevin Kempf @kckempf.bsky.social · 28/04/2026
My brother had a lot of questions about my last post about DynamoDB. My instinct was to tell him to get lost, but instead I answered his questions with this post (www.grokkist.com/blog/single-...). I may or may not have still told him to get lost.
grokkist.com
Indexes, Front End, and OLAP with DynamoDB
Answering My Brother's Questions
000
Kevin Kempf @kckempf.bsky.social · 21/04/2026
Amazon presents single table design as the preferred way to model relational data in DynamoDB. However, as I discuss in my blog post (www.grokkist.com/blog/single-...), single table design is not a default decision but the result of an analysis of your data needs.
grokkist.com
Making the Single Table Design Decision
Why I chose single table design for my DynamoDB Migration
000
Kevin Kempf @kckempf.bsky.social · 14/04/2026
I recently blogged (www.grokkist.com/blog/publish...) about deploying my first app to my K3S cluster using my internal Gitea Actions CI/CD platform on that cluster. Platform engineering is a bit outside of my usual work so I enjoyed learning the pieces that fit together to make modern software.
grokkist.com
Publishing this blog to my local K3S Cluster with Gitea Actions
Finally publishing to my cluster using Gitea Actions
010
Kevin Kempf @kckempf.bsky.social · 07/04/2026
In my newest blog post I improve my knowledge and skills at Continuous Delivery by making my K3S cluster run Github Action-like pipelines. It took a bit more work than I expected but I learned a lot and the cluster is in better shape now than it was before. www.grokkist.com/blog/publish...
grokkist.com
Setting up Gitea (GitHub-like) Actions on my K3S Cluster
All the Steps I took to get my Gitea server ready for Gitea Actions
000
Kevin Kempf @kckempf.bsky.social · 30/03/2026
One of my big goals with my local K3S instance is to set up continuous delivery, so I can apply the same best practices in my home lab that I apply in my everyday work. To that end, I added a Git Server to my local K3S. Read more on my blog. www.grokkist.com/blog/setting...
grokkist.com
Setting Up a Git Server on K3S with Gitea
Running a local git server and deployment pipeline using Gitea
000
Kevin Kempf @kckempf.bsky.social · 23/03/2026
One of those Vols pep band tuba players has a Helleberg mouthpiece. Good call, you can really blast with one of those.
010
Kevin Kempf @kckempf.bsky.social · 13/03/2026
Berlin is somehow here.
Sticker for German athletic club Hertha Berlin on a lamppost in a parking lot near Albany, New York.
000
Kevin Kempf @kckempf.bsky.social · 12/03/2026
New blog post, where I do a significantly better job of using Claude Code to help me write a web service. www.grokkist.com/blog/claude-...
grokkist.com
Making a Web Service using Claude Code - a Better Way
How I developed a Fastify API from scratch with Claude Code
000
Kevin Kempf @kckempf.bsky.social · 09/03/2026
Feels like a record of a specific moment in time.
000
Kevin Kempf @kckempf.bsky.social · 06/03/2026
My newest blog post, on using Claude Code badly: www.grokkist.com/blog/claude-...
grokkist.com
Making a Hono API using Claude Code - the Wrong Way
How I developed a Hono API from scratch with Claude Code
010
Kevin Kempf @kckempf.bsky.social · 06/02/2026
I wrote about Kubernetes again. This time just a bit about how to enable the Gateway Controller for the Traefik reverse proxy that comes with K3S. www.grokkist.com/blog/enablin...
grokkist.com
Enabling Traefik Gateway API Provider on K3S
How to enable Traefik Gateway API Provider on K3S
000
Reposted by Kevin Kempf
Daniel Wolfe @sadbumblebee.buzz · 05/02/2026
The Post was foolish enough to unleash a bevy of the world’s most talented multi-disciplinary journalists out there for their competition to scoop up. These are some of the most hard working and skilled people I know. Save this one and reshare it please! 📊
115474
Kevin Kempf @kckempf.bsky.social · 03/02/2026
I made a Raspberry Pi Kubernetes cluster and blogged about it. Not a novel concept but maybe the first one including a Headlamp deployment. www.grokkist.com/blog/my-own-...
grokkist.com
How to Build a Raspberry Pi Kubernetes Cluster
How I built a Kubernetes cluster at home using 4 Raspberry Pi computers
000
Kevin Kempf @kckempf.bsky.social · 30/12/2025
@robgg.bsky.social We lived in Germany for 2 years and this is our souvenir.
110
Reposted by Kevin Kempf
Daniel Wolfe @sadbumblebee.buzz · 14/10/2025
In June, the @washingtonpost.com sent me and @byaliceli.bsky.social to witness cultural burns in California. We learned how they encourage beneficial vegetation, reduce wildfire risk, and provide traditional food and craft sources for tribes in the Klamath region. 🎁: wapo.st/3J7BQTL
wapo.st
How indigenous practices can help protect forests
The Post followed cultural burning practices, an Indigenous tradition now permitted under California law and used to help protect forests from wildfires.
113242
Kevin Kempf @kckempf.bsky.social · 07/10/2025
I wrote about the process of setting up my own blog. Not exciting, but I learned a lot. www.grokkist.com/blog/how-to-...
grokkist.com
How I built and deployed this blog
How I built and deployed the blog, with a minimal description of Astro static site generator, AWS CDK, Cloudfront, and S3
000
Kevin Kempf @kckempf.bsky.social · 17/03/2025
Got to get her to stop reading, so she can go to school.
010
Reposted by Kevin Kempf
Daniel Wolfe @sadbumblebee.buzz · 10/03/2025
come be my editor please at @postgraphics.bsky.social! reach out with any questions and i will do my best to get back to you: washpost.wd5.myworkdayjobs.com/washingtonpo... #NICAR25 #dataviz #datavis
washpost.wd5.myworkdayjobs.com
Graphics Assignment Editor
Application Instructions Please list all professional experience and explain any gaps in employment history. All of your application materials, which may include PDF files of work samples and/or links...
044
Kevin Kempf @kckempf.bsky.social · 23/01/2025
I can't be the only person who, when I'm making a commit I'm later going to squash in rebase, uses a dumb comment like 'Hey'.
000