re:Invent 2023 Recap
TLDR; AWS doing AWS things - making it possible for your company to be great at software, and play offense in this Software is Eating the World economy.
Here's a quick TOC of sessions/topics that resonated with me:
DynamoDB (DDB)
I always like to attend at least one of these sessions - I always come away with a deeper understanding about some aspect, like 'single table design', for example. And this year, I came away with another step toward Dynamo enlightenment - DynamoDB was born out of this idea of rethinking the entire "database" design, from access patterns, storage, replication, and performance (to name a few aspects). Here are the impressions on me that will affect my thinking going forward:
TimeStream
I first saw a TimeStream session several years ago, and like everything else, AWS just keeps innovating here. Timestream is another purpose-built database, but it feels like I have built so many apps where I stored time series in a RDBMS. Timestream is built just for this, and it just feels more intuitive, and gives you that feeling that it works better with what you are trying to do when you have to work with time series. Similar to Dynamo, be intentional about the choice of using these purpose-built databases, and really challenge if you need a RDBMS. I expect that DDD will also help you understand your access patterns with time series as well.
Datalakes
Building on the database theme(s), I wanted to attend an Iceberg session - I couldn't get a reserved seat but arrived to one session over an hour early and was able to get in. It didn't disappoint. Going back to my comments in the database section, with Iceberg (and the other datalake formats) being available in AWS, and natively supported in Glue, EMR, and Athena, I find myself asking me, do I really need that RDBMS? Do I really need to store data in a RDBMS, and then have some Glue job dump data into a datalake?
Observability: CloudWatch
I put this 2nd on my list but between Data & Analytics and Observability, these 2 topics mentally stimulated me more so than any other topics. I've written large enterprise apps, and I've consulted to companies on their large enterprise apps, and imo, you can't call it an enterprise app if you haven't done the observability part.
And with that said, from a developer persona, I wouldn't want to do it any other way. What you can do with CloudWatch is just fantastic - it made me want to write more code, just so I can do even MORE with CloudWatch. And with the new announcement of Multi Data Source it seems like a no-brainer to put CloudWatch to the test. You can read about all of the new CloudWatch capabilities here.
Lately, I've been using creating metrics with Powertools in Lambda, and then using metric streams to put those into a datalake, where I can then do things like push notifications to mobile apps. Limitless possibilities with CloudWatch.
领英推荐
Santander
Many years ago, before the cloud, I built an algorithmic trading platform. It is a very hard thing to do, but also one of those times where you feel like you learned things that will be with you forever. So when I saw a session from a company building a cloud-native trading platform, I was more than intrigued.
Several things stood out to me that I feel are worth highlighting:
GenAI
AWS seems to have made a conscious choice that their main goal, right now, is to help companies be better at the RAG technique. I liked the approach, because every client I have talked to has struggled with this. So there was some aspect of RAG across many of the AI sessions, from live coding sessions using Bedrock with LangChain, to using PostgreSQL (with the pgvector extension) or OpenSearch Serverless as the vector database, how to utilize Kendra in your RAG pipeline, or how to do this all in a serverless way, to using Bedrock knowledge bases. BTW, the latter is the new service to abstract all the complexity.
But I think the thing I am most energized about is Bedrock Agents. You are going to hear more about "ReAct" - reasoning and action. Today, you see lots of demos asking GenAI to answer a question. But the next thing is creating agents with GenAI that go do things for you. I am most excited about this because it aligns with Jobs Theory (jobs to be done): people pull products into their lives to make progress against their challenges.
So think about Agents creating sales and profitability reports, and pulling from the right data sources, or making appointments for your customers while also making sure your supply chain/inventory is up to date.
Imo, these Agents are what we always wanted from RPA (aka robotic process automation). This is where all those AI productivity gains are going to come from - where the AI dream will be realized.
Last but not least, AWS' GenAI model, Titan, allows for continuous pretraining. This might not be for everyone, but when you need a model whose knowledge is constantly incorporating your companies' knowledge, continuous pretraining is a compelling capability.
Parting Thoughts
Re:invent 2023 proves one thing: AWS is not going to stop innovating. Do you have the organizational structure, cloud governance processes, and human talent to utilize all these capabilities for the benefit of your customers and your business? It's not easy, but winners and losers are being chosen daily. It's why the cloud has to be part of your competitive strategy: the cloud allows you to not be devoured in this Software is Eating the World economy.
Let’s go build!