AFAIK, If software development teams always built platforms that could sustain change and that were self healing, we would be able to go on vacation with our families during spring break without having to worry that we might lose our job.
AFAIK, If software development teams always built software based on concrete business rules and processes, I wouldn’t be awake journaling about how I’m merging a pull request at 0105 when I should be lying next to my best friend.
AFAIK, we wouldn’t be in this situation if the team before us didn’t allow their boss to allow their boss to allow their boss to over promise features that were NOT properly scoped.
I really am the last person that should be blaming anyone in particular, but, let’s be honest…there is a reason it is said that there are no silver bullets in software.
If the feature is not an improvement on the previous manual process, then it isn’t a feature that should be the highest in priority. Software development isn’t supposed to make us famous.
Software development is supposed to be an exploratory and creative process primarily driven by empathy toward the user who we ultimately want to be productive and happy.
Software development is not supposed to be for merit or recognition. I am just as at fault. I lowered my standards because I started to buy into the potential for glory as well. A lot of people have given up a lot of their time…for what? In our user’s eyes, we’ve built a Yugo. We brought them features that they really want to use, then we took them away. We can’t be playing with people’s emotions.
Don’t get me wrong, our product is amazing. Do not lose sight of that. It’s just that, it’s a bit rough to continue working on a product which is functionally amazing but who’s potential users have been disrespected. From the users to the admins to the super admins. These users have been disrespected because their needs have been overly-simplified because the focus was on future killer features, and killer features they are; however, the proper time and attention was not taken to do user focus groups, mockups, prototypes, write and refactor unit and regression tests, or document the API.
We do not have the keys to the cloud services that we rely on to serve our API, our UI, our data stores. We don’t have permission to validate our automated backups. Wait, that team that manually kicks off our container deployments; do they actually provide us with automated backups ¯\_(ツ)_/¯?
Look, don’t beat yourself up. You didn’t know what you were getting yourself into. A lot of hands have touched this project before you did. It’s not your fault that our team was promised flexibility but you had to take it away. Did you even have a choice?
No one person can save a product that has been mishandled, mismanaged, disrespected. No one person has the hours in the day. We are all just barely making it as it is. When was the last time you were able to get in a solid workout? When was the last time you got to hang out with your family without looking at your watch, smart phone, tablet, or laptop? Still checking slack at 0203? I don’t know about you, but I’m struggling with this.
The data model was built to support robust reporting from the beginning. Awesome job team! I mean that. That being said…
How are we just now addressing data exports and reporting? Isn’t that the driver of everything? Accurate data? Without accurate data, every other feature is irrelevant.
We shouldn’t even be thinking about federated identity integration…we don’t even have an S3 bucket to store files but I for now we can live with serialization via base64 encoding. We make due with what we have. That’s all that we can do.
If software development teams always interviewed candidates based on empathy and passion as a priority, then software development teams could be confident that their concerns are being heard as employees and they could feel security knowing that their mental and physical health and well-being are prioritized over launch dates.
Nobody wants to work in an environment of ever shifting priorities, guilt tripping, and bullying. I don’t know why I didn’t call it out right when it happened?
It’s awkward and it’s a mean spirit behind the guise of authenticity to manipulate you into over working and wasting a lot of valuable time that you could be using to improve.
It’s OK. You don’t have to get all of your words right initially. Just tell the truth. It’s OK. It’s the imposter syndrome that is holding me back from interrupting the standup and forcing our team to take a step back. It’s uncomfortable and it’s lonely.
It’s the culture. It’s not designed for sustainability, it’s designed to be big and a little bit manipulative. It’s designed such that you feel guilty that you weren’t in the office for 8+ hour days, 7 days per week. It’s designed such that you feel guilty for closing the @@@@ing laptop and hanging out with your 13 year old daughter listening to Kpop because she loves BTS and NCT.
Don’t beat yourself up. You didn’t let anyone down. You didn’t know what you were getting yourself into. A lot of hands have touched this project before you did. Did you even have a choice?
I will continue to help my team fix bugs and develop features until we part ways. I will continue to be happy and try to make everyone around me happy because everyone wants to be happy in their own way.
You are awesome…and you deserve better! 😉