If you are a starting out, you don't have to use terraform, use the console. Nothing stops you from using the managed services in a heroku box either. Need a queue for your API Heroku->SQS. Need storage, Heroku->S3. The industry always talks about best practices but rarely mentions maturity models which this article gets close to brining up but stops short.