Nathan Rosidi has bootstrapped his side project, Strata Scratch, to 2500 users and over $1,500 in monthly recurring revenue. In this episode we discuss the lessons he's learned from past failures, how to prioritize what to work on when you're getting ideas from so many different people, and why it's both a blessing and a curse to be able to take things slowly as an indie hacker.
Strata Scratch — Nathan's product for improving your technical skills
@nathanrosidi on Medium — Nathan's blog
Traction — the book that inspired Nathan's marketing
What’s up, everybody? This is Courtland from IndieHackers.com and you’re listening to the Indie Hackers podcast. On this show I talk to the founders of profitable internet businesses, and I try to get a sense of what it’s like to be in their shoes.
How did they get to where they are today? How do they make decisions, both at their companies and in their personal lives, and what exactly makes their businesses tick? The goal here, as always, is so that the rest of us can learn from their examples and go on to build our own profitable internet businesses. Today, I am talking to Nathan Rosidi, the founder of Strata Scratch. Nathan, how’s it going?
Good. How are you doing?
I’m doing excellent. Welcome to the show.
Thank you. Thanks for having me.
So tell us a little bit about Strata Scratch. What is it, exactly, and why did you start it?
Strata Scratch is a platform to help you improve your analytical skills by building a strong technical foundation for your career. What I mean by that, is it helps you prep for your technical interviews. It’s aimed for data scientists, marketing scientists, anybody getting started in analytics in general. That’s essentially what the platform does. It helps you prepare for your SQL and Python technical interviews.
I got started mainly because I’m an adjunct professor at a local university in San Francisco. I teach a lot of non-technical students, and I wanted a platform to help them get better, ramp up faster and try out real questions out there in the world. There are no other platforms that allowed that to happen.
Being somewhat technical and having a career in analytics and data science, I thought I would just create one to see if people would be interested, but also to create one to help me run my class a lot more efficiently. What I wanted to do was just save myself time and then save the students some headache.
That’s cool when you can combine two things that you’re working on, in this case being a teacher or a professor and also being an Indie Hacker and creating a product that you can charge money for and help your students find jobs. It’s cool how that overlapped.
Yes, absolutely. When I think about it, it was a platform to help me save time. It was like solving my problem, because in a lot of classrooms these days you have to set up the technology yourself. You have to set up your own SQL server and then set up your own data sets and import that in, and a lot of students don’t know how to do that. I hated to be the IT guy to help debug and troubleshoot all of their stuff.
I developed this in the beginning to save myself some time, but then when I was thinking about it, when I launched the first version and had a few months to iterate and think about what this platform actually is.
I thought about my own journey while getting started in my career, interviewing at several places, trying to become a data scientist, trying to get into analytics in general. I wanted a platform where I would be able to find real questions that the big tech companies give, find real-world problems that you would find in industry, and then practice on them so I can get better at that.
Hopefully that would help me in an interview but also help me in my career in my day-to-day life. That was what my vision was towards the beginning months of launching Strata Scratch.
So you posted on your Indie Hackers page for Strata Scratch recently that you’ve reached 2,500 registered users, and you’re at $1,500.00 a month in recurring revenue. How long did it take you to get to this point?
I hit this revenue earlier this year, early 2019. It took me two years to get to this. I launched in 2017 and by 2019 I felt that I finally understood my audience a little bit better. I made a few pivots along the way but by 2019 I knew where I was. So it took about two years of iterations, two years of experimentations, and I’m still doing both of those even now.
It’s crazy how much patience you need to be a founder, to be an Indie Hacker. I think before you get started it’s really easy to think to, “I’ve got the right idea. I know exactly what I’m doing and I’m going to be making x amount of dollars in six months.”
And then you get started and you learn all these different things along the way. You learn more about your users and your customers and what features you need and what features you don’t and how to find them. It takes a while. It takes years to get to thousands of dollars in revenue sometimes.
How have you been able to be so patient? A lot of people will quit before they put in two years in anything.
One, this is not my fulltime job. This is a side project that I have. I have a fulltime job, and then I’m also an adjunct professor. I teach one or two classes in the evening after I work. And then on the weekends or late at night I’ll work on this side project. It’s a passion project that I have that I spend maybe 5 to 10 hours a week doing.
I have a team that also helps me, but they only spend about 5 to 10 hours a week as well on this.
So it’s a blessing and a curse to be able to move slowly, because I don’t have to rush into things. I think when it’s a fulltime job and you really need the money or you’re taking VC investment money and you really need to prove your worth to the next milestone, there’s a lot of pressure on you and you might not necessarily prioritize things in the right way.
It’s nice to be able to take a step back, know you’re not under a lot of pressure, have the time to reach out to your customers, reach out to your users, run a few experiments, and prioritize things in the right way so that you slowly scale up.
For me, patience is key, cause as long as I see things trending in the right way, as long as I’m able to get honest feedback from my users, that allows me to figure out what I need to build or what I need to write and market, so that they get exactly what they want. That’s how I’ve been sticking to it. It’s a blessing in disguise.
I want to talk about a lot of these challenges that early stage founders and Indie Hackers run into, because you’ve been able to surmount them, and I’m sure there’s a lot that you’re still struggling with. I think probably the very first one is just getting started.
For a lot of people, it’s scary to start something. It seems like a big risk. It seems like a huge time investment or maybe they’re not confident that they have the skills. Is this the first profitable project that you’ve started, and what gets you over the hump in order to start something like that?
No, it’s not the first project that I’ve started. I had a startup that went through the gamut, taking in investor money and all of that. It was a fulltime gig of mine a few years ago. I learned a lot from that and I learned a lot from my failures both in Strata Scratch but also from my past companies, to get over the hump of just starting.
It’s really just about starting. I failed at that my first time around, in that I was planning to perfection and never building out something that the customer would want. I never interacted with the customers because I thought I knew what they wanted, and then I was trying to make everything perfect to give them the best experience. We were never really able to launch until much, much later, and that’s where you start, when the pressure starts to come.
So this time around, it was really just about starting. It was about two things. It was about reaching my users and customers to see what they want and whether or not I’m getting a signal out in the market, and then two, building something that they could just test, something really shitty that they could test. The most MVP thing that you could find.
That’s what I did. I just cobbled together a back end, a really bad front end, and connected them together and tested out the content to see if this is exactly what they want. Then we started to iterate after that.
Who is we? Is it you by yourself, or have you been working with other people from the beginning?
It’s me by myself. I have a developer also and he’s working on this 10 hours a week as well. I talk to him about feature development and prioritization, and we just kick it back and forth for the most part. He’s been with me for several years, also with my previous startup. We have good chemistry in terms of getting things off the ground.
What would you say to somebody who is early on and they don’t have the skills to develop a product. They need to find a developer to work with, that they have chemistry with. How do you go from not knowing anyone to meeting somebody like that?
I think it takes a long time. It takes a lot of iteration. It could take you meeting several people before finding the right one. I did two things. I went on Upwork.com, which is a website to find freelancers, and I went to meetup.com which is a platform that allows you to search for physical meetups to go to, to meet like-minded people. It’s really big here in the Bay area.
I found the people that way for the most part. Some of them stuck with me. Some of them didn’t. Throughout the years you meet the right people that vibe with your personality, have the same goals you have and have the same working style that you have. It just sticks at the end of the day.
How long did it take you to take Strata Scratch from an idea, an inkling that hey, this might work, into this minimum viable product that you were talking about that was just the bare-bone, shittiest thing you could release and get in users’ hands?
That was fast. That was took me a month. I built the backend. It was a database where we started out with an idea that it’s just going to be just SQL. We’re not going to add Python modules to it or Python education modules, just SQL modules.
I have a lot of technical skills with developing the backend and all of that. So I built that and then I got a free IDE, opensource technology to slap on the frontend and that’s what my developer did. It was 10 hours of work on my side, 10 hours of work on his side, and then I seeded it with as many questions as I can. That came from my professorship at the university. So everything was there and it only took me less than a month to get it launched out. I launched on the web as well as to my students for free just to get people’s feedback and experience.
What did you learn when you got this in people’s hands?
I learned that they seemed to like it, that they were using it for the most part, but I had no idea whether or not they would pay for something like this, whether or not they found it really useful versus the competition.
So it was free at first?
Yeah, it was free at first. Exactly. Then I kept it free for my students and I slapped on a payment portal for the public to use. It’s great to have a premium product, but will somebody pay for it? For me the question is, do you find this valuable? If you say yes, then I would expect you to pay for it. That’s what I think when I think of valuable. I think somebody is willing to pay for a product.
What did your business model look like in the early days? It’s sometimes tough to figure out what you're going to charge and how much you’re going to charge when so far, you’ve just been giving things away for free.
We launched a freemium tier because what I think about when setting things up, the business model, is I think about the entire funnel. I think about how to get users onto my website. How do I get users to use my product?
And that’s the two-step funnel that I had in the very beginning, but I needed more of a journey. So I wanted them to be able to get on my website, find some value there, sign up for a freemium account just to test the product out, get it using, and “activate the user,” quote/unquote. After that I wanted them to, if they found it valuable, see if they would pay for it. That journey became my business model.
Did you ever consider having a journey where you just skipped most of those steps, where they show up on your website, they read it and then they have to pay immediately before they use anything?
That was one of my first versions, and nobody paid for it. It literally got zero signups for several months. Then I was talking to a friend about this problem that I’m having. He’s like, “Yeah, man, it’s a really simple problem. Nobody trusts you. You’re a small company. Nobody even knows your brand. Why would anybody pay for it without using it first?” I don't know why I didn’t think of that, but as soon as he said it, I just started to develop this freemium version of my platform. Then as soon as I launched that I got signups immediately.
That’s an interesting story because that’s advice that came from your friend. It came from somebody who wasn’t actively working on the product with you, and yet they served as an advisor to you and opened your eyes to a potential blind spot. Every founder has blind spots. All of us are doing things that either don’t make sense or could be done better.
Someone else out in the world knows the answer, but we don’t. I think a lot of early-stage founders struggle with this because there are so many places to learn. There are so many books you can read, so many twitter accounts that are tweeting startup advice. How have you learned what to do and what decisions to make as a founder yourself?
I go on Twitter. I go on Indie Hackers. I go on several blogs just to read everything that people have done, have tried, have experimented with. I rely on a lot of my friends that have side hustles, startups of their own, to talk to them about it.
We meet very regularly, too, because we’re all passionate about creating products for people to use, giving somebody something valuable. Between my friends/slash advisors, between all the blogs and websites and podcasts I read and listen to, I started to just curate things. I take a ton of notes. My Trello is filled with it.
After I read things, after I curate through it, I sit on it. I never am too impulsive about it. I sit on it and I think about it, and then when I’m ready I promote it to developing a feature or writing some content to my users or something like that. But as a single founder, that’s how you’re able to get feedback from other people.
That’s such a mature and measured approach. I’m very susceptible to recency bias. If I hear a piece of advice or I get an idea and it’s fresh in my mind it just dominates my thoughts. I can’t stop thinking about it and all the old stuff that I’d thought about just goes out the window. I find myself having to be deliberate and making sure I don’t just act on the latest idea I have because that’s usually not the best I idea. I think sitting on it really helps, the way that you do it.
Exactly. I found that out the hard way. I used to do exactly what you said. That’s a great idea, and then immediately email my engineers to start developing this. After that, two weeks go by. They’re still developing it and after you’re sitting on it you start to realize this is not a great idea.
Yeah, after you put more thought into it.
Exactly. Or maybe it is a good idea, but it’s not the number one priority. I’ve had a lot of experiences where that’s turned sour, so now I have this more measured approach.
A lot of the challenges with doing pretty much anything in modern life, including being a founder, are just problems of abundance, where there’s too much. It’s not like there’s not enough information. It’s not like we don’t have enough feature ideas. But there’s just so much out there that it’s hard to prioritize.
It’s hard to say, “What should I work on first?” Even focusing as a founder is really counterintuitive because very often you feel like, “I’m not doing enough. I hear all this advice. I should be doing x, I should be doing y. I’m not doing this right. This part of my funnel’s broken. This part of my website’s not great. I’m not doing enough.”
But if you try to do everything, then you’re just going to pull yourself in so many directions that you don’t do anything well. So it’s kind of the case that in order to be operating well as a founder, you should always have this feeling that you’re not doing enough. That lets you know that you’re focusing.
Absolutely. It’s really hard to prioritize, especially when you get feedback from so many different people with different viewpoints. The way I prioritize is I just listen to my users. I email every single one asking them why they like my platform. What features would they like to see? If you’re not on the premium tier, what would get you on the premium tier?
I get a lot of feedback back. I prioritize feature requests and building out my platform based off of what people are saying. I don’t necessarily go off of what’s in my head anymore. I just go off of what people want. I’m building something for people to use, so in order for them to use it, they need to find some value. That’s more or less how I’ve been prioritizing things.
At some point you figured out that you needed to educate your users and give them a chance to use Strata Scratch before they would pay. You twist that on and you finally got people beginning to pay you. What was the next step in growing your business?
The next step is what I’m still struggling with right now and it’s, how do I reach more people? I am not at all good at sales and marketing. I have no idea what to do. I don’t understand SEO. I don’t understand content marketing and how that leads to an improvement in SEO or an improvement in ranking or whatever it is. I just don’t get it, even though I’ve been trying to do it for two years plus.
What I’ve been doing is just forgetting all of that. The way I’ve done my marketing is, I write articles that I feel that my users would find valuable. My platform itself has this thesis of improving or getting started in your analytical career.
Whether you’re a student, a young professional or old professional or trying to change careers, I want you to use my product or my platform so that you become better technically and that you become better in your analytical career. I want to also write articles to guide you through that journey from becoming a novice to becoming an intermediate to becoming an advanced analytical person.
I’ve struggled through that my entire career as well, not knowing what to do and how to start, and I didn’t have anybody else to talk to during that time. So a lot of the articles that I write, it’s just coming from my personal experiences, questions that I’ve had, things that I’ve struggled with.
So that has been my marketing play now, writing things that I find that people might find valuable, and then throwing it out on the Medium blogs. There’s a data science publication there that I write for, that I contribute to, that a lot of people will read. So that’s helped a lot.
I look at business sometimes as having four different parts. There’s the product that you’re building. There’s the market that you’re selling to, in this case aspiring data scientists, and there’s your business model, which you’ve settled on, and then there’s the channels that you use to reach these people.
I think that can oftentimes be one of the most challenging things to figure out, because those channels can be super competitive, super crowded. It can be hard to break through. I often hear stories from founders where they have to try channel after channel after channel before they finally figure out what’s working. In your particular case, that’s content, that’s writing, that’s blogging. How’s that going so far?
It’s going really well, but from what you said, that was my experience. That is my experience. I read this book called Traction. I forget who the author was.
Justin Meyers. He’s been on the Indie Hackers podcast.
Okay. There you go. Great book. It really helped me think about how many marketing channels there are, how to think about them. But the piece of advice I got was, you’re really only going to leverage one to two marketing channels that’s going to work for your platform, for your business. Also you’re probably not going to find value in channels that are already saturated, because everyone’s doing it.
So find something creative, something that nobody or not too many people are leveraging and try that out. Especially if you’re doing this as a side hustle and you don’t have a lot of time, you can’t be doing a ton of experiments and leveraging all of the marketing channels. You have to be deliberate with them.
I started with email, direct email marketing. That was terrible. I changed to Google ads. I was getting an okay ROI but not really great. I was doing so many different things, but then when I just took a step back and I looked at what was working, I found one to two things that were working well and I just stuck with them. It was content marketing, blog writing, article writing for the most part.
One of the things I like the most about content marketing is that you get a lot of instances where you can try something. Every new post that you write is a new attempt. You can use different language in it. You can talk a lot of different topic.
You get a lot of feedback. People will upvote your post on Medium or they won’t. People will read your blog post and share it or they won’t, so you’re constantly learning, whereas with a lot of other channels and things you can do to try to grow, it’s hard to get that feedback. You might work on something for six months before you realizes the results, whereas a blog post you can write in an afternoon and publish it and see, is this something that I should keep publishing on this topic or is it something that I should change because another blog post had better success?
Exactly. You’re just iterating through that and seeing what works.
I think another cool thing about what you’re doing is just teaching in general. It’s one of the best ways to get started as an Indie Hacker, because number one, you’re doing something you’re knowledgeable and passionate about and number two, you’re doing something that frankly customers find valuable. They can very easily, without you having to tell them, understand the value of understanding and practicing interview questions so that they can get jobs. It’s just a really great way to get started with your business.
Absolutely. There’s not much to add on to that. It’s keeping my value prop very simple. This is very similar to my teaching profession as well. I do this for fun. I have a fulltime gig, that it’s not at all about teaching. It’s something completely different, but my passion, what I really like, is to teach, to give somebody, the younger generation, something valuable that they can find in themselves and improve on.
So that’s really what drives me. Otherwise, why would I want to work on the weekends? Why would I want to work late at night if I didn’t care about this? It’s just all about passion and purpose that has gotten me through a lot of the tough times, with all ventures in life, not just Strata Scratch.
What would your advice be for other Indie Hackers who are listening who are passionate about a particular topic and might want to start a business around helping others learn to do it well?
The biggest advice I would say and the first thing I would say is, talk to the community. Be involved in the community. There’s probably a Reddit community out there. There’s a Meetup group. There’s a ton of forums, probably. Find out where they are if you’re not yet a part of that community.
See what they want, what they like, and see if it also matches your own passion. See if what you’re thinking is valuable, they also find valuable. Once you get that signal, you know you have a user base. On the business side, you know you have a market. Then you can start building something. That’s my advice in terms of getting started, just get to the community and be involved and show that you actually care.
Nathan, thanks so much for coming on the podcast and sharing your story with us. Can you let listeners know where they can go to learn more about Strata Scratch and what you’re up to personally if you share that sort of thing online as well?
Absolutely. Stratascratch.com, that’s the website of my platform, and then on Medium you can find me by my name, Nathan Rosidi. All my articles are on my personal Medium blog.
Thanks so much, Nathan.
Absolutely.
Listeners, if you enjoyed this episode, I would love it if you reached out to Nathan and let him know. He is Nathan Rosidi on medium.com. Also, if you’re interested in my thoughts on this episode, subscribe to the Indie Hackers podcast newsletter at IndieHackers.com/podcast. Thanks so much for listening and I will see you next time.
Did you know Indie Hackers has a newsletter?
Sign up to get insights, takeaways, and exclusive content from each new episode, directly from the host, Courtland Allen.
Great episode. I like how Nathan spoke about this being his second attempt at launching something and how this time around he really settled for launching with the MINIMUM viable product. Also like how he seeded it with content from his lecturing work at the local university, which I think is like natively integrating user feedback.