This is a special episode recorded live during a live coding session on YouTube (2022-09-16). The audio-only experience might not be the best one, so if you are curious to see the video and enjoy our diagrams and screen sharing, please check this episode on YouTube: https://www.youtube.com/watch?v=vVic3oqqqfY . How can you build a WeTransfer or a Dropbox Transfer clone on AWS? This is our fourth live coding stream. In this episode, we started looking into adding some security to our applic...
Sep 17, 2022•2 hr 31 min•Ep 51•Transcript available on Metacast This is a special episode recorded live during a live coding session on YouTube (2022-08-31). The audio-only experience might not be the best one, so if you are curious to see the video and enjoy our diagrams and screen sharing, please check this episode on YouTube: https://www.youtube.com/watch?v=hlW_RwRgskI How can you build a WeTransfer or a Dropbox Transfer clone on AWS? This is our third live coding stream. In this episode, we made our lambdas better by adding observability best pract...
Aug 31, 2022•2 hr 47 min•Transcript available on Metacast This is a special episode recorded live during a live coding session on YouTube (2022-08-24). The audio-only experience might not be the best one, so if you are curious to see the video and enjoy our diagrams and screen sharing, please check this episode on YouTube: https://youtu.be/4wCX32YUtMk How can you build a WeTransfer or a Dropbox Transfer clone on AWS? This is our second live coding stream. In this episode, we revisited our architecture and added a custom domain to our APIs, and cr...
Aug 24, 2022•2 hr 44 min•Transcript available on Metacast This is a special episode recorded live during a live coding session on YouTube (2022-08-17). The audio-only experience might not be the best one, so if you are curious to see the video and enjoy our diagrams and screen sharing, please check this episode on YouTube: https://www.youtube.com/watch?v=EfRElTYilyY How can you build a WeTransfer or a Dropbox Transfer clone on AWS? This is our first live coding stream. In this episode, we started a new challenge: building a product live on AWS! &...
Aug 19, 2022•2 hr 49 min•Transcript available on Metacast In this special episode we announce our next initiative: starting some YouTube coding live streams where we build something on AWS. Specifically we are going to build a file transfer service, just like WeTransfer or Dropbox Transfer! In this episode we announce why we decided to start this, the logistic and some of the details of the product we are going to build. We are really looking forward to pairing with you all live on this build! Make sure you are subscribed to our YouTube channel so you ...
Jul 28, 2022•10 min•Ep 47•Transcript available on Metacast The public cloud gives you amazing machine learning powers with a low barrier to entry. Once you know where to begin, you can quickly build solutions to process images, video, text and audio, as well as structured data. In this episode we talk about the managed AI services that are available on AWS and that require zero machine learning expertise (Rekognition, Polly, Transcribe, Forecast, Personalise, Comprehend, Lex, Textract, Translate). We will also talk about services you can use to create a...
Jul 21, 2022•24 min•Transcript available on Metacast If you are thinking of using an external CICD tool to deploy to AWS you are probably wondering how to securely connect your pipelines to your AWS account. You could create a user for your CICD tool of choice and copy some hard coded credentials into it, but, let’s face it: this doesn’t feel like the right - or at least the most secure - approach! In the previous episode we discussed how AWS and GitHub solved this problem by using OIDC identity providers and this seems to be a good solution to th...
Jul 14, 2022•27 min•Transcript available on Metacast Automated, Continuous Build and Continuous Delivery are must-haves when building modern applications on AWS. To achieve this, you have numerous options, including third party providers like GitHub Actions and Circle CI, and the AWS services, CodePipeline and CodeBuild. In this episode we focus on GitHub Actions and we compare it with the native AWS features offered by services like CodePipeline and Code Build. In particular we discuss what CodePipeline offers and how to set it up, what the trade...
Jul 07, 2022•29 min•Transcript available on Metacast We do love AWS, but sometimes we have to admit that it’s not always a silver bullet. There are definitely use cases where it might be worth considering alternatives to AWS. In this episode we will discuss some of these use cases and try to highlight what are the advantages that other platforms or services can have over AWS in very specific circumstances. First of all we clarify why we like AWS and why (and when) it’s worth sticking with it. Then, we discuss what are some of the reasons why it mi...
Jun 30, 2022•26 min•Transcript available on Metacast We recently talked about migrating a monolithic application to AWS, using EC2, load balancers, S3 and RDS. In this episode we want to talk about a slightly different setup, where we are going for containers instead of EC2 and we want to deploy them in Fargate. In this We are going to cover all the components you will need in your architecture, the reasons to choose Fargate over any alternatives and discuss some CDK tricks to get started in a quick way (and the pitfalls that might come with them)...
Jun 23, 2022•19 min•Ep 42•Transcript available on Metacast Lambda functions are small units of code that achieve a specific purpose. It’s always a good idea to keep your code short, clean and simple. And yet, sometimes you find yourself writing lots of boilerplate code in every function to do common things, like parsing events, validation, loading parameters and lots more. The Middy.js framework was designed to help you keep Node.js Lambda function code simple, letting you focus on the business logic and clearing away duplication and boilerplate. By the...
Jun 16, 2022•25 min•Transcript available on Metacast Identity Access Management, also known as IAM, can be an intimidating service when getting started with AWS. But IAM is also one of those core services that you can’t really avoid. In this episode we try to distill down everything that you need to know to understand IAM and start to use it proficiently. We cover what IAM is, why it is so important, how authentication and authorization work, what policy documents are and how to write them, how a user or an application get credentials to interact ...
Jun 09, 2022•29 min•Ep 40•Transcript available on Metacast When it comes to building and deploying microservice applications on AWS, there are 2 emerging best practices: use a separate AWS account per application (and environment) and decouple communication between separate systems using events (instead of point-to-point communication). Can we use these two best practices together? Yes, but we will need to find a way to pass messages between AWS accounts! In this episode we discuss how to do that using EventBridge as a cross-account event backbone! We d...
Jun 02, 2022•23 min•Ep 39•Transcript available on Metacast When it comes to choosing compute services on AWS, there are a lot of options, including EC2, ECS, Lambda, EKS… New ones keep emerging all the time! Selecting the right one for each application is no longer an easy choice. In this episode we discuss why you need compute services and what kinds of problems should be offloaded to something else entirely. We suggest how you can develop a methodology to make the selection process easier and less biased within your company. We discuss at a high level...
May 26, 2022•29 min•Transcript available on Metacast Migrating monoliths to the cloud can be a scary, expensive and time consuming and time consuming activity. Many companies try to avoid it even if it could be beneficial for them, just because they think it would require too much work and be too risky. But there are interesting compromises and incremental approaches that can be used to simplify and de-risk this kind of migration. The idea is that you don’t necessarily have to dramatically re-engineer your application to move it to the cloud (and ...
May 19, 2022•32 min•Ep 37•Transcript available on Metacast There are lots of options for programming languages on AWS these days but one of the most popular ones remains JavaScript. In this episode of AWS Bites we discuss what it’s like to develop with JavaScript, Node.js and TypeScript on AWS and what’s new in this field. We explore why you would choose JavaScript and what are the trade-offs that come with this choice. We present some of the main features of the all-new AWS SDK v3 for JavaScript. We discuss runtime support and tooling for AWS Lambda an...
May 12, 2022•24 min•Transcript available on Metacast In the age of distributed systems we produce tons and tons of logs. This is especially true for AWS when using CloudWatch logs. So how do we make sense of all these logs and how can we find useful information in them? In this episode we talk all about logs on AWS and we discuss the main concepts in CloudWatch for logs like Log Groups and Log Streams. We discuss how you can consume logs and how this used to be a big pain point with AWS CloudWatch logs and how now things are a lot better thanks to...
May 05, 2022•32 min•Transcript available on Metacast CloudWatch is a great service for metrics. You get tons of metrics out of the box and you can also create your custom ones. One of the most important things you can do with metrics is to create alarms , so how do we get the most out of CloudWatch alarms? In this episode we share our insights and cover the different types of alarms that exist, how to create an alarm, what to do when an alarm is triggered, a few examples of useful alarms and some of the drawbacks of CloudWatch alarms and how to ov...
Apr 28, 2022•27 min•Transcript available on Metacast CloudWatch is the main Observability tool in AWS and it offers a wide range of features: logs, metrics, dashboards, alarms and even events (recently moved into EventBridge). In this episode we are going to focus on CloudWatch metrics. We are going to discuss the characteristics of metrics in CloudWatch: namespaces, dimensions, units and more. What metrics you get out of the box and how to create your own. How to access and explore metrics. Finally we will compare CloudWatch to other providers li...
Apr 21, 2022•33 min•Transcript available on Metacast What are the benefits of Tags? You have probably seen that you can add tags to almost every resource in AWS… but should you really do it? And if you do it, what are the benefits? In today’s episode Eoin and Luciano cover what tags are, some examples of how to use them and what kind of benefits they can give you and your team. Finally we’ll give you a bunch of ideas on how to build a tagging strategy and get value from tags! In this episode, we mentioned the following resources: - Resource group ...
Apr 14, 2022•25 min•Transcript available on Metacast Should I use CloudFormation or should I use Terraform instead? If you are just starting to do Infrastructure as Code (IaaC) you probably have this question. In this episode we will discuss in detail how these two amazing pieces of technology compare against each other and what their features, weaknesses and strengths are. We will share our opinions based on our experience with these 2 technologies and guess what, for once we have a bit of clash of opinions! Can you guess who is in the Terraform ...
Apr 07, 2022•30 min•Ep 31•Transcript available on Metacast AWS Lambda just got a big upgrade in ephemeral storage: you can now have up to 10 GB of storage for your /tmp folder! Before this was limited to “only” 512 Mb… But is this really useful? What can we do now that we couldn’t do before? Also, is this going to have an impact on price? And how does it compare with other storage capabilities that are available in Lambda? Eoin and Luciano are on the case to try to find some answers to these compelling questions, for the greater serverless good! In this...
Mar 31, 2022•17 min•Transcript available on Metacast Eoin and Luciano take you through the ways serverless can give you more security out of the box. We cover the tradeoffs between having more security control and the responsibility that comes with this power. There are always new security challenges so we cover some of the common pitfalls with serverless and AWS security in general. Finally, we share some tips to make your serverless deployments more secure. In this episode, we mentioned the following resources: Architecting Secure Serverless App...
Mar 25, 2022•32 min•Transcript available on Metacast Luciano and Eoin discuss their strategies and ideas to help new team members to start embracing cloud computing and get productive with AWS. What are the main concepts to focus on when bootstrapping this journey, how to make a plan and make sure it’s bespoke to the expectation of the new employee. How to do pairing sessions and make sure we can build hands-on experience. Finally we discuss building troubleshooting skills and make sure we put in place a virtuous cycle that can foster continuous l...
Mar 18, 2022•13 min•Transcript available on Metacast Eoin and Luciano try to answer the question of what AWS accounts do you need for your team and how to organize them. In this episode of AWS bites we discuss common ways to organize AWS accounts and environments from the perspective of a company running production workloads. We try to answer questions like “how many accounts and how many environments?”. We also discuss how you and your team can be more productive by effectively managing AWS accounts and environments. Finally we explore some commo...
Mar 11, 2022•24 min•Transcript available on Metacast Luciano and Eoin explore the wonderful world of data streaming using Kafka on AWS. In this episode we focus mainly on Managed Streaming for Kafka (or MSK) and discuss what are the main differences between MSK and Kinesis. We also explore the main features that MSK provides, its scaling characteristics, pricing and, finally, how MSK works in conjunction with other AWS services. We conclude the episode by providing a decision tree that should help you to decide whether you should use Kinesis or MS...
Mar 04, 2022•33 min•Ep 26•Transcript available on Metacast Eoin and Luciano are back with some more AWS messaging services material! This time we talk about Kinesis Data Streams and everything there’s to know about them! In this episode of AWS Bites, we cover the difference between data streaming and queue or message buses. How Kinesis can let you process large batches of messages in near real time. Why you might use Kinesis as a queue or pub/sub bus in some cases. A few different ways to use Kinesis with the focus on avoiding too much complexity. We al...
Feb 25, 2022•42 min•Ep 25•Transcript available on Metacast Luciano and Eoin deep dive into SNS discussing what it does, how it differs from EventBridge and SQS and how you can use it to send messages to customers but also for microservices communication. In this new episode dedicated to AWS events and messaging services, we learn everything there is to know about SNS including advantages, limitations and cost. This episode complements the episode about EventBridge, giving another perspective on when to use SNS and when to pick EventBridge instead. In th...
Feb 18, 2022•16 min•Ep 24•Transcript available on Metacast Eoin and Luciano continue their series about event services. In this episode, they chat about EventBridge and explore why this AWS service has such a great potential for event-based serverless applications. This episode presents some interesting examples of when and how to use EventBridge. It also covers all the different classes of events that you can manage with EventBridge: AWS events, third-party events and custom events. We discuss limits and pricing and, finally, we show how things can go ...
Feb 11, 2022•34 min•Ep 23•Transcript available on Metacast Luciano and Eoin take a deep dive into SQS as part of a series on AWS event services and event-driven architecture. We talk about the kind of problems SQS can solve, all of the SQS features and how to configure and use SQS to achieve reliability and scalability without all the complexity. We also take some time to detail how SQS works with Lambda in terms of scaling, batching and filtering. In this episode, we gave a special mention to three highly-recommended re:Invent 2021 talks on the topic o...
Feb 04, 2022•26 min•Ep 22•Transcript available on Metacast