As a data engineer, testing with production loads is critical to performance checking, as well as finding edge cases where your assumptions about what can be expected in the data are curb stomped and send you back to the drawing board to cry and think about what you've done.
Yeah we finally set up a workflow where we get production data available in a staging environment. This has saved a lot of trouble via "well it worked on my local where there were 100 records, but prod has 1037492 and it does not"
Same. Early on as a new dev, I failed to performance check my script (as did my qa tester) before it was released to production, and that was my first roll back ever. It was very unoptimized and incredibly slow under one of our highest density data streams. Felt like an idiot that I was good with it's 1-2 second execution time in the dev environment.
And then managers that don't get this will try to shove policies down our throats about how "pre-prod systems should not have access to prod data".
"just obfuscate it." Sure, for all 300Tb of it from the 10 different sources that don't really talk to each other and we were already doing magic to be able to join them together? They should give us a bottle of hard liquor per month/project.
As one of the devops/sysadmin types, if we give access to prod data to preprod systems, they are now in audit scope and you have to harden them or we lose our insurance and compliance certs.
Obviously the solution is to build some system where everything works out, but it's not as easy as "just give root to devs".
I test my own code/scripts in dev when I'm working on it. QA usually tests acceptance criteria in test environment. And then staging is used for production data testing for performance and identifying missed edge cases. Actually, we sometimes use dev and test interchangeably when multiple people are working on the same repo, so the lines are a little blurrier than that.
Regardless of the meme, it's just weird behaviour to print off a meme, in presumably tens of copies, and leave it on every desk. Don't you have a group chat?
If your test and prod are different, you need to ensure your manager understands the risks you will not magically account for. It's on their head when it fucks up.
Testing in prod requires its own separate indemnification because that's also only ever after direct orders.
I have three setups
DEV: an environment that is almost useless thanks to how many changes have to be made between production and the development environment.
TEST: A More useful exact cloan of production that you still have to edit specific things but it is usually the same each time.
Test only on dev hardware because production hardware is too expensive to waste on developers. No idea why the software runs better on dev hardware than production. They're kind of similar.
My customer does this bullshit. Every time: "We can't deploy that necessary/required update because we haven't tested it yet. Also, we have no testing environment and we need that update to fix a serious problem. This is all your fault."