A family of Microsoft relational database management systems designed for ease of use.
It might help to think of the requirement as encompassing "People" and "Roles" as two separate entities.
The AI answer is partway there, but misses a key point.
One person can fill one or more roles.
A legal assistant at Firm A might also be hired as an intern at Firm B at some point. If you care about that history, you can't assign one role to the person as an attribute in the People table.
And, the same is true for the attribute identifying the organization. If you care that Person A worked for Firm C for 3 years, then was hired away by Firm D, you can't put the FirmID into the People table as an attribute.
Now, I do not know whether you care about history or not. If you only consider this to be an electronic rolodex where you can look up current details and do not care about what happened last year, or the year before, then the AI proposed approach is a useful beginning.
So, you decide, what is the business rule here? History or rolodex?
If it is history, you need (for this part of the design) five tables:
- tblPeople
- tblRoles
- tblFirms
- tblPeopleinRoles
- tblPeopleatFirms
The design pattern here is called Many-to-Many: One person can be in one or more roles. One role can be held by one or more people.
The two tables that handle this are often referred to as Junction tables. They have a specific design pattern.
- ForeignKey --> Person
- ForeignKey --> Role
- DateInRole -- the date when this person assumed this role, when Marcos became a partner.
Further searching on the concepts of Many-to-Many relationships and Junction tables should turn up a plethora of detailed discussions to guide you.