PLAY PODCASTS
Great Question Makes It Easy for Teams to Perform Customer Research

Great Question Makes It Easy for Teams to Perform Customer Research

with Nick Janetakis and PJ Murray

Running in Production · Nick Janetakis

October 4, 20211h 15m

Show Notes

In this episode of Running in Production, PJ Murray goes over building a customer research app with Ruby on Rails. It’s hosted on Heroku and has been up and running since mid-2020.

PJ talks about using feature flags, integrating Stripe with Jumpstart Pro, building out a React front-end, the value of having business metrics, taking data security very seriously, having a pragmatic approach around test coverage and tons more.

Topics Include

  • 4:16 – It took about a month to get the MVP out and a few months after for it to be sellable
  • 6:52 – Motivation for using Rails
  • 8:54 – How the app works and going over some of its screens
  • 13:21 – ActiveJob is such a good abstraction it’s easy to forget what job library you use
  • 14:14 – A bunch of useful gems that are being used
  • 18:14 – The user experience can often impact the technical complexity of what you’re building
  • 21:53 – Feature flags and swinging back to JSONB columns
  • 26:21 – Stripe handles all of the payments
  • 28:24 – The app is pretty much one big monolith and it’s a good thing
  • 29:55 – About 25k lines of Ruby code and 40k lines of Typescript on the front-end
  • 33:04 – If Turbo were around for years would you have used it over React?
  • 36:37 – You shouldn’t be afraid to touch code in your codebase
  • 38:42 – Getting a decent amount of things planned out before implementing the code
  • 44:00 – Postgres, Redis, Mixpanel and Datadog for app and business alerts / logging
  • 49:19 – Limiting access to production data from developers
  • 51:17 – Heroku helped them get to market faster and they had YCombinator credits
  • 54:36 – The deploy process from development to production
  • 1:01:20 – Limiting access at the GitHub repo level and Heroku
  • 1:04:48 – In general backups are handled by the providers they use (Heroku, S3, etc.)
  • 1:07:21 – Heroku will send out alerts if something unexpected is happening with the site
  • 1:09:31 – Best tips? Be pragmatic about testing and code coverage
  • 1:11:58 – User design and UX is handled by a specific team member
  • 1:14:09 – Check out https://greatquestion.co and they’re hiring too
📄 References
⚙️ Tech Stack