Scale - for local development or small-sized applications. Never used it for a production environment, though it is possible, I'm not sure it's the best way to go.
Things that I like - if you are familiar with Docker Compose, then it's quite straightforward. It's easy to run it locally to test your application before pushing it to the Cloud.
Scale - medium to enterprise-grade applications. Can be used for smaller applications, but it'll be a major overhead.
Things that I like - Creating objects (Service, Pod, Ingress, etc.) is instant, there's no need to wait for your Cloud Provider (AWS, GCP, etc.) to provision resources for you. Most Cloud Providers provide a service for provisioning a managed Kubernetes cluster (EKS, GKS, etc.) which means you don't need to worry about the infrastructure, this makes the whole process easier.
Scale - small to enterprise-grade applications.
Things that I like - it's a managed service! If you're using Fargate, there's no need to manage infrastructure at all. There's a new feature ecs-cli compose, which enables deploying a docker-compose yml to an ECS cluster.