Big companies like Google also seem to hire a lot of generalists who have good programming fundamentals, are smart, and can quickly (i.e. within months) become productive in many kinds of projects.
These generalists then work on a project for 1-3 years. When they lose interest, they move to another Google project or leave the company.
If you really want to work on both engineering and sales, you'd probably want to run your own business or work at a very small company.
The larger and more mature a company is, the more able it is to afford a job title which specializes in something narrower. It doesn't need to be super large; if the product is very technical, a specialist might be necessary.
The situation can be a bit different in a large company. They might want to hire a Java developer, or a front end developer. These are specialist roles, in that the people in them have chosen a professional specialism. They're commodity specialists though, so common that they're not thought of as special. It's more rare that they want someone who can do devops, UI, JS, RoR, Java and C++ - this is a generalist.
P.S. We believe it's a marathon, not a sprint. Salaries are market rate, benefits excellent (on par with large tech, i.e. 6% $1/$1 401k match, etc.).
P.P.S. While message is directly to OP, also open to anyone else reading. More background in my profile bio here.
Edit: although the OP is broader in experience than most.