Hi everyone. My name is Jeff and my interests are in software engineering, DevOps, cloud architecture, big-data, and natural language processing. I have earned many cloud and data certifications. I am a software engineer at heart but enjoy cloud architecture and machine learning in addition to coding.

I am available for AWS, Google Cloud, and NLP consulting. Please contact me to discuss your project!

Recent Blog Posts

  • AWS DeepComposer and Yamaha Clavinova - The AWS DeepComposer has been around for about 2 years now. It is an AWS service that follows in the similar services of AWS DeepLens and AWS DeepRacer whose intentions are to provide fun, educational ways to learn about deep learning. AWS DeepComposer allows you to record a melody and then transform it using one […]
  • Google Cloud Professional Cloud Database Engineer - My Google Cloud certification transcript Last week, I passed the Google Cloud Professional Cloud Database Engineer. I found this to be a “fun” certification exam, if you can describe an exam as being fun! Databases are a very important part of nearly all applications. Selecting the appropriate database for a use-case is critical. Then, using […]
  • Hugging Face Transformers now enabled in Apache OpenNLP by ONNX Runtime - With my recent work to bring ONNX Runtime to Apache OpenNLP to allow the use of transformer models from OpenNLP, I wrote a blog post that was published to the Apache OpenNLP blog. The post describes how OpenNLP works with the ONNX Runtime and walks you through how to train and use a model. Check […]
  • Docker Registry credentials in AWS CloudFormation templates - With the changes at Docker Hub recently around image pulls and authentication, you might run into the situation where your AWS CloudFormation template pulls an image and receives an authorization error message. This can happen if you’re trying to deploy to Amazon ECS or just on an Amazon EC2 instance. Note that this post doesn’t […]
  • Data engineering in today’s clouds - Data is all around us. Some of it we can easily see, some of it we can’t see until we have a reason to gather it into a form that’s usable. Some data streams like weather stations stream data in constantly. Other data is generated through activities like web browsing or photographs uploaded to a […]
  • How do I get started in open source? - Last week I attended The Linux Foundation Open Source Summit North America in Austin, Texas. It’s great to see a large group of open source enthusiasts come together to share ideas and and meet each other in person. (I gave a talk there, too.) A question I hard a few times and was asked was, […]
  • Searching for the Right Words: Bringing NLP to Apache Solr through ONNX and OpenNLP - I am very excited to be presenting at this year’s Linux Foundation Open Source Summit North America! My presentation titled Searching for the Right Words: Bringing NLP to Apache Solr through ONNX and OpenNLP will talk about the new ONNX capabilities that have been introduced into Apache OpenNLP and how to utilize the functionality from […]
  • Apache OpenNLP and ONNX Models - I got started using the Apache OpenNLP project some time around 2009. I had a large amount of unstructured text that I wanted to process and I┬ádidn’t know how. As a Java programmer, Apache OpenNLP provided the tools I needed to make that large amount of text usable. Back then, the NLP options available were […]
  • Load Testing with Apache JMeter, InfluxDB, and Grafana - Apache JMeter is a great tool for load testing APIs. You can define your API requests, run your tests, and measure throughput and other metrics. Admittedly, I don’t find it to be most intuitive tool to get started with but once you get the hang of it makes sense and you start to understand why […]
  • “Let’s Build Something!” with Mike Chambers - I was recently invited to be a guest on Mike Chambers‘ (an AWS Hero) show! On this episode Mike wired together the final pieces to make his machine learning model in SageMaker available through API Gateway endpoint and a static website in S3. He did the coding live and it worked great! The small web […]
  • S3 Bucket Policy for VPC Flow Logs - If you are making a CloudFormation template and including an S3 bucket for logs you are probably setting a bucket policy. Here’s a hard to find problem. Let’s say you are configuring VPC flog logs and CloudTrail logs to go to the same logs bucket. Makes sense right? So to make that happen you make […]
  • AWS Config Conformance Packs: When TRUE is not true - In this post I want to share a problem I encountered with an AWS Config Conformance Pack in hopes it can help someone else some time. The Conformance Packs are sets of AWS Config rules to help you meet compliance with various regulations. They are available on GitHub. You can clone that repository and use […]
  • Factory Restoring the AWS DeepRacer - In a previous post I wrote about how to do a factory restore on the AWS DeepLens camera. Today we’re going to do the AWS DeepRacer! Luckily, the process is really the same. You just want to download the DeepRacer files instead of the DeepLens files. You can get the files from the AWS guide. […]
  • Free AWS Office Hours - Today I am introducing AWS “Office Hours.” Looking back at the past 10 years there have been lots of people who had an impact on me. Some of them probably have no idea but I don’t think I would have the experience today if it weren’t for their help and assistance over the years. Finding […]
  • Terraform or CloudFormation? - After the recent HashiTalks 2021 event it brought up an old debate in my mind and often in the minds of companies I work with. When to use Terraform and when to use CloudFormation? (You can read about my HashiTalks 2021 presentation.) As someone who has nearly lived exclusively in the AWS universe for the […]
  • HashiTalks 2021 - For HashiTalks 2021 I presented a Terraform project that managed the training and serving of NLP models. Built in AWS and using ECS, S3, DynamoDB, SQS, Lambda, and EventBridge, the project provides a way to do automated containerized NLP model training. You can queue a model for training by describing the model you want to […]
  • Preparing for AWS Certifications - Currently I have 11 AWS certifications. I took my first AWS certification exam back in 2014. Since then I’ve re-certified and taken well more exams than the 11 certifications shows. I get asked a lot how do you prepare for the exams? What study materials do you use? So I thought I’d try to share […]
  • So long, Elasticsearch - The open source community has been rocked by a couple of big changes recently. One of those events was when MongoDB announced a change to their licensing. Initially released under the AGPL, MongoDB changed to their own Server Side License. Why? Because MongoDB was being sold as a product by some cloud providers without contributing […]
  • AWS DeepLens Factory Restore - When getting started with an AWS DeepLens camera it can be helpful to restore the camera to its factory settings, especially if you get a second hand one. Luckily, this is a pretty easy thing to do. The instructions are documented by AWS at Restoring Your AWS DeepLens Device to Factory Settings. I will walk […]
  • I am a 2021 AWS Community Builder for Machine Learning - I was selected as a 2021 AWS Community Builder for machine learning! The AWS Community Builders program selects participants to help share AWS knowledge and resources to the community through engagements such as blog posts, code, and videos. I was selected for machine learning so you can expect to see some upcoming machine learning on […]