AWS networking basics with terraform and a tiny bit of microservices

I have a moniker for myself - the accidental software engineer. I never imagined 5 years ago that I would be in this industry neither did I image that I would soon have to learn DevOps and aws architecture but I guess that is par for the course in a start up. I found myself in an awkward situation late last year when our DevOps gave notice that he was leaving. I had to pick up this skill otherwise, I would not have been able to deploy the code I had written. This exposure to our aws infrastructure piqued my interest to dive deeper into the subject matter and after months of hacking around, here we are - the accidental DevOps. In this article, I will write and try to explain where I can the basic networking architecture in aws. I will implement a very simple application that sends an email once you interact with the server. The image below explains what I will achieve. In the above image, we have a virtual private cloud inside an aws region, we then have public subnets where o...