What do you like best?
- Extremely low barrier to entry for a PaaS-like offering
- Low effort interoperation with Google Compute IaaS systems and services
- Hundreds of readily available service bindings available from Google and third parties
- Autoscaling (which can now be more finely tuned by an admin if desired)
- Easily customizable scaling options
- Integrates easily with Eclipse, InteliJ
- Well documented CLI's
- Admin console
What do you dislike?
- No ssh access / No systems level access (can be considered an acceptable limitation)
- Limited ability to manage VM and JVM specs/settings (this is getting better and better)
- No notion of file access (easy to work around but can be a little problematic if using third party code)
- Google-modified: JRE (which tends to lag quite a bit behind Oracle/OpenJDK), Log4J, and many others...
- Less portable application code due to modified libraries and proprietary access to services
Recommendations to others considering the product
Make sure to compare and contrast your PaaS/IaaS requirements with alternatives like Google Compute Engine, Amazon AWS, Pivotal CloudFoundary.
What business problems are you solving with the product? What benefits have you realized?
** DISCLAIMER ** I haven't used nor recommended GAE with my current nor any of my previous employers. My employer does use Google Compute Services for dev/test environments, but not GAE specifically.
While I've used Google App Engine quite a bit over the last seven years, I've used it exclusively as a tool for low risk projects - simple web apps, prototyping, and low risk micro-services used as stopgaps.
It's very easy to work with, and the ecosystem is growing rapidly. In the last few years in fact, it's improved immensely, is starting to become a real contender for larger and more critical projects.