I just read this story
the Art of interrupting engineers. While much of what I read was pretty obvious from the engineer’s perspective, the product & project manager perspective was illustrative.
Join 35,000 others and follow Sean Hull on twitter @hullsean.
There are definitely things that senior or more experienced engineers do differently. And those things can be learned.
Here are my thoughts…
1. Document all the things
By documenting all the little pieces you are working on you gain in a few ways. You communicate to management complexity they may not see. You buy yourself more time.
Finally you may even help yourself see implicit tasks more clearly. Whenever I hear myself or someone else utter the phrase “that should be easy”, I know I’m onto one of those mysterious tasks that seems simple but never is.
Be relentless. Break big tasks into smaller ones, and ticket each and every darn one!
2. Communicate more and better
If you’re doing agile, chances are you’re probably joining a standup everyday.
Those are opportunities to share what is blocking.
o What tradeoffs are you struggling with?
o What technical debt is slowing you down?
o What new discoveries may require a rework of the timeline?
There is surely an art buried in communication. You want to be descriptive. You don’t want to come off complaining. You want to educate stakeholders. Beware of coming off as dismissive.
3. Anticipate. Under promise & over deliver.
If you’ve gotten in the weeds with a particular API before, you’re likely to have a gut feeling about how new features and changes may go well or poorly. Or you may have dug through the comments. Maybe you didn’t find any!?
Or maybe the particular codebase sits on top of an interface or library you haven’t worked with before. So there will be a bit more of a learning curve. Whatever the case, try to promise less than you think you can really deliver on.
You can always finish extra tickets and over deliver later!