Hi, I'm Kevin Kempf

I stumbled into software engineering as part of my graduate work in Geography. I never did finish that masters degree, but I found a career.

I was most recently a Software Engineer at AWS, on a team in the Proserve org that develops and maintains internal tools for AWS Prescriptive Guidance and Portfolio Migration. My day-to-day work was writing IaC and application code for React web applications with Node.js Lambda microservice backends.

Highlights of my time at Amazon include:

  • Migrating a database from AWS Aurora MySQL to Amazon DynamoDB.
    • I wrote a new data access package using the repository pattern to ease the transition and abstract the database implementation from the application layer
    • To discourage table scans I did not include the scan functionality in the package at all.
    • I re-modeled the existing relational data model for the site to use a Single Table design on DynamoDB.
    • To physically move the data from one database to the other I used Amazon DMS, which doesn't have a higher-order AWS CDK construct, so I wrote that, too.
    • The repository package is now the canonical way for the team to do data access in DynamoDB
    • The AWS CDK construct is the canonical way to build the IaC infastructure for migrating from Aurora MySQL to DynamoDB for the team.
  • Writing a javascript retry wrapper for asynchronous external calls
  • Serving as an "AI Champion" to promote and support use of Amazon Q Developer (now named Kiro) within our team; we held and maintained a 100% adoption rate during the transition period

If you'd like to know more about my work, check out my LinkedIn linkedin and GitHub github profiles.