Really ? Any person without a severe physical disabilities can be a street cleaner - you need very low incentives to generate people capable.
Surgeons take like a decade of training and a small % of the population is even capable of becoming one and there's a demand for their skills.
Software developers create output that potentially has a very non-linear return. Few 1000 people can create software used by billions daily. A few people can develop software that manages billions of $ of assets.