This week my main task for this sprint was canceled. While not as momentous as the cancellation of an entire project (I’ve been there too), deleting the past week’s work still stung. This isn’t the first time, though, so I know that there are a few things to keep in mind:
Bottom line: Were you paid for your work? Then your employer still sees it as valuable, if only to make sure that a given line of development was sufficiently explored before determining it wasn’t worth continuing. Developing a product or service often means saying “no” to things, and sometimes that means cutting losses before the sunk cost fallacy takes hold.
Over the past week’s work, I learned about managing TLS connections (including supporting ciphers that are no longer considered secure), parameter validation, and XML namespace support in XPath. You probably learned a lot more if your project extended longer, and you can use that knowledge further on in your career. Put it on your résumé or CV, and you may get an opportunity to work on the same things in the future.
Okay, maybe you’re not going to sneak into the office for months to finish things. But as long as you have the time and inclination, you could continue to work on your project, especially if you think it could be valuable to the company later on. Consider this carefully, though—you don’t want off-the-books work taking time and energy away from your main job.
Lastly, you shouldn’t feel ashamed about being part of a canceled project. They happen all the time, and probably should happen more—history is littered with failed software projects that likely could have cost less if only their problems were recognized earlier. By its nature, software development is exploratory and difficult, and not every idea pans out. As long as you can find something new to work on, you’ll be fine.