1. Good estimates are possible.
- use intervals, not single numbers; intevals are asymmetric (worst case is far out compared to best and expected cases);
- calculate using PERT estimates;
- estimate by combining top-down and bottom-up estimates; when both agree, trust the estimate; otherwise, refine/revise the plan;
- let the assignee estimate their own work, but the manager correct it (because of (2));
2. Better engineers tend to underestimate their own time more than average performers.
If management tells you how long you got, look surprised and ask them how they can know that; then tell them you will now working on calculating how long it will really take. If their "gut instinct" and your professional estimate diverge, show them your plan, talk them through it, and ask them which part you should leave out (if you keep the time fixed, perhaps you can shrink the scope).