top | item 35566768

Mike Perham, Creator of Sidekiq: From Employment to Independence

201 points| derekkraan | 2 years ago |codecodeship.com

113 comments

order

shubhamjain|2 years ago

This is one of the best businesses I have heard of. Even 6-7 years back, Sidekiq was grossing $80k/month [1]. I imagine it must be much more now. No servers to maintain, no employees, minimal support work and Mike has the complete freedom to work on updates whenever he prefers. Almost entire revenue minus payment processing costs must be profit. Imagine making $1M / yr working only 10-20hrs per week (Don't wish to presume here, but that's my estimate of the man-hours it costs to run).

> I still have 0 employees and don't plan to hire. I tune my business processes to run as lean as possible: Most of my customers are on credit card so their payments are automatic. The gem servers take about one day of maintenance per year. I can't really outsource much of my support work because it is so technical and specialized.

> My gem server is a $6 droplet on DigitalOcean. Because gems are just static files, that little droplet can handle millions of requests per day with just Apache. Oh, and I run three servers in parallel for failover purposes for a grand total of $18/mo.

I wonder what makes Sidekiq special? I don't imagine any equivalent product (background job processing) in the other languages is raking in that much, if making any revenue in the first place.

[1]: https://www.indiehackers.com/product/sidekiq

mperham|2 years ago

Hangfire and Oban are two other background job systems which have a commercial aspect. AFAIK Hangfire has been around almost as long as Sidekiq and is still actively supported.

I'm closer to $10m than $1m in annual revenue now.

My take on Sidekiq's secret sauce: a job system is a distributed system. Most of Sidekiq's commercial features are available as OSS gems but the complexity sneaks up on you as you integrate 3-6 of those features together. Building your own almost always leads to a worse system than the mature, well-debugged system which I have curated.

sparker72678|2 years ago

Sidekiq is special because it's crazy performant, and it _works_.

Mike has built a system that's rock solid, and he doesn't twiddle around with it willy nilly. He keeps it super stable.

The people paying for it (I'm one of those people) are paying for the reliability, in addition to the features.

Mike's also managed to find a real sweet-spot with the features he holds out for Pro/Enterprise. The stratification is just right to nudge you up, but it always feels like you're getting a good deal when you pay.

iudqnolq|2 years ago

Oban is a roughly equivalent elixir library. They claim to have hundreds of customers and their cheapest plan is $500/yr, so maybe they make an order of magnitude less? Considering the relative language popularity that seems pretty good.

sorentwo|2 years ago

> I wonder what makes Sidekiq special?

Time, know-how, and long term dedication are the key ingredients from my perspective. Maybe he's working 10-20 hours now, but there's support and development every day for the past 11 years.

> I don't imagine any equivalent product (background job processing) in the other languages is raking in that much, if making any revenue in the first place.

I guarantee, there are background job processors in other languages making revenue.

EastSmith|2 years ago

> I can't really outsource much of my support work because it is so technical and specialized.

Yeah, I had a Sidekiq question on StackOverflow and Mike Perham answered himself couple of days later.

princevegeta89|2 years ago

Just like the underlying platform it was built for (Rails) - it is so stupidly simple to deploy Sidekiq. Performance is great and a lot of complexity is well hidden. This makes it a great product overall.

andris9|2 years ago

Mike Perham's Sidekiq was what I modeled my own business, EmailEngine, after. I took my decade's worth of expertise in email protocol implementations (I also run the open-source Nodemailer library) and built an email gateway app my customers can download and run on their machines or servers. Just like Sidekiq Pro, the customers need an active subscription to run it, but the app runs on their premises, and they maintain it. I only run the key generation and validation server, which costs me around $50 per month, including all the backups and so on.

I quit my job to go full in with EmailEngine exactly one year ago, when MRR for EmailEngine was $500, now it is $3,900 and steadily growing. I do work full time on it, but the result is async - the work I put into EmailEngine today brings me income sometime later, and the recurring income I receive today is unrelated to any effort I put into the company right now.

mperham|2 years ago

Congratulations, that’s great. I’m always happy to hear of more successful indie developers.

alberth|2 years ago

Unsolicited feedback, always link to your business in your posts.

I googled “emailengine” and it’s wasn’t super obvious which was your business since so much paid ads exist for that search.

philsnow|2 years ago

You have a bullet point about compliance / hosting concerns. I'm curious, do you have any idea how many of your customers care about that?

Do you have any concern that a customer is going to look under the covers and re-implement your product? I would guess the overwhelming majority of customers are going to be happy to just consume the API and go about their own business, but some products attract copycats, and handing out code / build artifacts makes that easier.

The tradeoff you've made makes a ton of sense if you're not concerned about copycats.

albertgoeswoof|2 years ago

I was just about to post emailengine here, the business model is so similar to sidekiq.

Any other great ideas?

jack_riminton|2 years ago

"I toyed with Sidekiq.js but decided to kill that idea real quick because, as we all know, JavaScript is terrible"

This is why I love the ruby community, so much sense :)

