Apart from the standard roles, feel free to create roles with individual limitations and permissions. Custom roles can be created by the Account Owner and Account Administrators.
To add a custom role:
When a user with the System Administrator role logs in to the account, they will see only a list of users belonging to their department, as well as the messages option, which is needed for chatting with them.
Users who, according to their role settings, have access to the list of courses, see all available courses, no matter who added it or whom it's been assigned.
If users don't have permissions to view content according to their role parameters, they won't see even the courses they are enrolled into.