ABOUT THIS EPISODE
In this episode of Running in Production, Nick Savrov goes over building a platform to help content creators build a business with Ruby on Rails. It’s hosted on Heroku and has been up and running in production since 2014.
Nick talks about supporting 6.5 million users, using Turbolinks, having a 19 developer team working on a monolithic app, sending millions of weekly emails, storing billions of weekly events, using ShapeUp to help manage the project and much more.
Topics Include- 2:49 – They support 6.5 million users on the platform which helped creators make $100m+
- 4:19 – There’s 2 parts to the system, the admin for creators and the user experience
- 8:49 – BREAKING NEWS: Rails can scale and it’s working out nicely for them as a monolith
- 10:47 – Turbolinks and Liquid helped their app a lot
- 14:10 – It feels like a Rails app but uses VueJS and InertiaJS on the front-end
- 18:47 – A couple of interesting gems in their Gemfile, including using Fastly
- 21:38 – They have a great relationship with Mux for streaming video
- 25:25 – Approaching the latest stable version of Rails
- 27:05 – 19 Rails engineers are working on the monolithic code base
- 28:33 – Payments are supported with Stripe, PayPal and Authorize.net
- 31:42 – About 10 million emails are sent out every week through SendGrid
- 34:29 – Custom domains for customers and using Heroku with nginx / Let’s Encrypt
- 39:51 – Postgres is the main database along with ClickHouse (billions of events a week)
- 42:33 – What types of events are being logged and how can it be viewed?
- 46:20 – A custom nginx router that sits in front of Heroku
- 50:11 – Reasons for using Heroku and setting up an auto-scaler
- 54:51 – A couple of Heroku add-ons and using New Relic (NOTE: 10 billion rows = 250GB)
- 57:38 – The deployment process from dev to prod (CI, code reviews, GitHub discussions)
- 1:07:57 – What is ShapeUp which is Basecamp’s methodology around project management
- 1:09:06 – Backing up user data and more info about ClickHouse
- 1:14:51 – There’s value in performing soft deletes as long as you really delete it later
- 1:16:03 – OpsGenie, New Relic and Uptime Robot are used for alerting and being on-call
- 1:22:34 – Best tips? Follow standards when you can such as using built in Rails features
- 1:26:03 – You can find Nick on GitHub and Telegram
- http://railscasts.com/
- https://youtu.be/KJVTM7mE1Cc?t=600 (RailsConf 2015 “Backpack” reference)
- https://runninginproduction.com/podcast/31-mux-is-an-api-based-platform-that-lets-you-process-and-stream-videos
- https://basecamp.com/shapeup
- https://runninginproduction.com/podcast/12-learn-ruby-on-rails-through-screencast-tutorials-on-gorails
- rails →
- ruby →
- vue →
- authorize-net →
- clickhouse →
- digitalocean →
- fastly →
- heroku →
- kafka →
- lets-encrypt →
- mux →
- new-relic →
- nginx →
- opsgenie →
- paypal →
- postgres →
- redis →
- sendgrid →
- sentry →
- stripe →
- turbolinks →
- uptime-robot →
- webpack →
- https://github.com/Shopify/liquid
- https://github.com/inertiajs/inertia
- https://github.com/mperham/sidekiq
- https://github.com/PNixx/clickhouse-activerecord
This episode does not have a sponsor and this podcast is a labor of love. If you want to support the show, the best way to do it is to purchase one of my courses or suggest one to a friend.
- Dive into Docker is a video course that takes you from not knowing what Docker is to being able to confidently use Docker and Docker Compose for your own apps. Long gone are the days of "but it works on my machine!". A bunch of follow along labs are included.
- Build a SAAS App with Flask is a video course where we build a real world SAAS app that accepts payments, has a custom admin, includes high test coverage and goes over how to implement and apply 50+ common web app features. There's over 20+ hours of video.
English
United States
TRANSCRIPT 🔗
Are you the producer of this podcast?
Add a podcast transcript
Need Audio-to-Text?
Transcribe with Listen411 in Just 60 Seconds
SEARCH PAST EPISODES
Search past episodes of Running in Production.
OTHER EPISODES IN THIS PODCAST
In this episode of Running in Production, Kristian Dupont goes over building a
SAAS app to manage access control to your existing SAAS subscriptions. It’s
built with Koa, Node and React and is hosted on Heroku. It’s been running in
production since 2018.
Kristian talks about validating his idea b…
In this episode of Running in Production, Matthias Viehweger goes over building a
service to help organize groups of people. It’s built with Ruby on Rails and is
hosted on OpenShift with Kubernetes. It’s been running in production since 2012.
Matthias talks about building a Rails Engine abstracti…
In this episode of Running in Production, Vlad Radulescu goes over creating a
game directory site with Ruby on Rails. It’s hosted on AWS and has been up
and running since 2014.
Vlad talks about having thousands of active users, interfacing with a few game
platform APIs, running millions of Sideki…
In this episode of Running in Production, Dieter Lunn goes over building a
job board site for school bus drivers and aides using Ruby on Rails. It’s
hosted on DigitalOcean with HatchBox.
Dieter talks about using a bit of StimulusJS to add pins to a map, keeping
things simple with a monolithic app…
In this episode of Running in Production, Jason Swett goes over building
an internal medical record system with Ruby on Rails. It’s hosted on AWS using
Kubernetes and it’s been up and running since 2019.
Jason talks about replacing a few 3rd party services with 1 custom solution,
using custom gen…
Disclaimer: The podcast and artwork embedded on this page are from Nick Janetakis - Full stack developer, which is the property of its owner and not affiliated with or endorsed by Listen Notes, Inc.
EDIT
Thank you for helping to keep the podcast database up to date.