We are problem solvers. Whether it's design, development, engineering, crafting, or anything else in which there is a user, what is being done is problem solving. If we are doing our job right, our solution should solve real user needs in a way best suited for them. Often, this is described as "having empathy for our users"; however, the colloquial definition of empathy, "to put oneself in another's shoes" or "to understand another's point of view", isn't quite correct. These definitions conflate empathy with understanding. Because of this, we have a tendency to assume that if we have one, we have the other, but that is not true. In order to solve the problems of our users or to work better with each other, we need both empathy and understanding. Exploring the etymology of each word will help us better see their differences.
empathy (n.) - Modeled on the German Einfühlung; from ein "in" + Fühlung "feeling". Coined in 1858 by the German philosopher Rudolf Lotze as a translation of the Greek empatheia or "passion, state of emotion"; an assimilated form of en "in" and pathos "feeling". From a theory of art appreciation that maintains appreciation depends on the viewer's ability to project his personality into the viewed object.
understand (v.) - Old English understandan, "comprehend, grasp the idea of", or probably more literally "stand in the midst of", from under (which in this context is not the usual meaning "beneath" but from Old English under from PIE *nter- "between, among") and standan "to stand".
Empathy looks to have one align with the feelings of another, whereas understanding looks to have one align themselves with a set of knowledge. With this, we can start to identify when we are talking about empathy and when we are talking about understanding. When talking about empathy, we are talking about a state of being; how does a person feel, what do they see, what do they say, what do they do, what do they hear, is it causing them pain, is it causing them joy. With understanding, on the other hand, we are talking about knowledge and process; what is a person's background, what expertise do they bring to this situation and how is that important to their understanding, why did they come to the decision they have. In order to solve problems effectively, both the current state of being and the process and rational that led to that state of being need to be considered. Doing so will also allow us to think in ways we wouldn't otherwise be able to and find solutions we wouldn't otherwise see.
One example of where empathy and understanding are both needed is the perceived tension between design and development. It can often be summed up as "developers don't empathize with designers" and "designers don't understand development". Often, the colloquial definition of empathy instead is used and the tensions is summed up as "we need teams that can empathize with each other". That is not the problem. Instead, the problem likely is either teams are made up of specialized individuals who do not grasp the process and skill set of other specializations (and thus can only at best empathize but not understand), or there are specialized teams that likewise suffer from the same problem. These can be thought of as siloed individuals or teams. To solve this problem, those who are deeply specialized need to broaden their knowledge. They need to learn the processes and skills of specializations outside their own to be able to think like their coworkers and solve problems like they do. They need to become T-shaped. In simple terms; designers need to learn how to code, developers need to learn how to design, and both need to practice and use those skills every day. Everyone solving the same problem at the same time breeds both empathy and understanding and will help find solutions to problems that otherwise may go unseen.
The second example comes from user research. We do user research ideally to determine what problems our users have in order to determine what problems we should be solving. Often, though, this only focuses on empathizing with our users; gathering their pain points and reacting to them. The weird thing about asking users about what bothers them is that they tend to focus on symptoms, not root causes. There's often something deeper about the way it fits into their understanding of a problem that is the cause of pain. If all we do is focus on empathy, there is a serious risk that what we focus on are just the symptoms, not the root causes. This means going beyond the superficial: beyond their role or title, beyond their age, beyond their gender, and uncovering why they think like they think, why they do what they do. Understanding the problem domain being worked in and building domain models for that problem space will help us to think like our users and understand those root causes. In order to solve the right problems, we need to solve for both the symptoms and the root causes.
The point of all of this, of course, is not on the semantics of the words empathy and understanding; they simply frame the conversation. Solving problems with and for others requires us to not only know how they feel but know how they think and work. Knowing how they feel means sensing their frustration, their joy, their confusion. It helps us to detect success and failure. Being able to know how they think and work, on the other hand, allows us to turn frustration into joy, or confusion into clarity. It allows us to determine concrete, productive actions to take.
Ultimately, if we want to be able to successfully identify what problems actually need to be solved, we need to comprehend not only what our users feel, but understand the system they work in and how it influences their decision making. We need to be able to not just feel our users' pain, but be able to think like they do in their context. We need to be able to value what they value in the context they value it. We need to uncover the root causes of the symptoms we can see in order to solve the underlying problems. This cannot be limited to just those we solve problems for; we need to work this way with the people we work with. We need to be able to think like our co-workers do in their context in order to solve problems with them in faster, more creative, more sustainable ways. Everyone on a team need to care deeply and passionately about how their team members are working, how they are thinking and understanding the problem being solved, and their context in solving that problem. Teams need not only have both empathy and understanding for their users and their co-workers, but they need value having and practicing both.