Hi Richard, You can get a number of valid answers and good advice that differs with these questions. It's often a matter of the style of the existing management team and who you're bringing in. But let me try to give you a view from my experience, as best I can, item by item:
1. Assuming you have the right mix of skills, how you set up dev teams is more a factor of your product/tech roadmap and the type of dev process you choose to use. A multiple, integrated set of products sounds more like something that you will roll out in increments, adding new features and functionality as you go. This fits more with integrated product teams, perhaps agile/scrum driven, pushing out new builds every several weeks or so. In my opinion, in this scenario, great project management is far more important than the VP Eng, unless that VP is also a great architect or super-highly skilled in your domain, and that's what you need. If you want to stay under the radar and build the platform complete or nearly complete before release, then a distributed functionally organized team possibly using a traditional waterfall approach or a pull system may work for you. We tend to use a variety of dev processes depending on need.
2. You're better off outsourcing simply because there is no need to duplicate the great resources out there. But you still need a key security person. This is not only for the cloud, you need this person to make sure you have protection in the cloud but also in your own code. Security in the cloud is not purely a function of infrastructure security. It is first of all a matter of good coding practices. Coding errors result in vulnerabilities. Also consider a layered approach rather than simply going with a cloud host. As an example, in one of our companies we run on Engine Yard on top of AWS. This gives us a higher level of security, great flexibility, almost instant scalability, and load balancing - it fits very well for a very high reliability application and I'm thinking of moving more to this setup.
3. The product manager should report to you and can also be the chief architect and VP engr. Like I said, you will probably find good program/project management a better driver for a fast moving cloud platform development than a VP engr, unless that VP engrg brings high skill levels and experience in your domain.
4. In a startup, I prefer to combine the top sales and marketing and have combined sales & marketing teams as well. You can call this person the CRO or anything you want. But the purpose is to manage the entire cycle from attracting leads through the sale and after sales service in an integrated manner.
5. You may want to outsource internet marketing to a top agency that will provide content marketing, continuous website updating and builds, SEO, etc. You still need content development and traditional marketing inside, the latter especially if you're doing trade shows. In healthcare, you want to build a great whale hunting capability. I mention that here because it's a talent that bridges marketing and sales although done right, it is a very personalized process. The right whale hunter will rarely be working for your CRO. You may also want to do this yourself at this stage. If you're not a competitor to them, look up and try to make LinkedIn contacts with DataMotion. They've already met the challenges you're describing and have a finely tuned marketing and sales function.
6. I agree that a COO is a great position for you to establish and to be responsible for development and continual improvement of all your internal processes.
I hope that is of some help. Tom