I am a new entrant to Salesforce (force.com) world coming from Java world. My team is migrating customer service functionality from Siebel to SFDC leveraging Service Cloud. We also have B2B commerce which is currently done through a custom java application. Since the majority of the business process automation (Order Management) is being implemented through Service Cloud, the team is considering creating a Customer Community for B2B customers and expose customer facing functionality using communities. Majority of my team are "Point and Click" developers with limited understanding of other polyglot technologies. While I do agree that Communities provide a quick way to setup customer facing sites, I am still not convinced that communities will be a better option against a customer web-app on Heroku or some other PaaS. Also the licensing and other limitations of force.com may not let the app scale.
The options I have in front of me are
- Leverage Community Builder and build a working site (Preferred by leadership)
- Leverage force.com sites (Visualforce + customizations) - Preferred by technical team
- Leverage Heroku and connect to SFDC using API and Heroku Connect - Preferred by me !!!
Are there any compelling arguments or any criteria which defines which way to go and when ?