Reflections on Visiting AWS re:Invent 2017
AWS (Amazon Web Services) remains the key innovation leader for cloud computing, offering a one-stop shop for every imaginable service for building, hosting, and supporting applications in the cloud. Put more bluntly, no overall competitive offering comes close to matching the scale, depth, and progressiveness of the AWS platform. Companies choosing to align their service delivery as closely as possible with appropriate AWS offerings enjoy the benefits of billions of additional dollars investment in research and development while reducing the costs to build and maintain applications.
While there were many interesting sessions and announcements last week, there were three key trends that affect startups which we will address in this post.
Building for the Enterprise
More than ever before, the keynotes, session content, expo floor space, and conversation topics were all centered around the reality of the enterprise’s transition to hybrid and all-in commitment to building in the AWS cloud. Large companies in all major verticals now host or are in the process of transitioning their applications to the cloud. Many of the AWS innovations presented at this event centered around the compliance and controls necessary to help application delivery teams meet the complex requirements of their businesses. So many enterprises visiting the event were still learning about the cloud and had yet to deliver their first applications — it’s amazing to think about how much growth is still possible on top of the $18B revenue AWS already generates. The AWS commitment to the enterprise means all customers will benefit from their investments in security, redundancy, and compliance to meet the needs of these giant companies.
For startups, opportunities abound. While the expo floor showcased a glut of enterprise onboarding partners, security vendors, and companies offering to abstract the complexities of the cloud away, there were very few companies focused on making cloud applications smarter or improving the way they work together. Solving complex enterprise solutions will require a composite approach — companies ultimately will blend AWS services and partner applications with their own in-house code. Companies like Zylo, for example, can provide a layer on top of all these services to help understand the effectiveness of composite solutions. The same way that Zylo provides ROI measurement for a single application today could ultimately help enterprises understand how all their cloud investments are working together, identify poorly performing components, and recommend services (AWS or otherwise) that could improve total application delivery. Generally speaking, the ecosystem is missing vendors that help enterprises understand how to best utilize all the great features and innovations being delivered by AWS and its partners.
Delivering NoOps Today via Serverless
While AWS introduced interesting new offerings in a wide variety of areas, including AR/VR, live media processing and delivery, and security, the most useful area of innovation for growing startups centers around the concept of eliminating scale- and support-operations from application delivery. Many of AWS’s new innovations allow application builders to deliver services that scale automatically. In fact, as of this week, there are now AWS services that automatically scale almost every layer of the application stack. While many enterprises are nowhere close to realizing the sheer power of this approach (which quite frankly could threaten a significant number of infrastructure support jobs), startups are positioned to dramatically accelerate their own growth while eliminating some expensive down-the-road problems for their platforms. This approach is generically known as “serverless” because it requires no management of servers in order to scale the solutions. While best practices are still emerging, companies like AWS are filling holes that may have previously prevented organizations to committing to a serverless delivery strategy.
Two of the biggest announcements last week centered around holes at the serverless data layer. Previously, AWS only had one real option for storing data in a scale-free manner called DynamoDB. Technically speaking, this was a hybrid key-value/document storage engine similar to MongoDB that did not require customers to provisioning or manage instances of a database. However, this type of storage is not appropriate for every solution. For that reason, AWS introduced two new services: Amazon Neptune, a fully-managed, scale-free graph database; and Amazon Aurora Serverless, a scale-free relational, SQL-compatible database service. Now, application designers can choose whichever scale-free data solution meets the needs of their application. They can even mix multiple solutions to compose serverless applications that offer the best match of performance and flexibility.
The takeaway from all this is that AWS is betting big on a serverless future. Given the scarcity and cost of finding human resources to offer infrastructure and dev-ops support, startups should embrace this design and delivery pattern as early as possible to avoid unnecessary and costly scaling problems down the road. The AWS abstraction over infrastructure has reached a level of maturity now that most applications can be designed 100% to never need a server or database instance as a bottleneck.
The key hire for many startups will now be a cloud architect who can embrace the accelerating pace of innovation coming from a cloud provider like AWS and know the right combination of services to best deliver application design. Again, given changes and lack of established best practices, this role will be a challenge to fill but offers to pay so many dividends in terms of competitive advantages and avoiding down-the-road problems.
Machine Learning for the Masses
Democratizing machine learning for the average developer continues to be a major industry trend, and in many cases AWS needed to catch up with its offerings. AWS delivered several new services offering rich AI capabilities for applications while abstracting much of the traditional complexities that previously required a data scientist to navigate. Several point solutions in the areas of speech recognition, translation, NLP, and video analysis put AWS on par with other offerings from cloud providers like Google and Microsoft. As with those other platforms, no training is required, the services scale without ops support, and they can be implemented by developers who don’t have a data science background.
Again, there are many ways to implement these services into an application beyond AWS offerings. However, AWS offerings are interesting for two reasons: 1) integration with other AWS services, and 2) leveraging AWS’s unique relationship with Amazon.com from a data and training standpoint. The integration with other AWS services makes it extremely easy to ingest data from places within the platform that developers may already be using to store the data necessary to process and deliver insights. The unique relationship with Amazon.com means that AWS has used all the ancillary data from Amazon’s other businesses (shopping catalogs, Alexa, reviews, etc.) to train the models driving these intelligent services. That’s huge — companies implementing these services don’t need to build their own models if they can lean on all the data coming from Amazon that has been used to build the models behind these services.
If a company’s application needs extend beyond the purpose-specific solutions, AWS introduced a generalized machine learning service called SageMaker. While documentation and specifics were minimal at launch time, essentially the idea behind SageMaker is to deliver an end-to-end experience that is flexible to accommodate many different machine learning goals while making it easy for developers to execute on their own. Developers build machine learning solutions from recipes using a descriptive interface hosted by AWS. To build solutions, developers can choose from existing AWS models or train their own with a variety of open source frameworks. SageMaker integrates with AWS data sources and offers a turnkey way to train, test, and deliver models in a scale-free manner. The service abstracts away much of the operational muck traditionally required to bring models to life and insert them into applications. While still early, the service is a promising way for companies to integrate advanced AI capabilities without a staggering investment.
For a portfolio of startups, a data scientist still offers tremendous value. Knowing which of the above point solutions or more advanced tools is most appropriate, for example, still requires a domain of expertise that may not belong to an application developer. Traditionally, data scientists may have embraced the best tools for the job, leading to challenges in terms of supporting, integrating, and evolving their solutions long-term. However, data scientists might shift to a model where they look to these turnkey offerings as a default or starting point for their solutions so that company developers can be integrated tightly into the design, integration, and support of AI within their applications. While these turnkey solutions may not be the most ideal or perfect-fit for a given application, the savings in terms of time and ability to solve more problems with less resources should represent an exponential gain for companies.
Finally, application developers should not fear attempting to embrace these turnkey solutions from AWS (and other providers) on their own. In attending the ML-related sessions and viewing the documentation online, many of these services are easy-to-comprehend and are really focused on a developer audience. Again, while they may not be perfect, many of these services represent a good-enough approach to AI that should allow applications to achieve competitive advantage at a low roadmap cost. By their very nature, these platforms encourage experimentation and iteration which lend themselves to starting somewhere small and growing deeper capabilities over time.
Launch Highlights (see the full list of product launches):
Compute and application delivery:
- Fargate — for companies who prefer to deliver applications via containers, this AWS offering automatically configures, deploys, and scales containers without intervention.
- ECS for Kubernetes — furthermore, if you are a Kubernetes shop, AWS now delivers an abstraction layer that manages most of the availability and scalability of the cluster
- Serverless Application Repository — a repository of pre-designed and open source serverless applications that can be used, modified, and implemented by companies embracing serverless
- Neptune — a fully-managed, serverless graph database. Graph databases can address many application problems when it comes to relationships among data elements. Neptune allows customers to design solutions to address these problems without worrying about the complexities of building and supporting a graph server.
- Aurora Serverless — a fully-managed, serverless SQL database. Companies requiring relational database capabilities can now let AWS automatically manage the sizing and resources at the database layer.
- DynamoDB Backup and Global Tables — these new features for DynamoDB (key-value and document database) address two of the offering’s biggest challenges. Now, DynamoDB tables are backed up automatically and can be restored to a point-in-time. Second, global tables allow applications that scale very large to a global customer base to enjoy the same availability world-wide.
- SageMaker — a fully-managed machine learning platform for developers and data scientists to build and deliver AI solutions at scale. Richly integrated with other AWS services and designed to allow users to focus only on the unique value needed for their application.
- Comprehend — NLP service to find relationships, entities, and insights within text. Pre-trained using other Amazon data services with the ability to enhance with customer-specific data.
- Transcribe — allows developers to easily convert voice-to-text within their applications
- Translate — allows developers to translate text into multiple languages using a deep neural model trained and managed by AWS
- Rekognition Video — a video recognition service powered by deep learning, it can recognize objects, celebrities, and inappropriate content; it can also be used to detect faces in live scenes
- Sumerian — build and deliver AR/VR environments without any previous 3D or graphic experience. Compatible with Rift, Vive, and iOS mobile devices to start
- AppSync — automatically deliver and synchronize data to mobile applications from DynamoDB, ElasticSearch, or Lambda queries via GraphQL
- GuardDuty — automatic threat detection service for applications hosted at AWS, continuously monitors, tests, and notifies of threats