Building reliable background jobs and engineering workflows has almost always been challenging in any company I worked for, and I’m glad there is a company now who tries to excel the DX aspect of this problem.
This is a great one. I've experienced this myself, especially when you change an event/message and then you need to handle that change in your job/workflow. Things can break pretty easily so you need to have versioning for both.
This is why we've built event schema versioning and versioning for functions baked into the platform. We have big plans for the schema management side of things that bring concepts of data governance to engineering teams. It should just be for data teams. As a bonus, we can also generate language types from schemas easily then.
What else about schema management is a pain? What have you used for this?
Congrats on the launch. Building a reliable background job / workflow infra is hard. Temporal has lifted the bar significantly, glad to see new development.
As for the schema management part, we at bytebase.com have also built an OSS product to tackle this specifically.
Disclaimer: I work in Google Cloud, my opinions are my own.
Great stuff!
I use Google Cloud Scheduler a lot (manage dozens of cron configs) so have some thoughts on how they compare:
For monitoring, I definitely like what CronHub supports. I wish Cloud Scheduler had a similar monitoring API. As such, I have to do all that myself. The logs for Cloud Scheduler attempts are not connected to the logs of the jobs that get kicked off.
On ease-of-use, I'd say CronHub and Cloud Scheduler look about equal. Both have a Web UI, an API, and a CLI. However, Cloud Scheduler is supported by Google's Terraform plugin, which allows me to manage dozens of scheduler configs as Infrastructure-as-Code across several environments with ease. Obviously Cloud Scheduler also supports additional things like granular permissions (Cloud IAM) for different config management operations and authentication for scheduler requests, which are key to managing lots of configs for several teams and running secure infrastructure.
Feedback (some of this may already be on your roadmap):
- I'd recommend you create a Terraform plugin or at least provide some examples for the various IaC tools out there.
- Another differentiator you could add would be a cron schedule visualizer (for the cron-expression-impaired like myself) that shows all of one's cron configs and how they line up. That would help with situations where you're trying to arrange your crons to not compete with each other, or when you want to make sure the crons kick off in a certain order with gaps in between.
- Parts of cronhub.io drop into sub-domains, it'd be nice if there was a persistent navigation across them all so I don't have to just click the back button to figure out how to get out of e.g. crontab.cronhub.io when I want to get back over to the documentation.
- You should add at least some simple security to both the cron webhooks and the ping API. My app would like to verify that the cron request is definitely coming from CronHub. And CronHub should definitely want to verify that incoming ping requests from my crons are coming from my app. Similar to https://developer.github.com/webhooks/securing/.
- Not sure about pricing structure. Who only has 1 or 5 cron jobs? Even as a solo dev with some side projects I'd have to get a custom plan. I'd say be generous with Schedulers and charge for your differentiators (for $49/month I can get ~500 crons with Cloud Scheduler, but no good/easy monitoring of those jobs).
- Perhaps rename "Custom Plan" to something like "Enterprise Plan" or the "Scale up" plan or something. The larger businesses that will sustain you want to feel special when they look at your pricing plan.
- You'll want to offer Log Export (Enterprise plan?).
- It's not clear to me what the team collaboration aspect of your product is. Why wouldn't I just have a single user and manage/monitor everything through your API/CLI and Slack/Webhook integrations?
- One other piece of feedback: The text-shadow on your homepage is too much for me (I'm on Chrome on a Macbook), it's hard to focus on the text, I even checked my glasses for fog/smears when I landed there.
That said, I find your product inspiring (especially the no-free tier)! You present it in a personal way that makes it feel legit and loved, quite different than the dime-a-dozen SaaS landing pages that fly through here. Good luck!
I was in a similar situation as you except I have a full-time job. I started https://cronhub.io a year ago and it's currently a profitable side-business.
You don't need to focus on the idea too much. I think it's important but seeing other companies solving the same problem should not discourage you to come up with your own solution.
Take a look at these products for inspiration (https://www.indiehackers.com/products) and some of them solve a similar problem but they still co-exist.