41554 blogs · [ { "id": "01a087d2-a27d-73d0-ac32-cc4045cee936", "title": "7 SQS Lambda ESM Scaling Behaviours", "url": "https://rehanvdm.com/blog/sqs-lambda-esm-scaling-behaviour/", "published_at": "2026-03-31T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404664c55c", "title": "Scaling ECS Fargate like Lambda", "url": "https://rehanvdm.com/blog/scaling-ecs-fargate-like-lambda/", "published_at": "2026-02-11T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc4046ae4bcb", "title": "AWS CDK Starter - Lightweight Monorepo", "url": "https://rehanvdm.com/blog/aws-cdk-starter-v2-multiple-environments-automatic-cicd-diff-pnpm-workspaces-turborepo/", "published_at": "2026-02-03T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc4047406a9a", "title": "Migrate from CDK Pipelines to CDK Express Pipeline", "url": "https://rehanvdm.com/blog/migrate-from-cdk-pipelines-to-cdk-express-pipeline/", "published_at": "2025-06-08T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc4047fb336b", "title": "CDK Express Pipeline Tutorial", "url": "https://rehanvdm.com/blog/cdk-express-pipeline-tutorial/", "published_at": "2025-03-03T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc4048654a6d", "title": "CDK Constructs for connecting AWS Lambda to Tailscale", "url": "https://rehanvdm.com/blog/cdk-lambda-tailscale-extension-and-proxy/", "published_at": "2025-01-30T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404916e235", "title": "Aurora DSQL - A NEW boring(?) AWS Serverless Postgres compatible database", "url": "https://rehanvdm.com/blog/aurora-dsql-a-new-boring-aws-serverless-postgres-compatible-database/", "published_at": "2024-12-03T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404a161518", "title": "AWS CDK starter project - Configuration, multiple environments and GitHub CI/CD", "url": "https://rehanvdm.com/blog/aws-cdk-starter-configuration-multiple-environments-cicd/", "published_at": "2024-02-26T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404ae13e8c", "title": "Should you use a Lambda Monolith, aka Lambdalith, for your API?", "url": "https://rehanvdm.com/blog/should-you-use-a-lambda-monolith-lambdalith-for-the-api/", "published_at": "2023-10-04T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404b50f14d", "title": "AWS Lambda with tRPC and separate repos using OpenAPI", "url": "https://rehanvdm.com/blog/trpc-separate-backend-frontend-with-openapi-aws-lambda-cdk/", "published_at": "2023-08-26T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404b816f41", "title": "CDK Shorts #3 – Local Bundling", "url": "https://rehanvdm.com/blog/cdk-shorts-3-local-bundling/", "published_at": "2023-06-18T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404bfb96de", "title": "Deep dive on ECS desired count and circuit breaker rollback", "url": "https://rehanvdm.com/blog/deep-dive-on-ecs-desired-count-and-circuit-breaker-rollback/", "published_at": "2023-01-31T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404c012492", "title": "Port forwarding to private infrastructure with AWS SSM or SSH", "url": "https://rehanvdm.com/blog/how-to-port-forward-to-remote-with-aws-ssm-or-ssh/", "published_at": "2023-01-08T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404ce4e4ab", "title": "Cloud Glance got rebranded", "url": "https://rehanvdm.com/blog/retro-2022-11/", "published_at": "2022-12-04T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404d21cb62", "title": "Cloud Glance's logo is generated by OpenAI's DALL-E", "url": "https://rehanvdm.com/blog/generate-a-logo-with-openai-dalle-script/", "published_at": "2022-11-24T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404e1b39a1", "title": "How to get AWS credentials(temporary) for IAM User, Role and SSO with scripts", "url": "https://rehanvdm.com/blog/how-does-cloudglance-do-aws-auth/", "published_at": "2022-11-20T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404eb024e6", "title": "A slower month", "url": "https://rehanvdm.com/blog/retro-2022-10/", "published_at": "2022-11-06T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc404f7b68b9", "title": "The launch of Cloud Glance", "url": "https://rehanvdm.com/blog/retro-2022-09/", "published_at": "2022-10-02T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc405006f3b3", "title": "How not to start a side hustle on AWS", "url": "https://rehanvdm.com/blog/how-not-to-start-a-side-hustle-on-aws/", "published_at": "2022-08-02T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc40507521eb", "title": "Using a CloudFront API Proxy to Invalidate a Single-Page Application Without Polling", "url": "https://rehanvdm.com/blog/using-a-cloudfront-api-proxy-to-invalidate-a-single-page-application-without-polling/", "published_at": "2022-06-27T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc40508f0b35", "title": "Improve DX by publishing an API SDK - a CDK Serverless example", "url": "https://rehanvdm.com/blog/improve-dx-publishing-an-api-sdk-cdk-serverless/", "published_at": "2022-05-17T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc4050e8f353", "title": "TypeScript Type Safety with AJV Standalone", "url": "https://rehanvdm.com/blog/typescript-type-safety-with-ajv-standalone/", "published_at": "2022-01-16T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc4051dd59b1", "title": "LRU cache fallback strategy", "url": "https://rehanvdm.com/blog/lru-cache-fallback-strategy/", "published_at": "2022-01-14T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc405213c378", "title": "2021 in Review", "url": "https://rehanvdm.com/blog/retro-2021/", "published_at": "2021-12-09T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc405263ae69", "title": "From monolith to resilient microservices", "url": "https://rehanvdm.com/blog/from-monolith-to-resilient-microservices/", "published_at": "2021-11-17T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc405309bcb0", "title": "Should you use microservices?", "url": "https://rehanvdm.com/blog/should-you-use-microservices/", "published_at": "2021-11-15T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc4053520f59", "title": "Difficult choices", "url": "https://rehanvdm.com/blog/retro-2021-08/", "published_at": "2021-08-30T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc4053a5bafe", "title": "CDK Shorts #2 – Parallel Deployments", "url": "https://rehanvdm.com/blog/cdk-shorts-2-parallel-deployments/", "published_at": "2021-08-11T00:00:00+00:00" }, { "id": "01a087d2-a27d-73d0-ac32-cc405470215b", "title": "The importance of validating before building", "url": "https://rehanvdm.com/blog/retro-2021-07/", "published_at": "2021-07-29T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad83cf76c8", "title": "WarpURL Day 1!", "url": "https://rehanvdm.com/blog/retro-2021-06/", "published_at": "2021-07-04T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad84c146db", "title": "CDK Shorts #1 – Consistent asset hashing (NodeJS)", "url": "https://rehanvdm.com/blog/cdk-shorts-1-consistent-asset-hashing-nodejs/", "published_at": "2021-04-05T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad85869f4f", "title": "4 Methods to configure multiple environments in the AWS CDK", "url": "https://rehanvdm.com/blog/4-methods-to-configure-multiple-environments-in-the-aws-cdk/", "published_at": "2021-01-24T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad865bd1e4", "title": "CloudFront reverse proxy API Gateway to prevent CORS", "url": "https://rehanvdm.com/blog/cloudfront-reverse-proxy-api-gateway-to-prevent-cors/", "published_at": "2020-10-20T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad865f3c79", "title": "Refactoring a distributed monolith to microservices", "url": "https://rehanvdm.com/blog/refactoring-a-distributed-monolith-to-microservices/", "published_at": "2020-07-30T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad86a86957", "title": "AWS Serverless: you might not need third party monitoring", "url": "https://rehanvdm.com/blog/aws-serverless-you-might-not-need-third-party-monitoring/", "published_at": "2020-07-08T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad87a76c64", "title": "An unexpected journey with Lambda & OracleDB", "url": "https://rehanvdm.com/blog/an-unexpected-journey-with-lambda-oracledb/", "published_at": "2020-05-19T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad882693e3", "title": "Choosing the right Database on AWS", "url": "https://rehanvdm.com/blog/choosing-the-right-database-on-aws/", "published_at": "2020-02-24T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad88b3f200", "title": "DynamoDB Importer", "url": "https://rehanvdm.com/blog/dynamodb-importer/", "published_at": "2019-11-10T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad892dea2c", "title": "3 Ways to Autoscale on AWS", "url": "https://rehanvdm.com/blog/3-ways-to-autoscale-on-aws/", "published_at": "2019-09-24T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad89c21267", "title": "13 AWS Lambda design considerations you need to know about – Part 1", "url": "https://rehanvdm.com/blog/13-aws-lambda-design-considerations-you-need-to-know-about-part-1/", "published_at": "2019-08-03T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad8a42e7c8", "title": "13 AWS Lambda design considerations you need to know about – Part 2", "url": "https://rehanvdm.com/blog/13-aws-lambda-design-considerations-you-need-to-know-about-part-2/", "published_at": "2019-08-03T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad8a7026fa", "title": "Data lakes are hard", "url": "https://rehanvdm.com/blog/data-lakes-are-hard/", "published_at": "2019-05-13T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad8ac08d02", "title": "Expanding EC2 disk space and adding monitoring with no down time", "url": "https://rehanvdm.com/blog/expanding-ec2-disk-space-and-adding-monitoring-with-no-down-time/", "published_at": "2019-04-16T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad8b4e6c7e", "title": "AWS IoT Coffee Monitor – Part 2", "url": "https://rehanvdm.com/blog/aws-iot-coffee-monitor-part-2/", "published_at": "2019-04-10T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad8c29f1da", "title": "AWS IoT Coffee Monitor – Part 1", "url": "https://rehanvdm.com/blog/aws-iot-coffee-monitor-part-1/", "published_at": "2019-04-03T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad8d225560", "title": "Debugging PHP with Xdebug, PHP Storm and AWS Elastic Beanstalk", "url": "https://rehanvdm.com/blog/debugging-php-with-xdebug-php-storm-and-aws-elastic-beanstalk/", "published_at": "2019-03-23T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad8d74c711", "title": "Serverless Wordpress", "url": "https://rehanvdm.com/blog/serverless-wordpress-blog/", "published_at": "2019-01-15T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad8e084e58", "title": "Staying in the loop", "url": "https://rehanvdm.com/blog/staying-in-the-loop/", "published_at": "2019-01-12T00:00:00+00:00" }, { "id": "01a087d2-a27e-7183-ae4e-75ad8e93f928", "title": "Programmer Responsibilities", "url": "https://rehanvdm.com/blog/programmer-responsibilities/", "published_at": "2019-01-05T00:00:00+00:00" } ] posts Claim your blog
Back to rehanvdm.com
Blog · corpus.blog/blogs/rehanvdm.com/posts

rehanvdm.com

rehanvdm.com

2026

2025

2024

2023

2022

2021

2020

2019