A Guide to Walking on Water

Walking on water and developing software from a specification are easy if both are frozen.
Edward V. Berard

Scope creep. It happens to everyone. You have a story that describes a new column that needs to get pulled from Salesforce. It should appear on a table in the application.

You’ve got the commit in test. A project manager stops by your desk, “It would be awesome if you could also pull these other two columns and display them in that table.” That won’t be too hard, so you agree and make another commit.

The project manager on Slack, “Looks great. Could you also show one those columns on another page?” You reluctantly agree, it’s just a markup change.

Two hours later, it turns out you can’t use those columns in another part of the application because the data is being pulled in another in a module that isn’t accessible here. You’ve got to do a refactor. It’ll take a week.

Sometimes as a software engineer, it’s your responsibility to say no when a request starts to grow. The requestor doesn’t always know what they are asking, or how complicated it can get, that is your area of expertise and responsibility as the engineer.