This is probably one of the most important lesson learnt so far for my summer internship. After writing code for so long, it should be ingrained into me that software breaks all the time.
As a new developer, I panic very easily. I will not think properly and logically, and as a result breaking more things than I should have fixed. One day while doing pair programming with my mentor, I was panicking as usual and he said:
“Engineers cannot panic.”
This phrase stuck with me for quite a bit. I didn’t really feel the reason why this should be the case at first, but on the way home today, I thought of the engineers who worked on fixing the SMRT train failures the day before.
Their job was way more tedious and the number of users affected by their fix rakes up to hundreds of thousands. The amount of stress that the engineers had must’ve been huge. But imagine what would happen if they panicked. Engineers are the ones who knows the system best. Keeping a clear mind and focusing on solving the problem at hand is what saves the day, not concerns about the consequences of screwing things up.
Here’s a little challenge to myself, the next time something breaks, take a deep breath and solve it in a calm and peaceful state of mind. Not forgetting to time myself to do it within a time limit. 🙂