DEV Community

Discussion on: How feasible is Serverless technology for startups?

Collapse
 
jessefulton profile image
Jesse Fulton

I wouldn't necessarily say one approach is better than the other - it really depends on your team, needs, requirements, budget, etc. However, there are a few key differences which may help inform your decision:

You don't manage the infrastructure
Pros: no servers to patch or update; servers won't crash; most FaaS will essentially give you auto-scaling for free
Cons: you don't have much control over runtimes and languages which can be used; custom binaries or dependencies can be difficult to implement or require kludgy workarounds

Local development usually requires emulators, or using cloud services
Pros: using live cloud services gives you dev/prod parity; emulators exist as well
Cons: using live cloud services requires internet connectivity and can get messy to manage with a large team; emulators aren't great (IMHO)

You must design your system with release management in mind
Not necessarily any pros or cons here, it's just a much different approach when designing serverless/microservice architectures versus monoliths. Serverless frameworks can add an additional layer of abstraction and/or complexity for deployments


FWIW, I'm a fan of Firebase, and based on the vague description of your project :-p it sounds like it might get you what you need (Auth, CRUD, Functions/Cron, Notifications)