We use Amazon Web Services as our primary compute platform. We run our primary applications and run our business from the Amazon cloud. As an IT professional, AWS cuts out the busy work of IT. AWS lets me focus on the needs to the business and not the needs of datacenter hardware. We're able to deploy new systems within minutes without needing to worry about having enough server capacity.
Pros
The platform is extremely agile, we will typically get a new server request fulfilled within minutes
AWS hardware is reliable, we don't worry about the on premise data center environment.
They have tools and services that allow you to create anything you need.
Cons
AWS can be overwhelming with the vast amount of services they provide. It can be tough to pick the right option to fit the goal you're trying to accomplish
There is some reliance on your own skills to create tools\functionally that isn't native. Like scheduling backups.
There is a steep learning curve to the platform.
Likelihood to Recommend
If you need to expand your compute footprint quickly without having to go through the hardware acquisition process. Amazon Web Services can help quickly augment your on prem compute power to run the one off yearly processes without leaving you with unused hardware for 10 months of the year.
If you're looking to get out of hosting your own datacenter, AWS is a perfect replacement.
If you're looking to scale your website, or even host your own small business Amazon is the ideal solution.
Once you no longer need to worry about the underlying hardware to run your servers you can truly focus your time on adding value to your company.
Our goal as a company is to ensure that our services are efficient and fast to load. After years of using traditional web hosts, we finally made the switch to Amazon Web Services and we have not looked back. Our biggest issues with traditional web hosting was the inability to store large amounts of data and the lack of scalability for our different applications. AWS allows us to run our services more efficiently and without absorbing the high cost of owning servers. For our business it's really about solving 3 problems:
Scaling - The solution should be able to allow us to scale effectively without the hassles of setting up new servers.
Cost effective - The solution should allow us to manage our costs effectively so that none of our clients have to pay more for our services.
Integration - The solution should integrate well into our development teams coding and not slow them down.
Amazon Web Services has done these for us.
Pros
AWS (Amazon Web Services) is not the easiest virtual service to set up but once you get the hang of it, it's fairly easy to install new instances (servers) and stop them. This is good for multiple reasons e.g we run multiple tests and live production servers for our different services. When we are done with one we can easily turn it off. The cost of the specifications on our virtual servers is only a fraction of the cost of what we would get locally or even on most traditional web services companies.
Amazon Web Services can be relatively cost efficient depending on where you are coming from. For our smaller organization, we felt the cost was worth it as other alternatives were not as affordable. The good thing with AWS is you only pay for what you use. If you want S3 (Simple Storage Service), you can pay for that. If you want to run a compute engine, EC2 can be paid for. At the end of the month, you get one bill based on your usage.
Because of our size as a company, AWS was easier to deploy compared to local dedicated solutions. All we had to do was take our development team through a simple 2-day course to get them on board. The ease of deployment means that we do not have to hire a specialist to deploy servers for us.
Cons
If there is one thing I think AWS needs improvement on, it is the administration dashboard. It can be a nightmare to use especially when trying to access billing. This could be made better, honestly, as there should be a simplified way to access simple admin features.
While AWS was fairly easy to integrate into our solutions, it is not as easy to use without some IT knowledge. The dashboards are complicated and designed for someone who is computer savvy. If you are just want to keep track of billing, for example, you may need to take a course or spend a few hours with someone being walked through the admin console.
AWS does tend to be slow at times. If you do not have a fast internet connection, it can take time to access services that are hosted on AWS. This is not always the case but we have had clients complain about this if they are trying to access a service from multiple points (IP addresses). The only real fix we found was to make our files cache to another server and only keep current data accessible to clients.
Likelihood to Recommend
Amazon Web Services is well suited for companies or organizations that need to run specific applications or virtual services on servers. The cost-per-server ratio makes this ideal for testing and live deployment scenarios. It is especially ideal for smaller to medium size IT development teams. If you are looking to just set up a website, for example, AWS may not be ideal unless you are having it custom built.