What do you like best?
My favorite feature of S3 (Amazon's Cloud Storage) is split between 2 things. 1) The extremely high durability of data. AWS's S3 storage provides "11 - nines" of durability. That's 99.9999999% durability!!! When you consider that level of durability: (being calculated as follows) 10 million objects will incur a single (as in 1) lost object about once every 10 thousand years and you factor how competitive the price point is for S3/per GB when compared to other (less durable) storage solutions it became clear to me that I wanted to utilize S3 for my data storage solution. The second 2) feature that I like best is that S3 can be fully managed with API calls. Meaning I can develop an in-house software, program, or script that allows me to interact with my data programmatically versus having to use a GUI or web interface. (Those options still exist, but aren't the "only" way to interact with S3.) It's an incredibly powerful and useful tool to have programmatic access to your data.
What do you dislike?
I hate to be 'that guy' that doesn't have any negatives, but so far from my use of the S3 service; in production, testing, and development workloads, I have yet to come across anything that is an outright negative for me personally. If AWS could lower the price of the service that would be great, but we can't really expect such a service to be completely free.
Recommendations to others considering the product
Other considerations for administrative users of the product, permissions can be set in a few different places; this is the reason I gave the Ease of Use, Setup, and Admin less than a perfect score. IAM is used for creating users, groups, and roles. Ideally, you will mostly be settings permissions for S3 there on a per-user or per-group basis by attaching roles to the users or groups. However, under each bucket there are additional permissions settings that exist. ACL's, Bucket Policies (JSON format), and CORS. These additional settings option can really get you into hot-water if you are unsure of the settings here. If you perform a quick Google search with terms like, "S3 bucket policy data breaches" you will find tons of instances where someone did not set the bucket settings correctly and hackers were able to access data or worse from incorrect settings. Please, just for the sake of data security read up on S3 best practices if you are unsure how to setup these buckets.
What business problems are you solving with the product? What benefits have you realized?
I have been able to help clients host their static websites in S3. I have setup multiple S3 buckets, paired with a Route 53 (DNS) record, CloudFront (CDN) pointing to the S3 bucket as the origin, and ACM (Amazon Certificate Manager) to create an SSL certificate for the site; I have been able to secure their websites with SSL, setup a Content Delivery Network for them, and host their websites for around a dollar per month.
I am also using S3 as a data backup and archival solution for a few clients that wanted to also have an off-site backup of their data being performed. The best part is, that the cost of storage is low, and I'm able to offer data encryption while in transit to or from S3 and I can provide encryption at rest for my client's sensitive data. I have also paired glacier with S3 to create a data lifecycle policy for my clients to offer longer term storage options at a significantly reduced price point over Standard-S3 storage.