Hi everyone, usually at this time of year, I write some kind of retrospective of our collective efforts over the last year as a larger AppSheet family. It is usually a long post, and that’s no different this time. This year however, I want to focus attention on what the product team has been doing (and not doing) and its effects on your use of AppSheet. One has to be honest — we have had more things break than anyone would like, we have been less responsive than we should, we have been less engaged than usual in the community forum, and our support isn’t as timely as it used to be. This post might provide some insight, as well as optimism for 2021.
In 2020, we have had to make a lot of investments that you do not directly see, but that prepare us to scale and grow rapidly. The best analogy I have is remodeling and expanding your house (something my family has done a couple of times). In our AppSheet version of this analogy, we are all living in the AppSheet house while we remodel it.
Why are we “remodeling” at all? The simple answer is because we were acquired by Google. We would have had to make many of these investments anyway, but not necessarily at the same accelerated pace. There are different aspects of these changes:
We moved from Microsoft Azure to Google Cloud. This not just a cosmetic change — while both are rich and powerful cloud platforms, they have their differences. It is complex and difficult to do a live migration of a live service from one cloud to another. We pulled this off surprisingly well from my perspective (I expected trouble and was relieved). When we started AppSheet and began on Azure, we didn’t necessarily set it up to be a large scale service — we were tiny and started with the bare minimum. However, now when we are re-setting up on Google Cloud, we designed for the next N years (eg: we are now in more regions and can soon easily set up in many more around the world). So that requires more robust infrastructure — where we store our code, how it is built, how tests are run, how things are deployed. As you know, we deploy everyday, and that entire mechanism has been moved over to a new approach.
We made many changes (and continue to do so) to our code and to our processes to get more serious about security and privacy and compliance. Not that we didn’t care about these before, but the standards at Google are extremely high and rightly so. Some of these code changes are things like securing endpoints in our service to prevent various esoteric attacks. Some of them require completely eliminating some third-party services and replacing them with internal services. Some of them require more elaborate logging. Google offers a “bounty” to researchers who find security bugs in any Google product. Some researchers did well for themselves this year with AppSheet. We get a limited time window to fix each such security bug and they take precedence over everything else. All of this is new code or code change, and with that comes instability. The code of AppSheet got built up gradually over 6 years. It had time to bake. Now there has been a lot of change in as short period of time.
We added a number of new software engineers and product managers to the team. This fundamentally sets us up for strong investments in the future. However, to give you a sense of this, we used to add a new developer to our team once in approximately three months before joining Google. However, in 2020, the engineering team has tripled in size. And this happened in the midst of covid and lockdown and everyone working remotely. The broader new team has stellar people who have picked up ownership of many areas of the product. We are now a more balanced and capable team. However, it takes time for new teammates, however skilled, to learn the nuances of a large pre-existing system.
We changed a number of internal processes, especially around support but also around sales. This is mainly an artifact of how a larger company works. Each individual product at Google doesn’t have its own support ticket system and its own sales CRM system, etc. It makes sense to integrate with common systems so that there is more efficiency. There are common frontline support engineers who support a variety of products. They provide 24x7 support because they are distributed around the world (something we didn’t have before). On the other hand, AppSheet is a complex system that they have to learn. Many of you know the product for years and know it better than they do. They are trained a certain way and that may not be the way we have handled support in the past at AppSheet.
We are in a large company now. There is more overhead and process and decisions are more deliberate. There is more internal alignment effort needed (eg: AppSheet has started deeper integration with GSuite/Workspace but that takes discussion and education and meetings). It has taken a while for us to all know many new people at Google and learn how things work and who to talk to about what and what the processes are.
We made conscious decisions to steer our product towards more modern standards. You see these changes in the UI, both in the editor as well as in the app UI. There are also a number of code-internal changes. For example, I personally am in the middle of completely refactoring the workflow code so that workflow actions can be used in new and interesting ways, especially in a new process automation capability we are launching next year. Any code change has ripple effects, some intended and some not.
Each of these investments take time and energy – and this is time and energy not spent with you in the community or on the product. Some of these investments are destabilizing in the short term but very valuable in the medium-term. And they are all coming on top of each other and involve the same set of people. This is why the first year after an acquisition is the “integration” year and it is known to be challenging. We have been fortunate to have excellent colleagues and supportive management at Google. They are bought into the vision of a no-code app platform and are excited by the potential to make this richer and more broadly accessible.
We have also been fortunate to have a loyal customer base, though we have sorely tested your patience this year. I have optimism for the future – internally, we feel we have turned the corner and now operating with greater cohesion and efficiency and focus every day. It may be still a few weeks or months before you observe that to be real in terms of outcomes but I’m cautiously confident on that front.
While we will still stumble occasionally, in 2021 we will try to reward your patience with a better product and better service. One of the things I have heard very clearly is also the need for greater transparency on our plans and roadmap, and also a changelog of the incremental changes we make every day and every week. That is something you will definitely see from us starting January. Also, we know we have seriously fallen behind on investing in our solution partners. On this front, while we do not have a plan to report, we will hold a partner session in January by which time we will have made some progress to share.
It continues to be a privilege to work with all of you. I have scheduled an open meeting from 8AM to 9AM PST on Wed Dec 23rd https://meet.google.com/ria-pxqt-yda. All of you are welcome. Some of my colleagues will also attend. I will walk through a few of the topics in this thread, but mainly it is an opportunity for all of us to listen and learn from you. I cannot promise it will be useful to you, but if you have any questions, I will answer them as transparently as I can.
So I might see you at this meeting, but if not, happy holidays and let’s look forward to 2021 being much better than 2020 in every way.