This is not age discrimination (yah, excuse, the HR should not even mention it!

). Shell is very very careful about any kind of discrimination.
Your colleague probably applied for a job that is in the Job Group 7 payband (engineer position?). That payband has a maximum ~6.3k. Anything higher is not justifiable.
If he goes for a technical lead (JG6 ~ 7k) or Manager position (JG5 and above - 10K to unlimited cash

) he'll find the payband is very much higher.
Which brings me to another point here - to illustrate an example: no matter how good your Windows technical skills are (i.e. troubleshooting, solving issues, implementation) you'll find it very hard to go above 6k unless you improve yourself with managerial skills. From a company's point of view, it's not how good your skillset is, it's how rare your skillset is.
Why do you think Unix/Oracle consistently earn more than Windows/SQL people? Or why SAP has so high pay, or Project Mgmt? But people in helpdesk, one-leg-kick troubleshoot in small companies don't earn that much? It's because more people can do some jobs than others.
_____________________________________
One more thing I forgot, your colleague will likely not be happy with Shell, because due to their increment structure, since he hit the maximum payband his yearly increment will likely be 1%, no matter how well he performs

cwtien thanks for the info, but the position is JG6 and is related to Unix/Linux/SAP so know the ceiling and am very unhappy with the results, especially because I probably won't be getting my ERP.
This is not the first time I've had people reject offers recently. I just don't think that Shell HR is particularly flexible or competitive nowadays for Unix or SAP.