👋 Hey there! I'm David. I am a Senior Software Engineer at Chainguard 🐙. I have a strong passion for distributed systems, microservices, secure data processing systems, Go, Python, and speciality single-origin coffees.
🖥️ I’m currently a Senior Software Engineer at Chainguard. Previously, I was a senior software engineer at Bestow, and before that, I was a software engineer at Atlassian on the Jira Align and Bitbucket Cloud teams.
📰 Note: I previously went by DataDavd/datadavd online (a relic from my old data engineering days), but now use codeaucafe as my GitHub username. Also, if you see github/CSddansby come up in your searches of me that is my old Credit Sesame organization GitHub account that Credit Sesame never closed after I left. So, please ignore CSddansby as codeaucafe is now my primary GitHub username.
Background
🗻 I'm located in the Seattle area.
💻 Beyond my day job, I'm committed to continuous growth: contributing to open source (mainly Dolt lately, which is a MySQL-compatible SQL database with Git-like version control, written in Go), reading about and exploring software architecture, distributed systems, programming languages, and software design patterns, and advancing my Go proficiency.
📚 Outside of software engineering and tech, I enjoy learning French, snowboarding and hiking with my brother and friends, and traveling with my wife.
(2026-06): Fix interactive SQL shell to parse input per character instead of per line (multi-statement lines, semicolons inside quotes/comments, and empty input now behave like the MySQL client). dolthub/dolt Pull Request #11202, dolthub/ishell Pull Request #8
v1.87.0 (2026-05): Fix enforce --no-overwrite-ignore in DOLT_CHECKOUT -b via direct SQL. Pull Request #10804
v1.84.1 (2026-03): Add --no-overwrite-ignore and --overwrite-ignore to dolt checkout to abort or allow branch switches that would overwrite ignored tables. Pull Request #10549
v1.55.3 (2025-06): Add early primary key validation during table import to fail fast instead of processing entire large files with invalid primary keys. Pull Request #9349
v1.53.5 (2025-05): Add CLI feature to support importing CSV and PSV files without header rows. Pull Request #9204
v0.54.8 (2026-01): Fix DESCRIBE dolt.status syntax error by adding STATUS to the simple_ident grammar rule, which previously didn't recognize unreserved keywords as valid identifiers. Pull Request #2136
v0.54.0 (2021-11): Add in-app lakeFS documentation links on the Setup, Create a Repository (Modal), Branches, and Auth/Admin pages of lakeFS UI. Pull Request #2506
v0.48.0 (2021-08): Fix bug to correctly return error when users navigate to routes downstream from BaseURL. Pull Request #2382
Pull Request #156 (2021-07): This PR simplifies TagOptions and BranchOptions types into a single RefOptions type (since git tags and branches are both refs) and adds DeleteBranch and DeleteTag functionality.
Data Processing: Apache Spark, PySpark, Databricks
Workflow Orchestration: Apache Airflow
Big Data Query Languages: SparkSQL, HiveSQL, Presto
⌨️ Mechanical Keyboards
daily driver: Boardsource lulu ergonomic mechanical keyboard with Alpaca V2 linear switches lubed with 205g0, Deskeys V2 switch films, and official Star Wars Galactic Empire DSA keycaps from NovelKeys. What does it look like? Find out! Also, if you are interested, check out my QMK Layout.
debug keyboard: I use a Rama Dual Shot M6-C macro keyboard with the keys mapped specifically to my custom shortcuts for easy debugging. The keyboard uses Rama artisan aluminum keycaps. Also, I use Zealio V2 65G tactile switches lubed with 205g0 with Deskeys V2 switch films.
travel keyboard: Lily58 (which is what the Lulu is based upon) with the same keymap.