There are huge discrepencies in salaries for tech jobs such as engineering and IT/CS in the UK.
Most small-medium companies (which make up a large percentage of jobs but aren't well advertised) will take on graduates and pay minimum wage or slightly above with slow progression and a low ceiling such as £30k after a decade.
Big companies (which are mainstream advertised) often start somewhere around £30k for graduates with faster progression, but it is very competitive to get in.
A £50k starting salary seems like a position for only the very top graduates who may already have experience in programming competitions/summer placements etc and who will work beyond the norm. Also you mention London which usually has a salary weighting due to high living costs. Realistically a job in London should pay double than what it would somewhere up north but usually it will be something pathetic like £5k extra.
I studied EE and some people in my class went to London to start on £27k salaries which is pretty poor for London, but probably not as bad as my £18k small company masters in electrical engineering graduate with experience salary.
I heard of a relative of a relative who studied computer science being offered a job in London with a starting salary of £50k (after he done a placement there or won some sort of competition), but I would say this is very exceptional. Nowadays more and more people are getting degrees so competition is fiercer than ever, unfortunately it has led to most tech graduate salaries stagnating for the past couple of decades whilst house prices have skyrocketed in the same time, thus leaving most millenials living half the quality of life of the previous generations