Ephemeral test environments are a great tool for this kind of stuff. We do work on a feature branch and spin up a test environment for that feature. QA happens there, then it gets merged to master once they approve it.
In our workflow, it deploys immediately, but you could just as easily adapt that to cut a release every Thursday. Then each release can just contain whatever makes its way into master by Thursday. You might need to add more process if there’s release notes etc that need to be coordinated. My suggestion on that would be to cut the release on Tuesday or Wednesday, then whoever does that documentation can look at what made the cut and spend a day documenting it, then just press the deploy button on Thursday once they’re done.
Yup. Nothing wrong with pushing up a draft PR and asking for feedback; but definitely need to be an active participant in fixing the issues, not just expect somebody else to do your work for you.
That does lead to some sticky inter-personal situations though. Like there's people on my team that I trust enough to just rubber-stamp a PR that looks good but doesn't have test coverage etc. Can generally trust those people will let me know if the failing tests uncover some substantial work that needs to be re-reviewed.
There's other people I don't trust and will insist their build passes before I review it. Once that person notices they're being held to a different standard, it can be difficult (but necessary) to have a conversation about what they need to change in order to earn that trust.
I’m sorry, what? If he broke it, he fixes it. There should be guard rails that prevent him from merging his code until all the tests pass, and you as a reviewer should refuse to even start a code review unless the build is green.
Installs antivirus on servers that wrecks application performance
installs content filtering proxy that prevents developers from reading “hacking materials” like OWASP documentation
won’t let developers install anything on their own machines without filing a ticket and waiting 6 weeks
pushes unannounced antivirus updates that pop up OS security dialogs like “Netscan Antivirus would like to monitor all network traffic. Enter your password to approve”, and is surprised when users don’t enter their passwords.
If somebody more senior than you tells you to do a thing a certain way and you don’t understand why they think their way is better, ask them to explain it, but do it in a polite way. Asking the question shows you’re engaged in the process and not afraid to share your own input.
If you hear the explanation and still disagree, let it go and do it their way. Even if they’re wrong, they won’t want to hear about it from you at that point. You win some, you lose some. Being able to disagree and commit is huge.
Several years ago I made an ill-advised trip to the ATM in a strip club. My bank did the smart thing and cut me off, so I called the number on the back of the card but an automated recording told me they’re closed and to call back during business hours. Went home with enough money to still pay rent, but still needed to unlock the account, so I called first thing in the morning. The entire process was automated. “Press 1 if this transaction was from you or 2 if your card was stolen”.
Not sure if the automated system takes the night off, or if there’s just an extra rule that lies about it to help you avoid certain mistakes.
Is this Kate from Kate’s Playground? With the hoof?