Во-первых, научись работать без стресса - снимай его с себя.
Объясни PM-у, что на оценку задачи нужно время.
И начинай спокойно оценивать.
А стресс пусть будет на РМ-е, а не на тебе - разработчик должен работать в спокойной обстановке.
Максимально подробно раздроби задачу на подзадачи, которые уже более-менее легко оценить.
Для каждой подзадачи укажи оптимистичный и пессимистичный сроки выполнения.
Закладывай время с учётом того, что какие-то моменты могут зависеть не от тебя.
Все это удобно делать в Эксельнике или Google Spreadsheet, которые за тебя просуммируют оптимистичную и пессимистичную (точнее, более реальную :) ) оценки.
Скорее всего, когда сделаешь подробный разбор задачи на подзадачи, возникнут дополнительные вопросы к PM или даже к заказчику.
Их стоит, конечно, задать, и, если позволяет время, высылать свои оценки, только дождавшись ответов на свои вопросы.
Вроде все просто.
Да, ну и еще в конце можно умножить все на 1.5 - 2 :)
И еще важный момент - как набраться опыта в оценках.
Если ты будешь делать оценки в таблицах, а потом будешь делать работу, отслеживая своё время, используя для этого, например, Harvest, как это делаем мы, то конечно же, по завершению задачи ты сможешь сравнить - как сильно ты промахнулся с оценками.
А в будущем сможешь оценивать задачи более точно.
Антон Пермяков,
Фьюз Эйт Онлайн