· 30:52
Split your time in half spend speed 50 of your time doing the fun stuff like building the product and do 50% of your time doing marketing sales whatever will bring people to your product.
Jack Bridger:Hi everyone. You're listening to Scaling DevTools. Today we're joined by Julian Danchot, who is the founder of Mergerify. Julian, could you tell us a bit about Mergerify?
Julien Danjou:Sure. So we are Daztool, obviously. We're company building our product, Mergefy, which is aiming to do workflow automation for a software engineering team using GitHub and providing them a merge queue, which is something very interesting that is helping you to merge your pull request in the right order and being up to date.
Jack Bridger:Yeah. And you're working kind of closely on top of GitHub. Right?
Julien Danjou:Yes. Exactly. Yes. We are a GitHub application. So that's something you basically install on one of your repository and make sure that you you enable configure a bit, and then we automate a lot of the work for the team that use GitHub.
Julien Danjou:Yeah. And one of the reasons I really wanted to talk to you was the,
Jack Bridger:your bootstraps. Right? And dev tools are hard anyway. And then doing a dev tool as a bootstrapper when there's such, like, a lot of code that needs to be written is really hard. I wonder if you could talk about, like, how that's been bootstrapping.
Julien Danjou:It is it is terrible. Yes. It's it's very hard.
Jack Bridger:I didn't say terrible, but you've just
Julien Danjou:a hard problem. Yeah. Exactly. There are, there are qualitative things about that. Where do I start?
Julien Danjou:I think, I think it's a natural thing. So the way we started is, I co founded Mergeify with, Medi, which I met doing open source projects and working on Red Hat. And so we all like any engineer, right? So we've, we had a problem, we tried to solve it and we were, we wrote our own tool, which is what any developer would do, which makes it very hard to sell any tool to any developer if it's not advanced enough. Because I'm like, well, that's pretty cool, but I could build it in a week.
Julien Danjou:So no, thank you. I'm not going to pay for that every month. So when you start that way and you when you are in an early stage and your product is very early, it's seen that way by engineers. So you have to build enough of what you're trying to build. So you you pass basically this aspect of, actually, this tool is quite sophisticated, and it would be hard for me to do the same.
Julien Danjou:So it's worth it. It's for it's worth, like, seeing a demo, trying it out, deploying it because, like, deploying it and learning the tool is going to be, faster and less, time spent than building the tool to fit my need precisely. So you have to pass that, and that's a lot of time, r and d, basically, a lot of of development time for your product to reach that, spot, I would say.
Jack Bridger:Yeah. I should, like, just almost like role playing. Like, and when someone says to you, like, yeah. I mean, this is cool, but I could write a script that does this over the weekend. Like
Julien Danjou:I heard that. I heard that a lot. Not anymore, I think. But, when I, still obviously doing the demos to the most of the prospect we are, though, I meet, engineers, which is pretty cool. I mean, I love doing that, like doing demos and ensuring the product around.
Julien Danjou:And some of the team it's, it's more and more rare because we're targeting now, I think larger customers, but, and then no, I mean, we, we look more enterprising like we used to a few years ago, but I think until maybe a year ago, I was still listening on the beginning of the call. That's pretty cool. I don't see where the all thing is. And I was spending the next 30 minutes in the demo showing, okay, this is how it works. Okay.
Julien Danjou:That's easy. And, and I was like, and when it fails, it does that. And like, oh, you wonder the failure scenario. Yeah, sure. Okay.
Julien Danjou:That's pretty odd. Yes. Thank you. But I had to prove it like, because I mean, engineer to engineer, I know where feeling. I know over the thing.
Julien Danjou:I'm like, yeah, obviously it seems very, very easy to, yeah, let's build a car. So it's like, what, 4 wheels and a motor and yes, but when it crashed, what do you do? Ah, I should maybe save people from being okay. That's more complicated. Right?
Julien Danjou:So it's all the over part you don't think about and think it's very simple and there's a lot of viable around it. But you don't think about it when you are looking on the market for a tool or something. You don't think about all the tiny details. And, and a lot of the work I I used to have to do with BeringD was, like, proving the value of the products in in all the edge cases.
Jack Bridger:Yeah. And I guess, like, the stage you're all at now, you're covering everything and and, you know, the edge cases and stuff. But could you talk about what it was like at the very beginning where, like, you were building and then getting customers and that you also had a job at that time as well. Right? Like a full time job.
Julien Danjou:Yeah. When we both started with Medley, we, both had a full time job, which is also the reason we started this is that we were working on a, an open source project and we moved from a platform to GitHub and we we lost all the tool we used to have. So we migrated to GitHub and we felt naked without any of our tools. So we're like, okay, oh, we need to work every day. We would all follow our tooling.
Julien Danjou:So we just build the tools, obviously. So it was automation using GitHub API and a merge queue, which is still what we are doing with Vergify to this day. And we started building that and we realized that our colleague, I thought that we're interested into using that. So we're like, okay. Cool.
Julien Danjou:Let's give them access to the tool. And after a few months, I was like, there's so many teams that are talking about our tool being useful and we were trying to provide it, free for open source projects. But we started to say, maybe we should just connect Stripe and see if any private company wants to use it and maybe give us a few bucks every month to use it. And we found one of our first customer, I think, on the, Hindi hacker community, which used it for a moment and say, that's good, but that's not for me. But we still, you know, add that feeling of somebody putting his credit card number in Stripe.
Julien Danjou:We're like, there's something pretty great about that. It's like on the paper, it works. So let's try. And, and then we found a 1st real customer, which I think was, pitch.com, which is still a customer to this day. And and then we found more startups, more people willing to use a merge queue to merge their pull request, all of that.
Julien Danjou:And we grow that way organically, basically. And it's very hard, especially when you do that as a side project because we never thought it was going to be a company. We were like, just maybe we could, you know, pay the bill. We have to pay for what's not that expensive, but you have to pay for, you know, a VM somewhere, some cloud provider, all of that. So it's a few bugs every month.
Julien Danjou:So like, maybe we could that, you know, not, not give our money to do that. And then have some people fall nuggets, which was true for the 1st year. That was well enough, and good enough for us. And then you realize there's so much more you could add so much more value you could add to the tool. And you have requests from people using it.
Julien Danjou:Like, I would like to be able to do this and that. I'm like, okay. But I only have 2 hours per week to work on it. And which is true. I mean, we have, like, jobs, life.
Julien Danjou:It's it's hard to do that on the side at the same time. So which is another thing where it is really hard when you're bootstrapped is that you have low resources. When you, when you are bootstrap and you have another job on the side, it's very, very, very hard. You have to, but it is also a very good, drive because that's still a story I I I tell internally at Magify is like, people come to me like, we overwhelmed. We have too much work, too much things we need to do.
Julien Danjou:And I tell them, well, when we start Magify, we only add me and maybe 2 hours per week to do something. So you do only one thing per week, and you do the thing that is the most important that you have to do. The thing that is going to keep the company alive for the next week. That's basically the only thing you can do. Right?
Julien Danjou:So everything you cannot do, it's not that important. You just don't do it because you don't have the choice. So it's not, there's no point in trying to work like 12 hours a day. That doesn't work in the long run. And imagine you only have like 7, 8 hours a day to work and that's it.
Julien Danjou:So if you can't do everything, just don't do it. It's not that important. And that's what we used to, to do, at the early stage because yeah, no time, no money to spend. And it's very, very, very, it's very young project. So you have to be extremely focused and you have to make the right choice and you have to think about the choice you do.
Julien Danjou:And because and I think that's one of the downside, maybe, of having too much money is like, we just get get from money at any problem and see if it's going to, you know, to stick and and to be solved. Where you're good swapped with low amount of time or more and or money, you have to be very focused on what you do and take the right decision to stay alive.
Jack Bridger:Yeah. That's such a really, really good point I think. Like, it's so easy to just not get good at making decisions when you can do everything. But in air quotes, do everything. Yeah.
Jack Bridger:When you first said about, like, when they came to you and you said, I thought you were gonna say, well, we had jobs. We just worked really hard and we did teach, but that's a much better approach. Pick, pick the right thing. Actually, like, do you remember how much time you'd spent developing it, before people started using it internally?
Julien Danjou:Not that much. I think Mehdi did most of the grunt work of writing the first, let's say MVP. It's probably not that long. It's, it was really, MVP. Like it's, there's no, there's no line of code we used to use to this day because it's already like a Python script doing stuff and a lot of race conditions, edge cases not on the all, but it was a proof it could be doable.
Julien Danjou:And then we realized we could solve all the race condition edge cases, things that are not perfect. We could do it then. Is it worth to do it? No. So I think we spend maybe a month writing the first version of what's then become it became mergeify.
Julien Danjou:But the months was enough to show that we could do it. Then getting to the point where people were ready to buy it, I think it took us maybe 6 months in time, not 6 months of full time development. So maybe, like, a couple of months of having something very basic. The hack we used back then, is so both Milly and I are, like, backend engineers. So we don't know anything about front end like that.
Julien Danjou:Barely know how to do CSS, like any backend engineers. And since we built on top of GitHub, the hackathon is that we reported everything on GitHub using markdown, which meant we only had to write back end code and anything you would do would be on top of GitHub. So we would, we never wrote the dashboard. So we have a dashboard. No, it's a fancy dashboard with a lot of features, but because we hire people to do that because there was no point for us to do like the first that was we wrote was like HTML and the Bootstrap framework and pretty, this was pretty bad.
Julien Danjou:Even though the landing page was pretty bad at the beginning because we are no designer and we suck at it. But it was fun. It was good enough basically to show off what we're trying to do, automatic merge, merge through all of that. It was good enough. So I think that's one of the, like, any engineer that with a vision would say, okay, I need to spend 1 year to develop the whole thing with the back end, the front end, the fancy dashboard, the all the feature you you want to have.
Julien Danjou:Whereas we basically focus on the pain point we had. We solve it as fast as possible with the Python script. And we said that's our first version of the products and we try to sell that. It works. So then you just iterate and add more features.
Julien Danjou:And like I was saying, when you have little amount of money and time, you just focus on the only thing that is the top most important that you think is going to help out of your users or customers.
Jack Bridger:Yeah. I really like that. Did you and Mehdi, had you discussed like that this could be a business and like, had you discussed like that you were kind of being co founders at that point or was it sort of still just like friends hacking around on something?
Julien Danjou:Yeah. I think with I'm the one who started to because I had some background. So I, I did a thing a few years before, which was I wrote books on the Python programming language, which I self published, which gave me, an edge. So I was been, entrepreneur minded person. Like I was, I run organization.
Julien Danjou:I started projects open source project. Did a lot of thing, never a business per se, because I never had the opportunity. Always was waiting for the good ideas. A good circumstance to happen at some time. And, but I was ready to do that.
Julien Danjou:And I self published my books. I, I saw the few files on self, of my Python books. So I did the marketing myself. I had to to learn marketing, which was fun. I mean, it was just another skill on my on my book.
Julien Danjou:So I was happy to do that. I think, yeah, I came to a video saying, okay, this works. Let's try to collect Stripe and see if anyone is going to put their credit card in that thing crazy enough to to buy this. We were selling that just a few bucks a month. It was really ridiculous.
Julien Danjou:And when we found the 1st customers, I told me, okay, we should start not building a company right away. But we should continue our efforts spending a few hours every week into that and talking to our first customer. And what do you want next customer? Like what would be the next feature you want? Basically, you're the one giving us the money.
Julien Danjou:So you're the one deciding what do you want next? And I don't remember what they said, but then we got another one and I was just talking to, the next customer saying, okay, why do you use Mergeify? And what feature do you want next? And then you continue because you think and and when you do a dev tool, usually, I mean, you are also the user issue. If I was, writing a software to, I don't know, handling paycheck or whatever, I will not be the user.
Julien Danjou:I would be like, I don't know what you want, but it made sense. And, and we were able to to also propose things they will not think about, like, do you think this could be useful for you? Yeah. Sure. Okay.
Julien Danjou:Let's build that. And then you continue to go on. I think the real trap in our case, which is a trap we did not fall into, is we were both engineers. So it's very easy to to to, to fell into the common problem, which is we are both engineers. We're building the product and people will come to us.
Julien Danjou:Oh, people don't come to us. So that's because we like this feature. Right? So let's add this new feature, and then people will come. People still don't come.
Julien Danjou:Okay. It's probably because we also like this feature that our competitor have. Except that, yes, maybe your competitor has the feature app, but the root problem is that nobody knows about you because you're not doing marketing. So you have to go there and even if you have and it's not something we do right now. We've been doing that, a lot more recently since last year.
Julien Danjou:We actually talk about the product we're building before we build it. As I think I read that a few years ago on the Indiag or somebody doing that. Like basically building landing pages, putting a fake credit card form and not fake in the sense they steal the info, but it says that they don't keep it. There's like that. People are going to my landing page and enter it with a credit card to start a trial on a product that I still did not build.
Julien Danjou:That's a validation. They're ready to pay for the product. I just need to build it next. So we're trying to do that now when we build new thing that we have new ideas. We're basically pitching it to customers and we wait for them to be, you know, take my money and then we build it.
Julien Danjou:Because it's easy to build the things for a year or so, especially when you're a developer and you're you're starting your company or your Bootstrap project or whatever. And see, Venom will be done. People will come and Vasanth who if you do that for a year, you still have 1 year of full term marketing and sales to do after just to sell what you built. And you can build what if it has value, you can build you can sell what you built a lot of times basically, but it's a different craft that you need to learn and that you need to practice. If you don't do that, your product is likely statistically to be wrong exceptions.
Julien Danjou:There are things that worked, just in general building some things and then taking off bad events. That's why the exception, that's not the rule.
Jack Bridger:Yeah. What you're talking about there, it kinda sounds like like you're, yeah, pre selling or like making sure what you build is, like, actually useful rather than what you think is a cool idea that people cannot possibly not want. But were you also, like, thinking a lot about, like, how do you get the word out as well?
Julien Danjou:Yes. Really depends on what you're building. I think for for dev tools, it's if you do a good product so developers are very particular, audience. They are very picky. They don't like marketing.
Julien Danjou:So not everything works. What works pretty well and what worked well for us is, open source projects. We provided mergeify for free and we still provide mergeify for free for open source projects on GitHub. So we have a lot of users about our open source projects. We are, for example, Amazon.
Julien Danjou:The one of the team at AWS is using Vergify on their open source projects. So that's pretty cool because that's a good advertising for us. There is a lot of team like that. Obviously teams at Red Hat, we are pretty popular at Red Hat, because it spreads basically between teams like, oh, do you solve this in your repository? We use Mergify.
Julien Danjou:Okay. We're going to test it. And then it spreads and sometimes it spreads into our process projects where people are from different companies and they're like, oh, I'm working the weekend on this project, which was Mergify. Could we have that at my company day jobs? And then they call us.
Julien Danjou:And that's actually how we landed, one of our biggest customers. We were just using one of the engineers was using, mergeify on gitap.com. And they talked to a manager like, will you use that, in our company? And they called us like, sure. Yes.
Julien Danjou:You can use it. Just, subscribe and, and, and you're ready to go. So that's a pretty good way. It works because we have a good product that works, that gives value to the developers, give them for, give it for free because we are open source. So it makes it easy to, for them to try it out and to, to know that it's going to be available for them no matter what.
Julien Danjou:And when it spreads naturally, it takes time. That's the thing. It takes time. You cannot do that over a week. It takes a lot of time to, to spread, but month after month it spreads and more people see it.
Julien Danjou:And we see our user base growing and growing every month because more and more people are using Vergify, getting access to it because they contribute to a project. And let's see, oh, this PR has been merged by Vergify. What is it? That will look this up. Maybe they will try it on another repo.
Julien Danjou:Maybe they will try it, in the office. You never know.
Jack Bridger:Mhmm. Is that like a kind of a marketing budget, Mergify? Or is it like kind of tied up with the sort of, like, making really good open source projects or, like, making Mergify? Yeah. I'm wondering if there's, like, kind of, like, specific sort of things that you do to, like, accelerate that natural, spread, I guess.
Julien Danjou:Yeah. The the way we we see marketing, which I think is common is, like, there's a lot of different channels that you can use. And we tried a lot. We tried, SEO, I mean, all of you could do, going to Confluence. We tried a lot of things.
Julien Danjou:We tried I think we tried almost everything. And then you see if it works, you see if it sticks, if there's something coming in. There are things that doesn't work for you. SCA doesn't work very well for us. So we tried a few times.
Julien Danjou:It doesn't work. We stopped. We try things like that. Open source works very well. So we keep and it's slow effort.
Julien Danjou:We just keep providing value for free to open source, users and projects. And we are happy to do that because we've been I've been doing open source software for the last 20 years already or so. So perfect for us. It fits, it's easy for us to do. We we are, you know, happy to doing that.
Julien Danjou:So that's great. And then we also do things that SEO works pretty well. For example, we do a lot of we get a lot of a lot of traffic. We are easy to find on any search engine. So we do that.
Julien Danjou:It's also low budgets. We have to do things low budget. We're pretty small. We're still bootstraps. So we can spend 1,000,000,000 on ads, on the on the bus or whatever.
Julien Danjou:So it doesn't work. And then you have to be thing that works, I think, for us is, like, conferences are trying to do a bit of that and see if it works. I still don't have the the answer on that because it's pretty new. So we'll see how it goes. And, yeah, I think it's very hard to reach out to developers.
Julien Danjou:So word-of-mouth works pretty well with customers to doing case studies, to validate that you are good guys, that you think that works. And then waiting for the word-of-mouth to be spread. And then, basically, trying to give value to your audience, people that are interested into what you're building to see that you have value to provide to them if you want to to try your your tool.
Jack Bridger:Yeah. Yeah. It seems like talking a lot about value and, if if there's a company that's, like, kind of new to open source or dev tool, when you talk about kind of like dev tool, open source works really well, what do you kind of specifically mean about, like, adding value in open source? Is it just, you know, your product is open source or, like, yeah, if someone's new, how would you explain where? Like
Julien Danjou:it's basically about, I think, open source project are like your bootstrapped project. They don't have time nor money. So if you can provide one of those to open source projects, it's easy for them to see value. In our case, it was not money, but time. We're basically saving time to those projects.
Julien Danjou:Using a merge queue, for example, if you want to merge properly your pull requests, you have to be sure they are up to date with a base branch. I love that. So you have to, for example, ask the contributor to rebase their branch. Usually, it passes the test, etcetera, etcetera. It takes a lot of time.
Julien Danjou:It slows down the your merge rates, basically. It's so you have to do it yourself manually. So you have to, as a developer, get the branch, rebase it, see if it works, merge it, do the same thing with the next one. It's boring. There's no value for the record doing that.
Julien Danjou:It's just doing git operation or clicking on buttons on GitHub, and it takes time. You have to wait for CI to finish all of that. Really, really it's it's a lot of time wasted. When when you're doing another project, you only have a few hours every week to work on it. If you cannot, if you're able to just save that time doing actually things that add value and delegate that to another tool like Mergify, then you're happy to to have it.
Julien Danjou:So so that's where I I am talking about giving value. We are giving time, more time, and to the developer by doing open source projects.
Jack Bridger:Sorry. So not necessarily your projects, but, like, actually going and helping, like, open source projects with with Git essentially.
Julien Danjou:Yeah. Exactly. So if you were starting something new, it could be anything like like a tool helping them with a workflow, a tool helping them with, I don't know, marketing or whatever, but whatever that might be their pain point, like where do you spend the most of the most of the your time, where you don't see any value in in doing whatever you're doing, then that's where you can actually, add them, I think.
Jack Bridger:Yeah. And what, like, are you focusing on, like, a couple of open source projects that you help or are you, like, helping a ton of open source projects?
Julien Danjou:No. We're no. No. We're we're giving access to anyone. So we really have a lot of different open source projects.
Julien Danjou:Probably a few a few hundreds by now, if not a 1000, using it. There are very small projects like a repo with just 1 or 2 people maintaining it to project being run by 50 or 100 person behind. So there's already any kind of side. We have a bunch of, case study of those, projects, on our block where we like to, you know, talk to them and then explain to other project. Or this one is using mergeify, for example, what what they're doing with it, kind of automation they're running.
Julien Danjou:They use a merge queue, all of that to automate it. It's often kind of the same thing because they always have kind of the same problem with, using merge queue, automating their merge, doing backwards like, when you a lot of people running SaaS and building software, you have only 1 branch. You push to main and you push to prod and that's fine. When you do a post and preache, you have to do really easy. You have to do bug fixes and backporting this bug freeze from the main branch to a stable branch to a new release.
Julien Danjou:All of this process is very boring and we have automation for that too. So we love using Magify for that. It's a lot of time saved for them. And they don't have to write the code. They don't have to write the tool to do that.
Julien Danjou:They don't have to mention it, which is something people in the company, they don't really care about because they're paid to do that. They pay to write the tool and they pay to mention it. And it's, it might be, you know, a game for them. It might be funny where when you are doing that on your free term, like, okay, it could be funny, but that's not my main goal. My main goal is to actually work on my opportunity for like, not start a new one.
Julien Danjou:Yeah. Not start a new one, which it would be like version 2. So
Jack Bridger:Yeah. Yeah. What what have we done this year? We've optimized the git flow. Yeah.
Jack Bridger:That's Yeah. Not yeah. That's cool. And and your and I'm sorry. I'm almost asking the same question.
Jack Bridger:So to for all those all those users that now use you on open source projects, did most of them find you through word-of-mouth?
Julien Danjou:Yes. From what you've seen most of them either because they were browsing GitHub and saw Mergify on another repo, or it's usually like a colleague from a company or from another open source project. So we were lucky enough to be working at Red Hat with Medi when we started, which we were working at Red Hat because we had a lot of open source experience in the past, which meant we had a lot of network of engineers working on open source project at Red Hat and beyond, which helped a lot, I think, in the early stage, validating the concept for sure and spreading in the first project, like Ceph, storage, distributed storage solution, which is, I think, most suitable by Red Hat now, has been using Verify for a long time, for example. And that was one of our first users. And then it spreads from that to other project, other people, from other company, all of that.
Julien Danjou:So it helps. It does not do everything. And an open source project, they don't directly bring, money on the table for you to to eat. But, it helps because then, you know, it's, it can go into one of the company that is using it. So that's that's where I think it's a great, leverage for for building your company.
Jack Bridger:Yeah. Yeah. That's super cool. Julian, I think that's all we've got time for. Where can people learn more about Mergeify?
Julien Danjou:At mergeify.com, obviously. And if you want to reach out, I'm happy to to talk about, Mergeify to 21. So if you have any question, you want to learn more about what we do, feel free to reach out to me on Twitter or whatever it is called now, and LinkedIn. I'm also available there.
Jack Bridger:Okay. Awesome. Oh, and one more thing. If you had, like, one takeaway for, like, a dev tool founder, what would it be?
Julien Danjou:If you're a technical person, you're a developer building a dev tool, which is most likely the case, Don't like split your time in half. That's what we did with Mehdi earlier in the beginning. We decided that we were going to split the work into Mehdi was going to basically be a CTO and do the technical stuff and I would be the guy doing all the other stuff. So I'm not doing, and that has been true, I think for the last 3 years or so, I'm not doing anything code wise. I don't, I really do code, that's it.
Julien Danjou:I don't write code. And I review less and less code and I do all the other things. So my advice would be like, even if you're alone, split 5050, be very strict about that. Like spend 50 of your time doing the fun stuff, like building the product and do 50% of the time doing marketing, sales, whatever will bring people to your product because it's it's not the part that you want to do usually but it's the most critical part that you need to to learn if you don't know about it and that you need to do to have people and traction to your product.
Jack Bridger:Amazing. Thanks for joining, Julien. Thanks everyone for listening.
Julien Danjou:Thank you.
Listen to Scaling DevTools using one of many popular podcasting apps or directories.