pull down to refresh

The problem is always resource allocation, especially at the start of a project.
It's easy to delegate non-business-core functions to external services. It's also counter-intuitive to tell some of your production team to integrate or rewrite what seems mundane, already solved services such as a marketing suite.
IMHO those functions (like marketing and authentication) are core and should be integrated from the start...