Developing Express.js-based Serverless Framework APIs

Today is the third installment of my Twenty Projects in Twenty Days series! We’ll be following up from yesterday’s post on creating a serverless Flask API on AWS by doing the same thing with Node.js and Express.js!

We’ll be using Express.js, Amazon Web Services, and the Serverless Framework to create a survey API to manage the same three entities as yesterday:

  • Customers
  • Surveys
  • Survey Responses

We’ll also be using the same data storage architecture as last time by using an Amazon DynamoDB table. Similarly, we’re keeping around the same Amazon API Gateway and AWS Lambda architecture. So let’s get to it!

Developing Flask-based Serverless Framework APIs

It’s day 2 of my Twenty Projects in Twenty Days series! Let’s look at how we can create a simple API using Python, the Flask Microframework, Amazon Web Services, and the Serverless Framework. This API will help us to manage three different entities:

  • Customers
  • Surveys
  • Responses (to the surveys)

We’ll be storing all this data inside of an Amazon DynamoDB table, making the API endpoints accessible with the Amazon API Gateway, and using AWS Lambda to interact with the DynamoDB table and manage our entities.

Tech Pay Rates revisited.

For the first installment of my Twenty Projects in Twenty Days series I wanted to take a look back at Tech Pay Rates. I started this project around the same time I started looking for fulltime work about a year ago and I think it’s a classic example of an Minimum Viable Project (not product, as I’m not selling anything here!).

The goal of the project was to help promote the trend of disclosing industry information surrounding salary in order to promote pay transparency and pay equity. To do this, I built a project to let workers post their salary information and search through other salaries. If you’d like a look, go ahead and check out Tech Pay Rates. Full disclosure, it’s been a while since I’ve advertised for it so the salaries are out of date - feel free to add your own!

So let’s look at how it was put together.

Twenty Projects in Twenty Days

This May, I’ll be sharing 20 different starter projects that I’ve built using different AWS services, Serverless technologies, Python, Node.js and more! If you’d like to get these projects in your inbox, you can sign up for my mailing list here.

After signing up, you’ll get blog posts delivered to your inbox with the following:

  • Every project’s source code
  • An accompanying blog post tutorial for the project
  • Access to a live version of the project (if one exists)
  • A free 30-day trial to all of my Pluralsight.com courses (reply to the first welcome email and I’ll send a unique trial code your way)

You can check back on this blog post throughout the month - I’ll update it with links to everything. Now let’s take a look at the calendar of different projects you can expect to see this month!