An IAM role is a bundle of permissions you grant to a user, group, or service account, rather than assigning individual permissions one at a time. Google Cloud gives you three kinds of role to choose from, and picking the right one is most of what role based best practice actually comes down to. This walks through that choice first, then creating, disabling, enabling, and deleting a custom role, for the situations where a custom role genuinely is the right call.
The order to actually check them in is predefined first, custom only if nothing predefined truly fits, and basic roles reserved for throwaway testing.
Open the console, then
Open Menu > IAM & Admin > Roles

Click Create Role.

Give the role a title, a unique ID, and choose a launch stage, then click Add Permissions.

Filter permissions by service or role to find what you need. A single custom role can include as many permissions as it genuinely needs.

Select the Permissions. Click OK

Click Add.

The permission will be added to the custom role. Click Create.

The custom role is created and ready to assign.

Tick the checkbox next to the role you want to disable, then click Disable.

It will be disabled.

Click the three dots next to the role you want to enable again.

Select the role you want to delete, then click Delete.

It will be deleted after a particular time.

Deleting a custom role does not erase it immediately. It becomes soft deleted, and you have 7 days to undelete it if you change your mind, during which any existing bindings to it stop working but the role definition itself is still recoverable. After 7 days, it is permanently deleted and cannot be recovered, and any remaining bindings to it are removed entirely. Even after that, the specific role ID cannot be reused for a new role until roughly 30 days beyond the permanent deletion point, so if you need the exact same ID again soon, expect to wait.
That covers the three types of IAM role and when to use each, along with creating and managing a custom role. To go further, explore Prwatech’s Google Cloud training program, which includes placement assistance.