It really isn't due to immigration, it's due to a realisation by businesses that people in jobs below senior management will pretty much accept what is offered. Unions used to help by working to understand the collective value of labour in the negotiation, and move wages closer to it (for example if all the staff in my local Costa Drive through stopped working, it would lose 100,000 a month, so even if they re-recruited and it took a month, the collective labour value to the business is very much higher than the few hundred they are paying for it. Staff are the most fundamental part of most businesses that pay min wage, so their negotiation power is very strong, collectively, but businesses know that individually, people will struggle.
The other factors are dramatically increased sophistication in assessing not market value, but behavioural value. Businesses don't go 'oh I wonder what a member of admin staff should get according to the value to the business, and the level of tasks involved' they go 'if we can find someone with basic skills who is underemployed and miserable at Min wage, then we can just say this job is more interesting and get someone to do it at Min wage,' it's rare to find people saying 'oh I am looking for work, and this job gives me a £6k increase,but it has tasks in it that only 10% of the population can do, so I want a salary at £42,000. I think they should, but too many other people (again acting individually without consideration of the collective impact) will give it a go for a few years, then get perhaps burnt out otlr pissed off etc and the cycle continues.
If you have a lot of under paid jobs in the market where businesses are trying to get say a role that generates £60k worth to a business, for £15k then businesses benchmark against it.
Where you have agents who asses how much a person's worth is to a project and negotiate on that basis you see more accurately what the value of the market is..which is sort of what good unions do, hence the £45-60k train driver salaries in TFL where the company wanted to pay circa £22.
We need, as a nation, a much better understanding of our worth to a company, and also be prepared to challenge companies and be in conflict with them to get wages closer to their worth to a business.
I"m so tired of hearing of businesses paying staff less than they need to live on, whilst making averages of £600,000 per staff member. People like Google make more than $1,000,000 per employee per year. Amazon has majority staff on mine wage or lower, and makes $500,000 per employee. I am sure Amazon will bleat about how tight their margins are if you challenged them....
The local Amazon warehouse to me recruits at 7.20ph irrespective of skills or abilities.