camdenreslink|2 years ago

I wouldn’t be so sure. They invented coffeescript in response to not liking JavaScript.

sickcodebruh|2 years ago

Sidekiq is one of my favorite things about using Ruby, I include it in my short list every time a "Why use Ruby?" question gets asked. I miss it desperately when I work in other languages. I plan on giving Faktory a shot ASAP.

Mike has always struck me as a great guy, really the kind of person who you're happy to know is building one of your favorite tools. In a world of starving open source contributors and mega corps throwing around weight, his success with Sidekiq stands out. It makes me very happy to see.

thaumasiotes|2 years ago

> I was Director of Technical Operations at The Clymb, which was outdoor-focused e-commerce vendor (think REI without the stores). I had a team of four and we were responsible for site devops and infrastructure. This was perfect because they were my alpha customer and I was in charge of the tech stack. The Clymb switched to Sidekiq immediately, of course, and every Sidekiq Pro feature I wrote was running in production before it was released.

This makes me curious about either

(a) conflict-of-interest rules at The Clymb that may or may not have governed the DTO directing the company to use his own separately-owned (commercial?) software.

(b) negotiating private ownership of software written for The Clymb.

One of those must have been relevant?

mperham|2 years ago

I started work on Sidekiq right before I joined so I made sure my employment contract had a IP carve out for anything related to Sidekiq.

I never charged The Clymb to use the software. Previously they had been using delayed_job and were suffering badly from scale issues due to the use of MySQL as their queue store.

aqme28|2 years ago

Love Sidekiq and loved how he runs it. Really feels like the right way to make money on OSS. Enterprise never crippled the free version.

joshmn|2 years ago

I've said this to Mike and I'll say it again: I hope he never gets a job.

adrianthedev|2 years ago

Mike is an inspiration to me and my project!

ezekg|2 years ago

Same. He's always been a role model for my business as well, especially when I was just starting out. My business uses Sidekiq every day. It really is a great piece of software. He's also one of the reasons I think open source software can be highly profitable if people just figure out a business model that works.

fidrelity|2 years ago

Mike Perham is an inspiration to me both in terms of Ruby/tech as well as business.

I've been using sidekiq now for almost a decade and had the pleasure to meet Mike at a Ruby conf many years ago.

everybodyknows|2 years ago

Naive question: How do you deter thieves who would pose as legit customers, but instead redistribute the library?

atonse|2 years ago

I know tons of other companies will share my view that we would never stake anything remotely important on a stolen library to save a minuscule amount of money. It would be absolutely idiotic.

Instead, we shell over the negligible monthly fees, spend no time thinking about it, and move on to solve real problems.

There are enough of us that it probably simply doesn’t matter.

pmarreck|2 years ago

Spoke with Mike at a couple of Railsconfs a few years ago (before I got into Elixir). Really great guy.

davidw|2 years ago

He's also a standup guy in terms of contributing back to worthy things here in Oregon.

polishdude20|2 years ago

Can someone explain what Sidekiq actually does?

JustLurking2022|2 years ago

It's always interesting to find out about these niche subcultures. Having worked with batch schedulers of all varieties for a couple decades, I've never run across Sidekiq but, then again, I didn't realize anyone had actually built anything in Ruby in the past decade.

john_fushi|2 years ago

I guess Matsumoto should have charged for Ruby. I'm sure Mike Perham and Derek Kraan would have been glad to pay for that and that the Ruby community would be in a strong and healthy shape.

ianbutler|2 years ago

People need to eat man, doing something for free is a luxury not many possess. We can see how messed up the financial situation is for a lot of Open Source devs and their lives would be better if they were charging money instead of subsisting off grants and donations.

I don't even necessarily disagree with your point that without being free those things wouldn't have taken off but we need to find a way to strike a balance in the developer community.

Sidekiq having a free version and an enterprise version walks an okay middle line imo.

jorge-d|2 years ago

Well Sidekiq is free to use. It's only the pro version that he charges and the free version code is open source.

I don't see the problem in having that kind of business model, it still allows the community to thrive and offers entreprises a way to have premium support.

Plus it allows him to invest more time in maintaining the free version.

ch4s3|2 years ago

This is a very bad take. From an OSS perspective languages can attract large communities of contributors and corporate sponsors because of their broad appeal and utility. Specialized libraries will have more trouble doing both and may need alternate models to sustain themselves. From a business perspective, Mike offers not only a free version but the paid enterprise version comes with support from Mike and his team, which is something you can't get from a language owner unless you outright hire them or they run a consultancy.

the_gastropod|2 years ago

To be fair to Mike, Sidekiq is absolutely free. He sells an enterprise version for money, that comes with support.

mattgreenrocks|2 years ago

Hilarious take given the fact that there are plenty of orgs making an order of magnitude more than Mike is that rely on Ruby.

bdcravens|2 years ago

Not by Matz, but there are paid versions of Ruby out there.