1. Be good at what you do. This is a given. This also assumes that you do not require coaching to get better - you will just get better.
2. Be dependable. 100% dependable. Answer or return calls and emails promptly (within reason of course). Never, ever, miss your own deadlines. Make sure your manager is never blind-sighted.
3. Make it your primary focus to support your manager's success and his career. Be his eyes and ears, if need be.
3. Be exclusively interested in supporting and progressing your manager's career.
Usually, you'd support your manager's success to drive your own success.
I don't mean Oracle, I mean Oracle deployments on AWS for ERP implementations.
I don't mean Unix sysadmin, I mean Linux kernel on bare metal hardware tuning.
I don't mean "I know our application", I mean "I have seen our application through N deployments and M different platforms and can troubleshoot on high transaction loads".
Also, work for a big company or a consultancy that can leverage your talents. You won't be a highly paid IC at a small web consultancy, the leverage isn't there.
Note that doing this exposes you to risk, as does all specialization. If your specialization is becomes obsolete, you have to start over, often at a lower pay grade.
Higher than managers in general? Keep interviewing, raising your rate and you should get there. I mean if you work in software dev you probably already make a shitload more than a lot of people with "manager" in their title so just double down on what works.
If you are a scarce resource and gives immense value, then you can easily earn more than the managers close to you. And as I said several levels above them.
In a lot of cases managers are more easily replaceable than good individual contributors.