Hacker News new | ask | show | jobs
by jhchen 2976 days ago
I would add most companies do not have the product/engineering/ux talent to approach this problem. Stripe is in the unique position that its talent can execute on several internal “projects” that each individually could justify an entire company to build. Most founders / leaders care deeply about their enriching their teams’ camaraderie and collaboration -- even if only from a cynical rational perspective of onboarding, productivity and retention efficiency (though I would argue from talking to many of them there is also a benevolent side to that). It is an hard problem to get right and Home nails several important details.

Disclosure: I am a founder of https://slab.com that is also addressing this as a scalable SaaS solution.

1 comments

I'd suggest that if you are building a product like this, it really needs to work on-prem. Many companies will not host this kind of critical information outside their own network.
Seems like premature optimization. One can build a huge product based on the companies that don't mind, and adapt for on-prem later depending on feedback.
You can often tell when a product has been changed to do on-prem as well as the reverse. Those traces of transition can be painful for the developers and the customers. Like the other person mentioned there's a lot you probably won't consider in terms of features or compliance if you're not building for both.

There's also ops and support. Building something meant for a dedicated team to keep running is way different from something a team will do ops for as one of many things. A complex architecture (even if contained in a single VM) requires a lot more support from more capable support people on the developer's side as well.

You have to think through a lot there. It's not something to take on without careful deliberation but if you're sure you'll eventually need to do both you should strongly consider it. If nothing else make it part of every design decision and pay attention to operational overhead by your own teams because those problems might end up being customer problems.

It's not only an optimization problem.

Building Saas-first or on-premise-first leads your product toward distinct attractors (features, behaviours, compliance, etc.).

Perhaps using something like replicated.com if you don't want to do it yourself?
It’s not even possible to avoid on-prem. Stripe Home is clearly searching repositories.