Every company is different, but the vast majority are moving to a subscription model where users are charged monthly to use the same code over and over. For licensed (non-subscription) software, code can live through many major revisions where the customer pays over and over for the same code to renew their license.
If you think it would be nice to get paid per run, then you should have gone into mainframe programming, because that is (more or less) how it works (licensing fee based on how many units the code could process, which would go up if you upgraded the CPU). Moving away from that was one of the innovations of UNIX and PC style licensing.
Your argument would make sense if developers got paid per run of their code, instead of only for new code they write.