Previous Episode: Developing a Plan

Estimating is hard. In fact, estimating is sometimes considered one of the hardest aspects of development. While for reasons beyond your control you can never guarantee the accuracy of our estimates, you can control how well you deliver and defend the estimates you provide. In this episode we are not talking about how you can provide better estimate numbers, but the processes you can develop in yourself so that you can be confident about the estimates you deliver.


Why estimating is an important development skill

Something that you will be constantly asked to do in your development career
Helps you to think more critically of your development work
Provides opportunities for collaboration and communication with our team

Before creating an estimate

Establish what you know vs. what you do not know
Ask questions to remove as many gaps as possible
Have the mindset that your estimates will never be the actual number

Methods of estimating

PERT system: Optimal value, Nominal value, Pessimistic value. Averaged.
Planning Poker: work with team to discuss and agree upon a value.
Comparative: Look at similar previous work, how long did that take you?
Breakdown: Split item into smaller workable pieces then estimate the pieces.

How to deliver estimates

Establish that you are providing your best guess based on what you know
Provide context and information around your estimate
Defend your estimate with your assumptions and experiences.
Record and get sign-off of your estimate from stakeholders.

Listener Challenges

What methods/tools do you use to develop estimates?
What are your opinions about estimates?
Write some code to generate a PERT number for your estimates.

Links from this episode

Deep Work* by Kal Newport
The Clean Coder* by Robert C. Martin
Law of large numbers

Previous episodes mentioned

Developing a Plan
The three key phrases you need to know to be a great developer.

*We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.