Author here! I'm not arguing that software engineers should necessarily be paid in proportion to the end economic result of their employment. Although that's an interesting point for another article perhaps! Rather simply that companies tend to undervalue domain specific knowledge and forget how costly and time consuming it is to hire and retrain new team members. This should be taken into account when considering compensation structures to retain your top talent when considering the open market is always available to them.
Author here! My intention with "domain knowledge" point is mostly about all the non-coding stuff. Things like how your company functions, who to talk to about different issues, deep product knowledge and understanding the customers. I actually think transferrable skills grow as well, usually more on the technical side but also on the soft skills side in a generic way. I think the non-transferrable stuff is somewhat unavoidable because of the nature of products, domains, and organizations being meaningfully different.