Learn how to configure an Amazon CloudFront Distribution with multiple origin S3 buckets.

Amazon CloudFront with multiple origin S3 Buckets


  • CloudFront distribution and S3 buckets created.
  • S3 Buckets are private.
  • CloudFront OAI configured to allow bucket access only via CloudFront.

Below is an example Bucket Policy with OAI configured and strictly enforces SSL communication.
Note: change the bucket name as per your bucket resource name.

"Version": "2012-10-17",
"Statement": [{
"Sid": "Enable Encrypted communications",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::bucket1/*",
"Condition": {
"Bool": {
"aws:SecureTransport": "false"…

Learn how to generate the signature required for Alipay Payment APIs using NodeJS.

The first step to integrate Alipay to your application is to figure out how to generate the signature needed for authorisation when calling any Alipay Payment API.

Photo by Markus Winkler on Unsplash

Why is this a difficult task? Isn't it just a signature?
Well trust me, there is no proper documentation out there that explains how to generate this signature accurately.

Please double-check with the latest documentation if you are viewing this article much later than a year of writing this blog —
April 2021.

Alipay Cashier Payment Request — Sample…

Learn how to set up a Snowplow real-time analytics pipeline in your AWS environment.

Snowplow is ideal for data teams who want to manage the collection and warehousing of data across all their platforms in real-time.

Snowplow Real-Time Pipeline


  • To set up a real-time pipeline using Snowplow open-source.
  • To verify the end to end working of Snowplow Analytics pipeline from data collection to data storage.
  • Note: this article covers setting up end to end Snowplow pipeline for use as Proof of Concept (POC) or for Non-Production environments only.
  • For Production environments, suggest configuring autoscaling group of higher-powered instances or ECS containers.

If you…

Learn how Snowplow is different from GTM or Tealium and how you can integrate Snowplow with GTM or Tealium.


Snowplow with GTM

  • Snowplow is an analytics platform.
  • Snowplow Analytics is an open-source enterprise event-level analytics platform that enables the data collection from multiple platforms for advanced data analytics.
  • Snowplow is for companies who demand high-quality, real-time event data, delivered by a cloud-native data pipeline they fully control.
  • Snowplow customers mine and visualize data using Business Intelligence tools such as Looker and Tableau, and statistical and modelling tools like R and pandas.
  • GTM is a tag manager.
  • GTM console is a web interface that…

Let us compare Snowplow Analytics with MixPanel to choose the right solution for your analytics use case.

Snowplow and MixPanel

Both Snowplow and Mixpanel are analytics platforms.

Snowplow is an open-source alternative to Mixpanel.

Actions speak louder than page views.
Mixpanel is an advanced analytics service that helps improve web and mobile applications by tracking how users interact & engage with them.

What is Snowplow?
Enterprise-strength web, mobile, and event analytics, powered by Hadoop, Kinesis, Redshift and Elasticsearch. Snowplow is also available as open source.

Let us identify the right E2E testing framework for JavaScript-based client applications and propose an effective E2E testing process in the end.

Photo by Ferenc Almasi on Unsplash

What is End-to-END (E2E) testing?

End-to-End (E2E) testing is a technique used to test whether the flow of an application right from start to finish is behaving as expected.

In simple terms, a software testing methodology to test an application flow from start to end.

The purpose of performing end-to-end testing is,

  • To identify system dependencies.
  • To ensure that data integrity is maintained between various system components and systems.
  • To simulate the real user scenario.

Why E2E testing?

  • Test the complete flow of an application.
  • Mimic…

Learn how to build a simple interactive Slack bot using AWS Serverless technologies.

Let us first set up the Serverless Slack Bot in AWS

Serverless Slack Bot

Below Github repository contains the code for a simple serverless slack bot configured using serverless framework.

Github URL: https://github.com/aswinkumar4018/serverless-slack-bot

1. CLI access to an AWS Account.
2. IAM user or role access to create and execute API Gateway & Lambda.

Step 1: Clone the serverless-slack-bot Github repository.

Step 2: Install the Serverless CLI globally. https://www.serverless.com/framework/docs/getting-started/

Step 3: Configure your AWS CLI credentials in ~/.aws/credentials.

Step 4: Create a file named config.dev.json in the cloned project directory.

Learn what is GraphQL, Serverless, AWS AppSync and how they can be combined to build a Serverless GraphQL application with AWS AppSync and deployed using Serverless framework.

What is GraphQL?

How GraphQL works

GraphQL is basically two things in one name.

  • A simple query language for APIs
  • A server-side runtime to automatically parse and resolve those queries
  • Designed by Facebook in 2012, Open-sourced in 2015
  • http://graphql.org

Learn everything about Snowplow Analytics ranging from tracking, collection of events to validation, enrichment and storage of events data.

Snowplow Insights

Snowplow is ideal for data teams who want to manage the collection and warehousing of data across all their platforms in real-time.

Learn how to setup AWS API Gateway as a proxy to AppSync.

But why need a proxy to AWS AppSync?


  • AWS AppSync does not support Rate Limiting OOTB.
  • AWS AppSync does not support installing an SSL certificate without having to use a CloudFront Distribution.

Worry not! API Gateway can be used as the perfect proxy for the GraphQL requests to AppSync and it supports rate limiting and installation of SSL certificates.

How to integrate API Gateway as a proxy to AWS AppSync?

Approach 1:

Routed through AWS network: AWS Service Integration (recommended)

Step 1: Create API in API Gateway

Lead full-stack engineer — AWS, GCP Certified Solutions Architect working at Presidio with love & experience in building cloud-native applications.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store