So what I really meant was more money and interesting job
So what I really meant was more money and interesting job
Do most of the new hires want to work on server-side code; but your UI is challenging and pushes the browser to its limits? Lean more towards in-browser work; and accomplish critical in-browser tasks that your management has trouble finding someone to do.
Likewise, is your in-browser code trivial, but your application is visibly too slow to the point that management has heat on them to make it more responsive? Focus on optimizing the data access layer, and become indispensable there.
Where I've had success is looking for areas of a product that you just can't "open a book" to learn how to implement. The problem space should have a high degree of novelty to it. These problems exist in all layers of the stack. In my case, I became lead for Syncplicity's desktop client, a major Dropbox competitor. For awhile my code was a market leader. (We were the only desktop file sync product that could handle 100,000+ files.)
Another area of success that I've had is in young companies, where team sizes are too small to really specialize. In my current role, I'm doing "full stack C#" with Blazor in the UI. (We chose it so that it would be easy for developers to move back and forth between UI and server-side code.) As we grow I'll probably focus more on back-end work; but at the moment, "full stack" is useful because I can make an API change in a single pull request without coordinating with anyone else.
Edit: As far as money goes, you will need some flexibility. I've taken a few below-market-rate jobs because they were interesting; then when I saw money flow into the company I had to raise a ruckus in order to get to market rate. It's not something I like doing, but unfortunately, that's how the world works, and that's why I keep focusing on becoming indispensable.