What is our primary use case?
In my current company, my client is completely based on Google. They are using their domain from Google and mixing Google Cloud with AWS Cloud. When it comes to deploying our microservices or REST APIs over the cloud, I develop APIs and portals for the Service Request Development (SRD) team. There are a lot of SRD personnel involved, possibly around 1K users, with many leaders using the services globally due to my engagement with a major IT giant.
What is most valuable?
The features of Google App Engine are very valuable, as it is the same as in AWS, Beanstalk, and in Azure, where it operates similarly. Google App Engine is a complete PaaS, platform as a service. Here, we are provided two types of scaling; if we are on a standard use case, we are provided basic and automatic and manual options, and if we are on flexible users, we have access to all three types. Google App Engine is fully managed, meaning users don't need to manage resources themselves; however, management is required and is handled by Google. For the standard environment, there are two variants: the standard and the flexible environment. The standard environment works a sandbox, whereas in the flexible environment, when we click on create, it starts its VM and initializes its virtual disk and resources, which we can access using the VM. In the case of the standard environment, we can't access all the other resources.
I've noticed measurable benefits and return on investment by choosing Google App Engine. The deployment process is managed by Google, allowing me to focus on selecting our language and uploading our code, while Google manages everything else—including the provision of the VPC for flexible deployments. If choosing the flexible option, it automatically creates a VPC, whereas for standard, no VPC is provided. Essentially, I only need to make minimal choices regarding regions; other than that, I focus solely on how my code operates.
What needs improvement?
The areas of Google App Engine that I would to improve or enhance include its allowance for complete end-to-end deployment and scalability; however, it is manageable only for a few languages. For instance, it doesn't support languages C and C++, only basic support for Node.js, Java, and Ruby. It's not a comprehensive solution for all scenarios. Moreover, the security feature is based on IAM roles, but it should ideally be based on Active Directory (AD) roles. For IAM-based roles, we need to add the proper users and provide all security permissions manually. In an AD-based model, we would simply add users to a specific group, and all permissions would be inherited.
For how long have I used the solution?
I worked with Google App Engine for almost 4 years.
What do I think about the stability of the solution?
I would rate the stability of Google App Engine a perfect 10 out of 10, as it is completely managed by Google. It was launched in 2008 at a time when cloud computing was still a novel idea, and since then it has emerged as a prominent player in IT. However, unforeseen circumstances, such as network issues and latency, could affect perceived stability, but overall, it remains highly reliable.
What do I think about the scalability of the solution?
For scalability, I would rate it 9.5 out of 10, as the scalability feature provides automatic, basic, and manual options. With automatic scaling, Google Cloud handles the scaling process, which leads to my high rating. However, basic scaling is limited and may struggle under heavy requests, especially if it requires intensive database or service calls. The manual scaling option depends entirely on the user. In automatic scalability, if 10 is the highest customization, I stand by my 9.5 rating since some user input is required for debugging errors.
How are customer service and support?
Technical support for Google App Engine is efficient and offers a brilliant solution. I would rate it around 9.5 for availability, although occasional glitches and outages can occur due to unfortunate circumstances that are sometimes beyond our control.
How would you rate customer service and support?
Which solution did I use previously and why did I switch?
Before using Google App Engine, we needed to deploy our own servers. We faced challenges as demand fluctuated based on seasonal trends, requiring us to get additional resources and integrate them, which ultimately ended up being a costly process.
How was the initial setup?
I would rate the initial setup of Google App Engine around a bit lower than medium, as it's not too easy nor overly complex. This setup requires basic intermediary skills to add the necessary components, including package utilization, and for Node.js, the use of server.js and app.yaml files, along with their configurations. It's important to note that if we create multiple services, only one Google App Engine will run, but we can deploy multiple services, which can be defined in app.yaml files. Additionally, transitioning from standard to flexible modes requires specifying the deployment type, so a person should have sufficient knowledge of this. CLI knowledge to work with commands and specific features is also necessary.
What about the implementation team?
For managing Google App Engine, there is a team of around 5 to 7 people globally charged with addressing security issues, vulnerabilities, and logging. They must manage any scenarios where someone deploys faulty code that could lead to production downtime, as even one minute of downtime can cost the employer or the company significantly, impacting all stakeholders involved.
What's my experience with pricing, setup cost, and licensing?
The pricing of Google App Engine largely depends on the features chosen; if we opt for the standard edition, it is less expensive, while the flexible option incurs more costs due to always having an instance running. The pricing can vary from user to user and their specific applications. Overall, I would rate the pricing around 7.5 out of 10.
Which other solutions did I evaluate?
I haven't evaluated other options before choosing Google App Engine. I graduated with a specialization in cloud computing, where I also explored AWS, GCP, and IBM Cloud. In fact, I achieved the IBM Cloud Mastery Award in 2019 on my first attempt, and in 2020, I earned numerous certifications through Quick Labs for AWS and GCP.
What other advice do I have?
I would rate Google App Engine as a 9 out of 10, as there is an instance running with the flexible solution. If no requests are coming in, it may continuously run without activity, which incurs costs. However, if it is actively serving requests, it produces instant results. The standard edition can scale to zero when idle, which is acceptable, but any incoming requests will require time to set up.
I am open to new technologies, and I'm constantly enhancing my skills and knowledge. I always seek to learn more and embrace new opportunities.
Which deployment model are you using for this solution?
Hybrid Cloud
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Google