The first few years is going to be shotgunning, especially your first job. Beyond that, your application count should be in the teens rather than the hundreds with the same number of responses (In your first year, it takes 200 applications to get 3 - 5 interviews. In your ~fifth year, it should only take 20 - 30).
The reason for this is that you are in higher demand and you have something to contribute to the company so you should be shopping for companies you can provide value for. If you primarily have worked in the backend on nodejs, you are putting yourself at a disadvantage by applying to frontend Ruby roles. If that's your goal, then yeah, you'll probably have to shotgun.
Reviewing resumes, it absolutely raises an eyebrow if someone has a number of years of experience but none in the stack or role they applied for (exception being someone narrowing down. For instance, a full-stack applying for a backend or frontend role). It raises more questions so your application is treated with caution, at least to me at small places.