We are working on a web application where users can connect with eachother and, as part of that, choose how they are related to each other.

As an example, I can connect to Joe Bloggs as an employee. The system would then know I am Joe Bloggs employee and he is my employer.


How do we best ask the user for this information and then display their connections afterwards?

Currently, we display: Joe Bloggs is my [Dropdown with options].

This means for each relationship type we need 2 options (1 for each point of view). It works fine for the employer example; I would see "Joe is my employer" or "Joe is my employee" and Joe would see the opposite.

The problem comes when we have relationships with no obvious reciprocal, such as manager. What do we put in the dropdown in this scenario? You could argue for we could use some wording like "Managed Colleague" but lets assume we have a case where there is absolutely no opposite.

Another thing to consider is how we display existing connections. Currently we show them in a categorised list with sub-headers: "My Employees", "My Employers" etc.


Not having set relationships types is not an option as some functionality of the app depends on the types.

Don't get caught up in the examples, I was trying to simplify the scenario (perhaps didn't explain it very well). The relationships will be between people and organisations, not just people within the same company. More along the lines of; Supplier, Lawyer, Client, CEO, Subsidiary etc.

  • 1
    The opposite of Manager is subordinate. If this word does not fits search for synonims or ask english.SE for a more neutral/positive word. If ou need to type your relationship, this means you can't have something like Coleague which subjects two people of the same units on the same hierarchical level.
    – Walfrat
    Commented Jun 21, 2016 at 10:27
  • The opposite of manager is managee.
    – CompuChip
    Commented Jun 21, 2016 at 20:15
  • Don't you have another problem? What if two people both claim to be each other's manager? (Or isn't that an issue?) How about this: Have each person only list people one level up the hierarchy (ie. their manager). If two people have the same manager they are colleagues. And if multiple people list X as their manager, then we know who X manages. Commented Jun 21, 2016 at 22:45

5 Answers 5


But lets assume we have a case where there is absolutely no opposite

This point has not been covered or answered so I will focus on this one.

If you don't have opposites or don't find anything suitable: just change the sentence:

  • You are the manager of X
  • Y is your manager

I mean I think people will more often say "I'm his manager" than "he's my subordinate". Just pick what people say the most. And often a senior will say "I'm his senior" than "he's my junior". When a relationship indicates that someone is above someone else this is just how people will refer to it.

To be honest I would find it weird that an application would say "you're the junior of X", but maybe it's just me.

Finally think about whether your relationship is really bidirectional or just unidirectional.

  • If it's unidirectional, which involve someone above someone else: go for what I said.
  • If it's bidirectional on the same level: go for what you have already.
  • Thanks, I think i'm leaning towards the idea of having variable wording (I am their / they are my). I wonder if its better to have 1 dropdown with descriptive options or 2 dropdowns with 1 to describe the direction and the other to describe the type. Commented Jun 21, 2016 at 10:56
  • This is great. +1 Commented Jun 21, 2016 at 19:41
  • I told you someone else would give a better answer than mine ;) Commented Jun 22, 2016 at 8:07

Someone else may give a better, more evidence-based answer but, for now, here are my thoughts:

I think the best reciprocal for "Manager" is probably "Colleague".

However, this approach requires examining each set of relationships on a case-by-case basis and you can bet that, once you've got it all sorted out, a major stakeholder will come along and say "Oh, we don't call them that!". In other words it just doesn't scale well.

Just looking at the structure of the information, you might want to allow users to declare their own positions "Phil is a Colleague", "Jeff is a Line Manager", "Bob" is a Head Of Department" (Possibly from a drop-down list that uses the company org structure) and then declare their seniority of their relationship with their connections: "I am Jeff, Bob is senior to me, Phil is junior to me", "I am Bob, Jeff is junior to me, Phil is junior to me".

You can, of course, word this however it is appropriate and build the interface to suit but it is one way of thinking around the problem of specific reciprocal relationships within a business structure.

  • I like the inclusion of Junior and Senior. With this, you only need to specify the title once. It makes the hierarchy a lot simpler. Commented Jun 21, 2016 at 10:10

I'd think twice before force-fitting this kind of hierarchical relationship in an attempt to describe all possible organizational charts, work relationships and cultures.

  • It introduces an enforced tree relationship where actually the culture may be quite flat.

  • The relationships may be dynamic as people move between teams and take on different roles.

  • It creates a structure that goes out of date easily as people get promoted, move department, leave the company etc.

  • It enhances a feeling of power for those who manage and feeling of belittlement for those 'at the bottom of the tree'.

  • It won't cover all cases.

In my opinion it's better to give people the option to say if and how they are connected and just let them use whatever phrasing they want. You'll learn a whole lot more than forcing people to fit your own set of options.

Then learn from what you see, and adapt accordingly.

  • Thanks for the feedback, unfortunately not having set relationship types isn't an option as some functionality is dependent on the selected types. Also its worth noting that its not going to be just internal relationships, think also things like contractor, or lawyer. Maybe my examples weren't great, ill update the question. Commented Jun 21, 2016 at 10:04

Have you considered just not having any text for relations at all and use symbols or other graphic indications of the relationship?

For example, a popular way of showing relationships is an organogram:

enter image description here

You could do this in multiple ways: let users drag themselves to the right spot, enter their names in the right spot, click on the right icon,...


It might be enough to let the people set their own positions and later pick the colleagues they work with. Having that set, the machine could actually figure out the hierarchy (if any) or other types of relationship.

E.g. Bob says ‘I’m the owner of the corner grocery’. Jane: ‘I buy cabbage at the corner’. You don’t need them to declare ‘I am the seller for Jane, and she is my buyer’.

If you create a rigid system that forces people to strictly define their relationships you might end up with a set of cumbersome rules no one likes to use.

I would try to let the people describe themselves in their natural language (for reasons stated by Roger Attrill) and make the service do the boring part under the hood.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.