How did I miss an interview

In Feb.6 2022. I miss the interview with ****(name reducted). The reason for that is that my calendar had its sheduled interview time at 12:30 instead of 11:30.The event in the calendar was automatically added using an todo list application (a sub module of FMA) written by myself, so there must be a hidden bug I didn't find.

Debugging

I first analyze the process of event synchronization. There are basically two stage, the first stage is parsing, the second stage is send request to calendar api.

I first test calendar api using an unit test I've already written. Everything works fine.

So, the problem occurs in time parsing stage.

After running another unit test, I found out there was a bug in time conversion. I forgot to change timezone value

1
2
// to unix time
currentTime.Add(time.Hour*(-7))

because In Canada, there is a daylight saving time. In winnter, it is actually -8 instead of -7!

As a result, the calculated time is one hour later than the actual time.

Fixing

1
2
// to unix time
currentTime.Add(time.Hour*delta)

Lesson Learned

Never use your own application in real shit