> Asking one person to do two (actually three) job functions is a scam.
The word "scam" is overused. It's a scam if it was a bait-and-switch. It's not a scam if it was advertised this way up front. In the latter case it's just a job whose description you don't like.
It is a scam. It should absolutely be assumed that you could perform these job functions - it makes you a way better engineer! But being expected to is a scam because the skill ceiling on each is so amazingly high that only a scam artist would expect someone to be able to perform all three to a specialist level. The same issue happened when QA departments got the boot. I deeply understand testing strategies (both manual and automated) but this is an important enough job that it deserves a dedicated person. Not having this person is exclusively because the business is trying to save money and make the worker easily replaceable.
It is not better for the department members or the software itself. It is only good for the bottom line. Yes, if you know it all you'll be valued higher - but the company is still reaping the majority of that benefit from you and not rewarding you with 3 salaries. You should not perform all the roles because it's economically idiotic to do so. You could contract out all 3 services and make a shit ton more money than you would performing them in a salaried position.
I perform all three roles for one company. I agreed to it upfront. I do it in less than 40 hours a week at a very respectable salary. I get maybe 1 after hours call a year for an Ops task. My boss knows that I won't do QA or Ops nearly as well as I do Dev, and he knows that QA and Ops time come out of Dev time (not personal time) and he's okay with that because that's the stage we're in.
If you think that is a scam, I don't know what to tell you.
The word "scam" is overused. It's a scam if it was a bait-and-switch. It's not a scam if it was advertised this way up front. In the latter case it's just a job whose description you don't like.