I recently had this discussion with an accountant. We generally have to estimate our times in hours for clients. This is very hard. One can look at all the requirements and have an idea on how long it will take, but one can never be exactly sure.
I made analogy to the accountant by asking him how long it would take him to add two large unknown numbers in his head, down to the millisecond. This is similar to what software developers are asked when they have to estimate the numbers of hours for a project.
BTW - The senior guy is probably over estimating to cover his reputation of delivering early or on time.