As a longtime product person, I tend to lean on both user stories and job stories. I find that user stories tend to be better for isolating pure function, with motivation being secondary. Job stories are the inverse, focusing the impact on the need the user has, and leaving the function as a means. Both are useful.
This isn’t a note about product skills, though. This is about growing as a developer so that I can be a better product person.
I don’t yet see myself as a competent developer - there are frankly too many holes in my skill set. To counter that, and due to the focus on ‘function’ over ‘motive,’ I took a stab at writing out those skills as user stories.
- As a developer, I can make an app an app with multiple users because apps need to cater to more than just me.
- As a developer, I can make an app that accepts (and records) user input because apps should interact with and remember users.
- As a developer, I can make an app where the user fills out a form to create content because apps should allow content to grow with the needs of the users.
- As a developer, I can make an app that emails users (account maintenance) because users forget passwords.
- As a developer, I can make an app that emails users on a schedule (e.g., daily digest) because not all actions need to happen in the app.
- As a developer, I can scrape content because adding factual content is an important step in growing an app's foundation.
- As a developer, I can integrate scraped content into my app because scraped content outside of an app is only so useful.
- As a developer, I can integrate an ML-recommendation engine into my app because
- As a developer, I can use ML to modify my content (classification, TF/IDF, etc)
- As a developer, I can deploy multiple apps in multiple containers (Kubernetes or Docker Swarm)