➕1 AWS account per project!

Keep projects/accounts clean and reduce costs with more AWS accounts.

I actually recommend multiple accounts per project per environment!

Bellow, we will talk about Why you should follow this practice, then we will talk about How this can be done easily and quickly in a separate article.

Why?

1 - Design.

AWS console is designed to manage one project per account.
All of its UI and services are designed around managing relevant resources to one single project. No explanation is needed, just look at S3, DynamoDB, Lambda, EC2, or pretty much any other service page! see?

2 - Cost savings.

Additional AWS accounts are not free, they cost you negative!
All AWS accounts come with a free tier of a generous collection of services and infrastructure. These quotas partially renew every month! so not only they don’t add to the cost of your infra, but can reduce it a little bit!

3 - Security / Scope / Radius of Blast.

By default, different accounts do not have access to each other's resources, which is a very good thing as often times developers create open IAM policies in terms of access management during the initial phases of project development, potentially exposing one projects sensitive internals to other projects which can be a huge issue and a pain to keep in control for organizations with more than just one project!
Also if one of your AWS accounts gets compromised you don’t lose everything!

4 - Project lifecycle management.

From onboarding and offboarding new team members to transferring a project to different teams, organizations, or even 3rd party companies or even a client, retiring or sunsetting projects, etc. having one single project contained in one single account makes your life easier,.. much easier!

5 - Visibility / transparency.

Counter-intuitively, you can have a greater level of visibility and control over projects stored in individual accounts rather than in the same account. a parent account can be completely opaque to its sub-accounts while sub-accounts are completely transparent to the parent account.

Now How?

It’s easy! so easy I created a shortlist of steps that you can refer to every time you are starting a new project. you can find them here:

Hope you enjoyed this quick write,
Don’t hesitate to get in touch with me on LinkedIn or Twitter!

Best,
- mim

Sr Solutions Architect / Technology evangelist and Consultant / Teacher of the Full-Stack Web development courses at Washington University in st. Louis