A common critique of Rails is that it encourages a poor separation of concerns. That when things get serious, you need an alternative that brings the missing pieces.
At some point, apps become unmaintainable, and you need a different approach that brings the missing pieces, because Rails encourages a poor separation of concerns at the architectural level.
But Rails only offers controllers and models: models include persistence via Active Record, and Rails encourages direct access to them from controllers.
He’s one of the main contributors to this approach of architecting vanilla Rails applications I’ve come to learn and love.