SaaS startup hosting?

13 replies
Hope this is the right area of the forum to post my technical questions. . . .

I am starting a software as a service business and there are technical questions that need answering.

The service is by monthly subscription for business owners (particularly, one-man band practitioners in business for themselves, like a massage therapist that works out of her home). It helps manage their practice so they can focus on getting paid for the technical work that is their expertise.

I need hosting that is secure, encrypted (so they can take payments and book appointments online), and also so they can have a website that is a subdomain of my website (theirwebsite.mywebsite.com). Also, so they can manage their business through a portal on my website, and update their website and see analytics for it all in one place, like Google's interface for AdWords campaigns is a dashboard for the customer showing the information they want to see.

How can this be accomplished? At least, what infrastructure does this kind of project need to be safe, and scalable, where it works as well if I have 1 subscriber or 1,000,000? What kind of hosting does this require?

Thank you for your advice! I'm open to any suggestions.

--Nicholas
#domain #hosting #saas #scalable #startup
  • Profile picture of the author Kingfish85
    Do you have the app developed yet? That's the first step. Like any other web application, the only way to figure this out is by testing.

    As far as payments, I'd recommend using a gateway processor to keep the exchange of credit card info off the platform itself. PCI compliance is not cheap & is not an easy step.

    You're going to need a control panel so they can manage their hosting features/sites etc.

    Realistically, you're not going to know anything until you start testing, and there's no 1 set platform to do this one. You could start out with a small VPS then have to scale to multiple clustered physical servers. You could also be fine with just a small scale VPS. There's no way to tell until you have a starting point & start testing.

    If you have any questions, please let me know. I've already posted here, so I'm not going to post on the thread at webhostingtalk.
    {{ DiscussionBoard.errors[7389956].message }}
    • Profile picture of the author hightest
      Originally Posted by Kingfish85 View Post

      Do you have the app developed yet? That's the first step. Like any other web application, the only way to figure this out is by testing.

      As far as payments, I'd recommend using a gateway processor to keep the exchange of credit card info off the platform itself. PCI compliance is not cheap & is not an easy step.

      You're going to need a control panel so they can manage their hosting features/sites etc.

      Realistically, you're not going to know anything until you start testing, and there's no 1 set platform to do this one. You could start out with a small VPS then have to scale to multiple clustered physical servers. You could also be fine with just a small scale VPS. There's no way to tell until you have a starting point & start testing.

      If you have any questions, please let me know. I've already posted here, so I'm not going to post on the thread at webhostingtalk.
      Thanks for posting. I do not have the app developed yet. I am going to use Chargify or Zuora (probably Chargify) for customers to pay for their subscription. They say they are PCI compliant. Wherever we can avoid reinventing the wheel on this service, we would love to use good, existing "wheels" to use on our service. For any recommendations, I am all ears.

      The service is mainly to let practice owners in business for themselves to take payment either through the website (subdomain) I host for them and let them manage by credit card, check (image deposit) or cash (just reconcile payment with the accounts receivable entry if expense tracking tests as a feature small business owners would ACTUALLY use). So for this I would like to integrate with PayPal, which offers credit card and check deposit, and/or Square. Again, no desire to reinvent wheels. What possibilities do these services offer for integrating into applications/websites/services?

      You are right, I need to get a test application out right away, and I am one step away from hiring developers. Before I do that, I want an absolutely clear vision of how the service will look and work for customers.

      Here is another question: Practitioners I have in mind (i.e. massage therapists, personal trainers, PTs, etc.) are on the go and rarely in front of a computer. But I want a website/portal where they can manage their website (a control panel as you said), which needs to be easier than the control panel on something like say Host Gator, which is hard for anyone not in the business to understand. We need the Model T of website design and management ("You can have any color you want, as long as it's black." applied to web choices and design, because I believe non-web designers are often hurt by their choices in web design). So easier than Weebly, and like a dashboard (like Google Adwords dashboard, where you manage and see everything from a page behind the scenes).

      So that needs to be usable on a browser. And because they are so mobile they need iOS and Android apps to take money and set appointments so they will actually use the service. Here I am sure you would be right reminding me I don't know until I test, and you are right. These are my assumptions, many of which will probably not pan out.

      Reading other forums and listening to your guys' advice, I will go with VPS over say Amazon EC2 or other things. What do you think about Linode? And is the 1GB option good for $40? What will tell me my hosting choice is either too much or too little?

      Thank you for reading this, my Mastermind Group!
      {{ DiscussionBoard.errors[7393710].message }}
  • Profile picture of the author SteveSRS
    What you need is very clear..

    VPS hosting..

    Own your server, you setup everything, scalable.. VPS is basically made for the exact situation you are in.. start fairly small developing your app then you can grow.

    However just a tip: if you want to do it the right way you have to setup a 'development server' and a 'production server' to continue to work on your apps without affecting your live users (for after launch of course)..

    VPS's can be cloned very easily with most providers so you could leverage that..
    (only downside is double hosting costs) but you could leave the dev server with less resources then the prod server
    {{ DiscussionBoard.errors[7390874].message }}
    • Profile picture of the author hightest
      Originally Posted by SteveSRS View Post

      What you need is very clear..

      VPS hosting..

      Own your server, you setup everything, scalable.. VPS is basically made for the exact situation you are in.. start fairly small developing your app then you can grow.

      However just a tip: if you want to do it the right way you have to setup a 'development server' and a 'production server' to continue to work on your apps without affecting your live users (for after launch of course)..

      VPS's can be cloned very easily with most providers so you could leverage that..
      (only downside is double hosting costs) but you could leave the dev server with less resources then the prod server
      Does having a development server and a production server mean two separate subscriptions? What plans do you recommend that provide both at the level needed (starting out, scalable, and as economic as possible while still having competent specs)?

      Also, what is the best way to learn what I need to know about building a web application on a VPS server? Is there reference material that's helped you learn what you needed to know?

      You mention cloning a VPS. Is that like copy/pasting whatever passes testing on the development server and putting it on the production server as an "update"? What is the best way to document the development process, so there is an understandable record from Version 1.0 to infinity?

      Thank you again for taking a look at my questions.
      {{ DiscussionBoard.errors[7393747].message }}
    • Profile picture of the author Damien Roche
      Originally Posted by SteveSRS View Post

      What you need is very clear..

      VPS hosting..

      Own your server, you setup everything, scalable.. VPS is basically made for the exact situation you are in.. start fairly small developing your app then you can grow.

      However just a tip: if you want to do it the right way you have to setup a 'development server' and a 'production server' to continue to work on your apps without affecting your live users (for after launch of course)..

      VPS's can be cloned very easily with most providers so you could leverage that..
      (only downside is double hosting costs) but you could leave the dev server with less resources then the prod server
      You can also run both staging and production environments on the same machine if you're running on a budget.
      Signature
      >> Seasoned Web Developer (CSS, JavaScript, PHP, Ruby) <<
      Available for Fixed Fee Projects and Hourly ($40/hr)
      {{ DiscussionBoard.errors[7400178].message }}
  • Profile picture of the author SteveSRS
    uf my friend there are sooo many things that are important here software development is not an easy thing but I'll give you a few points here..

    The best thing you should do is find some template software development plan I don't have one here to share but I'll bet google is your friend here..

    Ok so tracking development / version management is done by GIT or SVN (other options exists but those 2 are the best).. google for more info both are pretty easy to use..
    GIT is not free but easier to setup..

    SVN you can install very easy on own server (e.g. VPS server) and is also easy to use (and free!)

    Specs for the VPS server completely depends on your app but well just start with basic server which has enough juice to setup apache + mysql server.
    2+ GHZ CPU
    752+ mb ram
    10 - 20 gb hd

    This should be good to start and use as Dev server then just install it with your fav linux distri and Apache + mysql (always use latest versions available for your distri). You can also choose for Nginx + Mysql for example (faster) but not that standard thus might give you some problems (which can all be over come but well time = money thing)..

    Then for version 1.0 (launch) you can copy VPS image to another VPS server (not 2 subscriptions but yes double costs same account with most providers).

    Then you can continue working on dev server and when you want to release 1.1 just make sure all works on dev server and do the cloning again (this cloning is often offered as a simple click a couple times service and takes about 10 minutes (depends on how large your HD is for exact times) ).

    Of course there are MUCH more 'complicated' setups like multi server, high availability, load balancing, use of CDN's to serve static files etc etc etc
    {{ DiscussionBoard.errors[7397768].message }}
    • Profile picture of the author wayfarer
      Originally Posted by SteveSRS View Post

      GIT is not free but easier to setup..
      That's not true, Git is still free, though there's a lot of commercial server products for it. I like it a lot better than SVN also, it's easier to use all-around, and much more efficient. SVN has better user-interface tools for Windows users though.

      I use Git mostly from the terminal, though there's a great GUI tool for Mac OSX called SourceTree that I love using. It's great for reading commits, and analyzing the differences between versions of documents. There's nothing as good as SourceTree written for SVN, that I know of, though there may be by now, I'm not sure.
      Signature
      I build web things, server things. I help build the startup Veenome. | Remote Programming Jobs
      {{ DiscussionBoard.errors[7400248].message }}
  • Profile picture of the author Damien Roche
    I'd advise you go for VPS and head over to linode.com. You can get a cheap linode for $20/month which is enough for testing your service.

    Skip SVN, go for Git.

    Hire a developer (check Elance.com) to help setup your environments if you are not technically inclined. Linode have excellent tutorials on setting up VPS's:

    Getting Started

    If you don't know what SSH is, have never used Git or SVN, and never managed a VPS before, then be prepared for a struggle. Your time might be better spent on other tasks, so you have to weigh up whether it is worth hiring somebody or not. You could potentially have all this done for you quite cheaply.

    Check out the above linode tutorials and see how far you get, then post back here with any questions and I'm sure we can help.

    Originally Posted by SteveSRS View Post

    GIT is not free but easier to setup..
    Yes it is. Private hosting isn't likely free (like github.com) but I'm sure you could find it. If you host yourself, like you suggested with SVN, then it is free and you can use gitolite or gitosis to manage those private repos.
    Signature
    >> Seasoned Web Developer (CSS, JavaScript, PHP, Ruby) <<
    Available for Fixed Fee Projects and Hourly ($40/hr)
    {{ DiscussionBoard.errors[7400227].message }}
  • Profile picture of the author hightest
    This is a little bit down the road, and thank you everyone for your input so far.

    Part of the service will be to offer subdomains and hosting of those subdomains for the subscribers.

    My rule is for the practitioner/business owner to be able to set up their website in under five minutes with zero technical skill. Kind of like facebook, but with less features and choices, where it is pretty standard but they can customize colors, upload some JPGs of pictures, and put a Google Map API and their hours, info, etc, and an appointment booking API.

    What is best for a website builder as part of my SaaS web application: licensing software, installing free or open source, or building my own custom app?"
    {{ DiscussionBoard.errors[7406495].message }}
  • Profile picture of the author brettb
    Just a basic shared hosting plan will work if you only have a few users. I've seen too many clients burn $$$$ with elaborate hosting plans when a $5 a month GoDaddy plan would have been good enough!

    Honestly, my 3500 member site works great on a GoDaddy cheapest plan!
    Signature
    {{ DiscussionBoard.errors[7409034].message }}
    • Profile picture of the author luckyman#9
      I'd look at possible turn-key solutions on various platforms. I believe Drupal had one, but I can't find the link at the moment. I think it was commercialized through OfficeMedium. There are likely others too.

      If you go with Python or Ruby you can check out Heroku (Heroku | Cloud Application Platform) for hosting. For payment, Stripe has been great for me and Square will allow a person to take a Credit card over their phone, but not everyone likes an email only receipt. Square does not have an open API to use via a web app (or at least not last time I checked). Paypal is good, except that it is paypal. Authorize.net is another big one, but they are pricier. You have the payment for the service which could be stripe and then the providers ability to use a gateway, which could be different.

      But really, I feel you need to consider a higher level approach. There are simply too many things to consider in creating a full-scale web app for a non-technical person to execute successfully and with sufficient quality, imo. I'm certainly not trying to discourage you, but I would consider finding a technical partner who can choose the platform and hosting. Someone who can help hire technical resources if they themselves are not the developer. They could be an IT consultant you pay to do an architecture assessment and help you hire the right people. Having a proper architecture for the other folks to develop will save you time and money in the long run. I'll go so far as to say it is critical to get someone in that plays this role. If you feel confident in doing so, then go for it. But if not, don't skip it and try to do this stuff yourself and then hire people to develop that you have to manage.

      My .02. Good luck with the project.
      {{ DiscussionBoard.errors[7413006].message }}
  • Profile picture of the author lordspace
    Hi,

    Here is what you have to do.
    - get in front of your potential customers and either ask them to subscribe OR write a letter of intent. Then build the product within next 30 days
    - get a shared hosting and invite people to a closed beta
    - the staging server can be on the same server as others suggested e.g. beta.domain.com or staging.domain.com
    - when you're ready to launch get an SSL certificate and have it installed on ssl.domain.com OR secure.domain.com ... GoDaddy has some nice offers
    - write more content & send emails to your email list
    Signature

    Are you using WordPress? Have you tried qSandbox yet?

    {{ DiscussionBoard.errors[7418500].message }}
    • Profile picture of the author hightest
      Thanks lordspace, I like the idea of getting the product out in thirty days and "selling then buying" -- get customers then give them a product.
      {{ DiscussionBoard.errors[7418593].message }}

Trending Topics