There's a new AWS Sheriff in Town. AWS Step Functions is now the virtual Sherriff of the AWS Wild West, that ever evolving world of cloud services that expands and changes and almost daily. In 2021 there's no single human who can conceptually absorb the full technical scope of AWS, much less master it.
Some history: Step Functions has been a "useful service" since it's inception in 2016. And like all AWS services, it's been constantly evolving. First the native connection to Lambda, then the connections to a select few services like DynamoDB. A few weeks ago that gradual evolution became a revolution. In one sweeping, cloud shattering upgrade, Step Functions shook the epicenter of the entire AWS eco-system. When the tremors stopped, Step Functions was solidly (and perhaps permanently) planted at the core of virtually every AWS Service. This position had been loosely held by Lambda since it's own inception in 2014.
Step Functions can now consume & control over 200 AWS services via over 9000 SDK API calls. In this process, Lambda remains unscathed in terms of it's intrinsic abilities. Lambda is as powerful as ever. But it's now a powerful lower level cousin of the much higher level Step Functions. A sure to be evolving mantra in AWS inner & outer circles will be "Step Functions First" as the best design practice. Step Functions free Lambda up to do what it does best: functions. You continue to create your functions in Lambda, but they now live within Step Functions. Step Functions alleviates Lambda from the burdens of hard coding AWS service orchestration and integrations. The functional sum of your Lambda Functions within Step Functions is now greater than it's parts.
What are Step Functions? On the most basic level it's a "State Machine". A state machine is a behavior model. It consists of a finite number of states and is therefore also called finite-state machine (FSM). Based on the current state and a given input the machine performs state transitions and produces outputs.
AWS Step Functions is no ordinary State Machine. It's a low-code visual workflow service used to orchestrate AWS services, automate business processes, and build serverless applications. Workflows manage failures, retries, parallelization, service integrations, and observability so developers can focus on higher-value business logic.
Workflows provide native "observability" so development teams can see and share workflows and stack them together to create highly sophisticated Business Process Management Systems (BPM) with AWS doing all the heavy lifting and seamless connecting of services.
Used properly, Step Functions will open the flood gates to the full power of the AWS ecosystem, allowing your applications to tap a polyglot array of AWS Services with the lowest barrier of entry and learning curve. You'll be able to create innovative workflows from AWS services already running in your account, as well as spin up new ones in near real-time.
If you can sketch a workflow on the back of a napkin, you can implement it live in Step Functions.
Next Post: Top 10 ways to leverage AWS Step Functions