As a web developer, you probably have found that clients often share similar pains. For example, most small businesses which purchase eCommerce systems need simpler interfaces to make the products less intimidating. You might have a way to streamline website creation or a better way for customers to process payments. Regardless of the purpose, if you find that you are commonly reusing code across multiple projects, it's worth looking into rolling out your own software as a service (SaaS) platform.
Making the transition from being a freelance web developer to a SaaS product owner doesn't have to be difficult. Once you've done your research to ensure there is a demand for your product, as discussed in Sitepoint there are plenty of resources you can use to determine the competitive landscape of your offering and whether the niche is profitable.
Not Necessarily Easy Money
When done properly, offering a SaaS product can be a great way to build a steady stream of income. Unfortunately one of the biggest challenges a web developer faces when launching a new offering is sales. As discussed on the Andersen Horowitz blog, sales isn't just about showing value to a consumer. SaaS offerings need to provide new value to the consumer.
If your product isn't addressing a pain point other products ignore, what incentive is there for prospects to choose your offering? If you're thinking of creating a SaaS solution, a good way to enter the space while reducing your risk is to repurpose code you've already written for clients. For example, if you have a custom eCommerce configuration or content management system (CMS) you use for projects, offer to host the project on your servers as part of a subscription package.
Graduating from Budget Hosting
Aside from sales, handling the technical side of SaaS management can be a challenge for many web developers. The dynamic nature of SaaS products means you'll be balancing the needs of all your customers rather than one specific client.
Since many shared hosts have strict limitations on resource usage and the level of access you have to the operating system, these vendors are never an option for rolling out your own subscription service. Instead you'll need to use virtual private servers (VPS) or dedicated systems.
While choosing a provider can be overwhelming due to the abundance of vendors, Sitepoint has a summary of an extensive study on the topic.
In most cases you'll want to choose managed servers for your offering as it enables you to focus on product development. Although unmanaged servers typically are cheaper, they don't provide support beyond hardware maintenance. If you have a system administrator you already use, you might save money depending on your billing arrangements. Ultimately the choice boils down to how much expertise you want to keep in-house and what you would prefer to outsource.
Providing Customer Service
When running a subscription based business, providing quality customer service is vital to the success of your company as it's part of keeping users loyal to your brand. Although it's a area to address, Guy Kawasaki's book Enchantment is a must read for anyone looking to learn about providing quality service to their customers.
Although not a SaaS company per se, Zappos is one of the best examples of a technology company embracing the customer first model. It's a similar model except for your offering, you're delivering intangible goods to the consumer rather than clothing.
In general the key principles to keep in mind when considering customer service within your project is that you should treat it with the same level of care as your code. Remember, the customer is more important than the company. If you have staff handling customer service you need to empower them to do what is best (within reasonable limits) to help resolve customer issues.
For example, rather than just refunding a purchase, an employee might offer an additional credit for a future purchase. Maybe a customer is having financial problems and they need a discount for a couple of months to keep their subscription active. By embracing compassion within your business, you can stand out even in the most saturated markets.
Slightly Expanding Your Horizons
Owning a SaaS product isn't necessarily too different from being a freelance web development professional. In fact being a freelancer requires similar skills to running a SaaS company.
Delivering quality customer service and providing reliable products are both duties you have as a freelancer.
The biggest adjustment you'll need to make when offering a SaaS product is knowing how to properly manage staff and contractors so you aren't spread too thin. Of course it's up to you how you scale your offering. It might be limited to a handful of customers or you might aspire to be the next billion dollar company. It all depends on your goals and objectives.
Jump Start Git, 2nd Edition
Visual Studio Code: End-to-End Editing and Debugging Tools for Web Developers