I work remote and I get raises (and eventually promotions based on the brackets) because I am a "force". I drive delivery. I follow up. I mentor. I advise. I listen. I go cross-team. I delegate. I keep an eye on who is doing what/who is good at what. I call out broken processes and come up with solutions/alternatives. I escalate to proper management. I turn stuff around quickly. I write good/clean/maintainable code. I review quickly + fairly. I turn requirements into production worthy code. I meet milestones. I work well with management. I think of alternatives to problems/blockers. I know who to go to for what.
I can be given a concept/idea/project with very loose/very little detail about it. Then I can go suss out the details from whoever the reporter is (nothing is ever as perfect as... you have a user story and it's entirely thought out and it fits perfectly into the software ecosystem we have today). Then, I write it, get it tested/reviewed, get it deployed. They cross it off of the roadmap, inform clients about it, and I look good because I owned it end-to-end (with respect to product team, analyst team, design team, QA team, etc.)
I produce (near) the most so I get paid (near) the most (in terms of what my company is willing to pay engineers). Do I make chump change compared to the people making $500k-$2m at FB/NFLX/APPL/MSFT/GOOG? 100%. But... I don't work there and I can't speak for what it is like to work there. I can't imagine getting granted double/triple my salary in stock options for being a good coder. Maybe I'de be at an intern's level there. All I know is, past 3 companies I've worked for, I've gotten $10k/yr raises every year because I just deliver and try to be as much of a pleasure to work with as possible. Every time I was a pain in the ass standing up for either what I believed in or how I thought things should be, it didn't work out in my favor. So, don't be a pain in the ass. Be the "goto" guy to get stuff done.