There was an interesting article posted to hacker news about the nuts and bolts of a SaaS product that you might not expect (article, discussion). I commented based on my experience that the early days of a SaaS product are like building a bridge while your clients are walking across it. You want the bridge to be far enough ahead of your clients that they won’t fall off it. But, not so far that if you or they want to go a different direction you’ve wasted time and materials building a useless walkway section.
So, don’t build features your customers aren’t going to use. But do build features they are going to need. How do you know what the difference is?
- you can ask them. This is the only way to start unless you are a target user of your SaaS product (in which case, ask yourself). Depending on the technical sophistication of your users, you may or may not get good requirements, but there’s no better way to understand their pain. They will speak very confidently about their pain, however they will also try to give you suggested solutions. Don’t take those as gospel, as they may not have thought through the ramifications of said solutions. Find them by looking where they congregate online (facebook groups, forums, reddit). Targeted email may be OK if you have a relationship.
- you can build a placeholder. This is a great way to see if folks want the feature, if you have some folks using your app. We built a placeholder for document management: “email us and we’ll upload your documents”. After a few emails, we knew it would be worth it to build out some way for folks to self serve.
- you can build a MVF (minimum viable feature). A feature does not need to spring from your mind fully tested, polished and automated. Sprinkle in manual steps, use emails to people instead of automation, or release only a subset of a feature. The goal here is again to see usage before you fully develop it. Another benefit is that the MVF may be all that is needed.
- you can wait until clients ask for it. The value of this depends on when they need what they ask for. If they need it when they ask for it, then it’s just another data point (“thanks for the request. We’ve noted it in our roadmap”). If they need it a week or a month after they ask for it, then you can actually build it for them.
It actually can be quite helpful to checkpoint feature usage every so often. I’ve seen this done two different ways, though I’m sure there are more. The first is to look at the data and see what features clients are using. This is nice because it just takes developer time, digging through your OLTP database. Make sure you write down the results and the queries. However, this won’t work until you have some users who’ve been using your system for some period of time. The second is to schedule user interviews and watch your clients or prospects use your system. This is time intensive, but can lead to many many insights and gives you definite user empathy.
Now, this type of development doesn’t free you from having a strategy. You need to pop your head up every three months or so and revisit the strategy and see if your business is working toward it. But if you are a completionist than early stage SaaS is not for you.