After college, I went to work at an IT consulting company as a technical consultant/software developer. We did custom development for large corporations, writing software based on the customer’s requirements. In addition, our company also sold proprietary portal software to these customers. I was working on a project where we made updates to the portal software that we already sold to a customer and installed in their environment. Also, I had access to their environment and could make updates whenever needed.
One day, while working on a new feature for the customer, I found a bug that had been there ever since the software was first installed. Even though the customer wasn’t aware of the bug, I knew that this was a serious bug that may cause a significant impact in the future. I thought about going into the customer’s environment and making changes myself without notifying the customer. In doing so, the credibility and reputation of our software would remain high. On the other hand, if I tell the customer about the bug and how it’s been in their system for past 2 years, they would lose confidence in our software and, furthermore, in our company. I didn’t know what to do. To make the situation more complex, the portal software was written by the management and they were very proud of it. If I tell them about the bug and how it’s been there ever since the software was written 7-8 years ago at the time, and that this bug is present in other customers’ portal as well, it would really embarrass the management in front of fresh consultants like myself. My dilemma was that I could just keep quiet and fix the bug without letting anyone know.
At the end, I decided to tell my manager and just follow what he would say. He was honest and told me to the fix the bug and notify the customer, and that’s what I did.
Contributed by SB.
To comment on this dilemma, leave a response. For anonymity, omit your email address and website, and use a screen name.