Serverless, Event-Driven Architecture, AWS, Kubernetes, Rust, Terraform, Security, DevOps, FinOps, MLOps, Maker
https://darryl-ruggles.cloud
https://www.linkedin.com/in/darryl-ruggles
I have learned so much the last few years from other members of this program and am really looking forward to continue sharing knowledge & experiences. (1/2)
I've said before that Eventbridge is my favourite AWS service. It can do so many things and is perfect for building Event-Drive Architectures (EDAs) on AWS. Creating rules to match events is always tedious so it's great to see a new tool to help. (1️⃣/2️⃣)
🧵
I've said before that Eventbridge is my favourite AWS service. It can do so many things and is perfect for building Event-Drive Architectures (EDAs) on AWS. Creating rules to match events is always tedious so it's great to see a new tool to help. (1️⃣/2️⃣)
🧵
GenAI tools have entered everyone's life in a big way. They can help with a lot including increase developer productivity in the hands of experienced devs. Using a spec-driven approach can help building maintainable code like with creating MCP servers. (1️⃣/3️⃣)
🧵
GenAI tools have entered everyone's life in a big way. They can help with a lot including increase developer productivity in the hands of experienced devs. Using a spec-driven approach can help building maintainable code like with creating MCP servers. (1️⃣/3️⃣)
🧵
Github Actions are great but have you ever copied a GitHub Actions workflow without really understanding what ${{ github.sha }} or ${{ secrets.GITHUB_TOKEN }} actually does? This and more is explained below including key variables and contexts. (1️⃣/3️⃣)
🧵
Github Actions are great but have you ever copied a GitHub Actions workflow without really understanding what ${{ github.sha }} or ${{ secrets.GITHUB_TOKEN }} actually does? This and more is explained below including key variables and contexts. (1️⃣/3️⃣)
🧵
Port forwarding in Kubernetes creates a secure tunnel between your local machine and cluster resources through the API server. It's useful for debugging, database access, and testing services without modifying network configurations or setting up load balancers. (1️⃣/3️⃣)
🧵
Port forwarding in Kubernetes creates a secure tunnel between your local machine and cluster resources through the API server. It's useful for debugging, database access, and testing services without modifying network configurations or setting up load balancers. (1️⃣/3️⃣)
🧵
Using managed and serverless tools is an easy way to start. Setting up an event notification system using AWS Lambda and SNS is a good example. Ingesting events through API Gateway, routing messages via SNS, and persisting logs in DynamoDB are too. (1️⃣/3️⃣)
🧵
Using managed and serverless tools is an easy way to start. Setting up an event notification system using AWS Lambda and SNS is a good example. Ingesting events through API Gateway, routing messages via SNS, and persisting logs in DynamoDB are too. (1️⃣/3️⃣)
🧵
Your most engaged customers might be your most expensive ones. Without API rate limits, that enthusiastic integration polling every 30 seconds or that broken retry loop can quietly eat your margins until the AWS bill arrives. (1️⃣/3️⃣)
🧵
Your most engaged customers might be your most expensive ones. Without API rate limits, that enthusiastic integration polling every 30 seconds or that broken retry loop can quietly eat your margins until the AWS bill arrives. (1️⃣/3️⃣)
🧵
I am a big advocate for using Infrastructure as Code (IaC) tools wherever possible they make so many things better. If you're working in AWS specifically i recommend using SAM or the CDK but in general my go-to for IaC is Terraform. Managing state is key. (1️⃣/3️⃣)
🧵
I am a big advocate for using Infrastructure as Code (IaC) tools wherever possible they make so many things better. If you're working in AWS specifically i recommend using SAM or the CDK but in general my go-to for IaC is Terraform. Managing state is key. (1️⃣/3️⃣)
🧵
Many teams use AI/ML inferencing through Bedrock or OpenAI. Another approach is hosting your own model endpoints. On AWS, options include EKS, ECS, or Lambda. Choosing between them isn't straightforward, especially when optimizing for cost and performance. (1️⃣/3️⃣)
🧵
Many teams use AI/ML inferencing through Bedrock or OpenAI. Another approach is hosting your own model endpoints. On AWS, options include EKS, ECS, or Lambda. Choosing between them isn't straightforward, especially when optimizing for cost and performance. (1️⃣/3️⃣)
🧵
Multi-agent AI systems are becoming increasingly practical for complex tasks. There are different architectural patterns being used today for how specialized agents can collaborate with each suited to specific business challenges and workflows. (1️⃣/3️⃣)
🧵
Multi-agent AI systems are becoming increasingly practical for complex tasks. There are different architectural patterns being used today for how specialized agents can collaborate with each suited to specific business challenges and workflows. (1️⃣/3️⃣)
🧵
Seeing examples always helps! Here is a straightforward example of building an app on AWS using serverless services.
Janarthanan Ravikumar uses API Gateway, Lambda, and DynamoDB. A repo is included with it to try for yourself!
Seeing examples always helps! Here is a straightforward example of building an app on AWS using serverless services.
Janarthanan Ravikumar uses API Gateway, Lambda, and DynamoDB. A repo is included with it to try for yourself!
One downside of using EC2 Spot Instances is dealing with unpredictable interruptions. Depending on your workload this may not be a problem. The example below discusses a monitoring system for visibility into interruption patterns across Auto Scaling Groups. (1️⃣/3️⃣)
🧵
One downside of using EC2 Spot Instances is dealing with unpredictable interruptions. Depending on your workload this may not be a problem. The example below discusses a monitoring system for visibility into interruption patterns across Auto Scaling Groups. (1️⃣/3️⃣)
🧵
Traditional file uploads bottleneck servers by routing everything through the backend first. A better approach IMO is using S3 presigned URLs to let clients upload directly to storage, bypassing custom backends entirely. An example of setting this up is below. (1️⃣/3️⃣)
🧵
Traditional file uploads bottleneck servers by routing everything through the backend first. A better approach IMO is using S3 presigned URLs to let clients upload directly to storage, bypassing custom backends entirely. An example of setting this up is below. (1️⃣/3️⃣)
🧵
Managing a collection of containers in Kubernetes to perform a bigger task is a common case and Argo Workflows can handle this. It's designed for running multi-step processes where tasks need to happen in sequence or parallel, with each step running its own container.(1️⃣/3️⃣)
🧵
Managing a collection of containers in Kubernetes to perform a bigger task is a common case and Argo Workflows can handle this. It's designed for running multi-step processes where tasks need to happen in sequence or parallel, with each step running its own container.(1️⃣/3️⃣)
🧵
Building apps that work to demo solutions can be done in many ways and usually quickly. Once you move into the phase of longer running and scalable approaches you have to spend more time getting it right. There are many approaches and tools you can use to help. (1️⃣/3️⃣)
🧵
Building apps that work to demo solutions can be done in many ways and usually quickly. Once you move into the phase of longer running and scalable approaches you have to spend more time getting it right. There are many approaches and tools you can use to help. (1️⃣/3️⃣)
🧵
Many security breaches stem from old IAM access keys - time bombs waiting to explode. A forgotten key from a former employee can lead to thousands in unauthorized AWS charges or enable lateral movement inside your company with catastrophic results. (1️⃣/3️⃣)
🧵
Many security breaches stem from old IAM access keys - time bombs waiting to explode. A forgotten key from a former employee can lead to thousands in unauthorized AWS charges or enable lateral movement inside your company with catastrophic results. (1️⃣/3️⃣)
🧵
The tools are in AWS to build resilient, scalable architecture. Whether you need to survive single server failures, Availability Zone outages, or even regional ones - it's up to you to design it. Your requirements dictate the approach. (1️⃣/3️⃣)
🧵
The tools are in AWS to build resilient, scalable architecture. Whether you need to survive single server failures, Availability Zone outages, or even regional ones - it's up to you to design it. Your requirements dictate the approach. (1️⃣/3️⃣)
🧵
Running EC2 instances 24/7 for batch jobs that only work a few hours daily is expensive. I've seen this pattern repeatedly and it's a real waste. So many teams are paying for idle capacity most of the time. There are better approaches with some described below. (1️⃣/3️⃣)
🧵
Running EC2 instances 24/7 for batch jobs that only work a few hours daily is expensive. I've seen this pattern repeatedly and it's a real waste. So many teams are paying for idle capacity most of the time. There are better approaches with some described below. (1️⃣/3️⃣)
🧵
Using containers on AWS without having to pay for a control plane (like with EKS) makes it easy to run workloads with variable uptimes. If you don't need full Kubernetes then the best approach for this on AWS is using the Elastic Container Service (ECS). (1/2)
Using containers on AWS without having to pay for a control plane (like with EKS) makes it easy to run workloads with variable uptimes. If you don't need full Kubernetes then the best approach for this on AWS is using the Elastic Container Service (ECS). (1/2)
Using managed services to solve problems in your cloud account typically offers quick wins for little cost. Monitoring and observability tooling is where these shine IMO. The example below relates to database performance with spikes in demand. (1️⃣/3️⃣)
🧵
Using managed services to solve problems in your cloud account typically offers quick wins for little cost. Monitoring and observability tooling is where these shine IMO. The example below relates to database performance with spikes in demand. (1️⃣/3️⃣)
🧵
Storing API keys and passwords directly in Kubernetes manifests is still common practice, but it's a security risk waiting to happen. Secrets get committed to Git, rotation stays manual, and access tracking becomes nearly impossible at scale. (1️⃣/3️⃣)
🧵
Storing API keys and passwords directly in Kubernetes manifests is still common practice, but it's a security risk waiting to happen. Secrets get committed to Git, rotation stays manual, and access tracking becomes nearly impossible at scale. (1️⃣/3️⃣)
🧵
Understanding how containers and Kubernetes works is a great skill today. Many people see what is needed to setup a cluster and get scared but there are quick and simple solutions to start with and learn. One of my go-tos for this is Kind (Kubernetes in Docker). (1️⃣/3️⃣)
🧵
Understanding how containers and Kubernetes works is a great skill today. Many people see what is needed to setup a cluster and get scared but there are quick and simple solutions to start with and learn. One of my go-tos for this is Kind (Kubernetes in Docker). (1️⃣/3️⃣)
🧵
Using managed services on AWS is convenient for many cases and they have a number of AI/ML based services targeted for common use cases. These were around before the GenAI crazy and still offer a good value. As with anything though - costs can get out of hand. (1️⃣/3️⃣)
🧵
Using managed services on AWS is convenient for many cases and they have a number of AI/ML based services targeted for common use cases. These were around before the GenAI crazy and still offer a good value. As with anything though - costs can get out of hand. (1️⃣/3️⃣)
🧵
Instrumenting code for observability can be tedious. There is a lot of boilerplate and manual work. You can use auto-instrumentation but this isn't supported for many cases. OpenTelemetry eBPF Instrumentation may be able to help. (1️⃣/3️⃣)
🧵
Instrumenting code for observability can be tedious. There is a lot of boilerplate and manual work. You can use auto-instrumentation but this isn't supported for many cases. OpenTelemetry eBPF Instrumentation may be able to help. (1️⃣/3️⃣)
🧵
S3 has to be the most widely used cloud service. Most people think of it as just an endless network storage service. It can do a lot more though and can also end up costing a lot of money if you don't understand how it works and the pricing model. (1️⃣/3️⃣)
🧵
S3 has to be the most widely used cloud service. Most people think of it as just an endless network storage service. It can do a lot more though and can also end up costing a lot of money if you don't understand how it works and the pricing model. (1️⃣/3️⃣)
🧵