increasingly many applications now have such demanding or wide-ranging requirements that a single tool can no longer meet all of its data processing and storage needs. Instead, the work is broken down into tasks that can be performed efficiently on a single tool, and those different tools are stitched together using application code.
That just seems like an opportunity to build a new tool. Don't give in to the temptation until the third time at least.
You need to learn your use cases.
Working with "generic" code that is really just specific is a nuisance.