In my recent consulting (workshops and assessments), several technical staff and their managers have told me they're not sure they are being paid what they're worth. I ask “How do you know?”
They tell me all the ways they're working for the organization and how much that benefits their managers. I ask the next question, “Did you tell your manager?”
When you're looking to hire someone, you can't have the conversation about what someone has done for you at your company now; instead, you have the conversation about what the person has done for their current and some previous companies during the interview.
Everyone provides some benefit. That benefit is what the position is worth. If you think you're not making enough, articulate your benefits to your current employer. Assign a dollar (currency) value to your work. Don't like the number? What would you have to do bring more value?
If you're looking for a new job, know what you're worth. And if you're a hiring manager, think hard about the skills that would bring the worth you desire to your organization. Go back to your hiring strategy and job description. Do they describe the value you want from a candidate? If not, your job description is not working for you. Change it.
Companies don't pay people because they are warm-hearted. They pay employees to provide value. The more value, the more pay. (We hope. Sometimes, that's the more expected value, the more pay.) If you're a candidate, define your value. If you're a hiring manager define the value you want to receive. Now you'll have a much better understanding of what you should pay. And, you'll know what the decision is worth.