After seeing the amount of shoddy, insecure, dangerous code that gets shipped into production at a supposedly high-quality code shop, I've become increasingly of a mind that software engineers need to professionalize. I try to project a professional ethic in the workplace of not shipping broken or harmful shit, which extends to refusing to cut corners on testing, automation, and maintainability.
I think it's important that I exercise professional integrity because I personally have the luxury of being able to afford being fired. If I lose my job because I refuse to do something, nothing bad will happen to me:
- I am a citizen in my country of residence (can't lose green card / etc.)
- I have a deep financial safety net
- I live in an area with high demand for my skills (if I spent more than a month looking for a job I would be shocked).
Not everyone is in this position. I respect that, so I'd like to use my privilege to make it more of a professional norm.
I think not shipping shit extends to everything from the obviously immoral to code that will hurt the customer (or their customers) because it is insecure or unmaintainable.
I think it's important that I exercise professional integrity because I personally have the luxury of being able to afford being fired. If I lose my job because I refuse to do something, nothing bad will happen to me:
- I am a citizen in my country of residence (can't lose green card / etc.)
- I have a deep financial safety net
- I live in an area with high demand for my skills (if I spent more than a month looking for a job I would be shocked).
Not everyone is in this position. I respect that, so I'd like to use my privilege to make it more of a professional norm.
I think not shipping shit extends to everything from the obviously immoral to code that will hurt the customer (or their customers) because it is insecure or unmaintainable.