If you develop ecommerce solutions and think of steering your career towards software architecture, you might want to learn about this new trend. It’s about enterprise software aimed at improving the productivity of digital teams. Sounds odd? Meet MACH (Microservices based, API-first, Cloud-native SaaS and Headless). While it might sound like a bundle of buzzwords, it's all about bringing better developer experience into ecommerce projects, helping you ship faster.
Microservices? It's so 2010s
The history of MACH dates back to the 2010s but it wasn’t until 2020 when it got a name and caught the attention ofmainstream brands. What's this fuss about? In early 2010, Twilio and Stripe earned developers' love with their API-centric approach. Up-to-date documentation, code samples for every major platform, and free tiers to test the solution inside out changed the way developers produce commerce software. It didn't take long until a few business-oriented engineers noticed that this approach can make a dent in the core ecommerce areas.
Before I give you a hint what’s so special about MACH tools, a disclaimer: everybody that have been in the industry long enough realize that devtools revolve around the perpetual hype cycle: bright and shiny; startups use it -> claimed by an enterprise -> consultants necessary for maintenance -> downfall but still in use ->memes emerge.
MACH tools will follow this path no matter what. But the good news is these tools have just entered the 2nd phase. This means they still have a long way ahead but, at the same, they've grown with enterprise features so that they can be recommended in the corporate environment too.
So, why MACH tools now? Well, it's about speed. In ecommerce, speed wins the market. As more and more commerce happens online, the more focus is put on helping digital teams roll out and test new commerce experiences (or devise new ways of monetizing our attention).
Fewer ASAPs with better APIs
How does MACH help with the speed of the digital team? I didn't use "digital team" without a reason. MACH tools make work easier for both developers and ecommerce operators (marketers, sales, support, logistics).
First of all developers are given dozens of standalone, battle-tested features enclosed in API endpoints. On one hand, they free up a substantial amount of time – there are building blocks who took a year for a whole team to complete, polish, and document its API request/response. On the other, with the headless approach you get to decide how the UI works. In a nutshell, it's a middle ground between build and buy.
What about operators? In fact, they are the first-class commerce software users. Sometimes they use it more often than consumers. Internal tools tend to get worse UX and support than software running the pixel-perfect checkout view. MACH tools address this case with operator-friendly admin panels/dashboards. They're optimised and documented for marketing/support/inventory agents so they can get their jobs done.
When you think about it, it's actually the devs who benefit twice. They get business logic out of the box (with the freedom to update frontend with the new framework that dethroned legacy stuff from the last year). But they also get fewer meetings and ASAP requests from the marketing team because it all can be managed within a dedicated UI. And, in case of questions, there’s always the vendor support teams🙋 What's not to like about it?
Finally, the SRE teams have a reason to be happy too. Headless platforms brag about being Black Friday-ready throughout the whole year. Because MACH platforms serve API requests across the globe they expect fans to be spinning faster for some TV ad in Big Brother all the time. When building software from scratch, there's always someone asking: but will it scale? In the MACH world, this is guaranteed from day one.
OK, show me examples
Every software platform that lives long enough to become enterprise-grade develops an allergy to explaining things in simple terms. Benefits, buzzwords, battlestar galactica… the webpage overgrows with terms aimed at making the brand look bigger and showing that it’s gonna fix all issues the next day you buy. In my opinion, most of the MACH companies don't go this route.
As dev-focused tools, they explain their offer with the IO-centric approach. If the product homepage still looks too vague for you, you can always turn to the API references to find your answer in JSON.
To give you a sneak peek into what commerce building blocks are already on the market, I prepared TLDR versions of each MACH member. Inspired by AWS in Plain English, I’ve gone through the MACH library and here it is – a short, ™️-less, and, not-so-serious explanation of MACH members.
(Note: the list isn't exhaustive because every quarter dozens of new headless SaaS are launched. Here I focused on those that were qualified by the ecommerce veterans formed as MACH tech council.)
One line explanation: Typo-tolerant product search with instant results.
Use this to: Help shoppers find products with autocomplete and immediate search results filtered and designed according to customer attributes.
It’s like: Amazon search, but prettier.
It’s like: Contentful/Contentstack/Storyblok x Cloudinary👇
One line explanation: Headless version of Bigcommerce with extra hosting, security, and support options.
Use this to: Manage orders, carts and product catalog when you’re a mid-market to enterprise company.
It’s like: Shopify Plus but Bigcommerce was first to use “headless”.
One line explanation: CMS structured as a product catalog tree which synchronizes with marketplaces.
Use this to: Synchronize product information and prices across any sales channel.
It’s like: Product_Catalog_August2021_final.xlsx shared on Dropbox that sends changes to marketplaces on every “Save”.
One line explanation: SDKs for building checkout pages with support for subscriptions and bundling.
Use this to: Test which checkout flow works best for different devices, customer segments, pricing rules, and compliance requirements on top of Shopify, Bigcommerce, or commercetools.
It’s like: If Shopify, Bigcommerce, or commercetools had an extra team to untangle checkout UI complexity.
One line explanation: Image and video storage with transformation/transcoding features and CDN.
Use this to: Store and modify media for your product pages.
It’s like: Imagemagick and ffmpeg in the cloud, with support.
One line explanation: All-around ecommerce platform with an extendable data model.
Use this to: Manage orders, carts, and product catalog with geographical and performance scalability.
It’s like: Developer-friendly Magento in the cloud, minus the front-end.
Contentful & Contentstack & Storyblok
One line explanation: Mobile-friendly CMS.
Use this to: Store and update content of your product pages with device, geographical, and performance scalability.
It’s like: Wordpress but works fine with mobile apps, even under really heavy traffic.
enactor,fluentcommerce & NewStore
One line explanation: Inventory tracking with a graphical editor for order routing and mobile POS.
Use this to: Track product availability and orders across multiple stores, with the support for online and offline fulfilment.
It’s like: Your fulfilment team’s checklist looks like this:
One line explanation: Components for building UI on top of headless commerce platforms.
Use this to: Build internationalized, mobile-friendly, single-page shop storefronts.
It’s like: Your storefront is finally taken care of by a horde of senior frontend developers.
One line explanation: Customer data platform.
Use this to: Connect several ecommerce systems to exchange data in real-time.
It’s like: Ecommerce-focused Segment.
One line explanation: A script replacing parts of the website according to visitor attributes.
Use this to: Insert more relevant content to a visitor clicking in your shop.
It’s like: A proven hierarchy of 'ifs' you can use to make your product page more personalized to a visitor.
One line explanation: Native mobile apps builder with a drag & drop editor.
Use this to: Build a mobile app for your shop.
It’s like: Every shopping app looks the same, so why not replace mobile software developers with software itself?
One line explanation: A UI-controlled script that replaces parts of a website according to visitor attributes.
Use this to: Make static websites dynamic again.
It’s like: A jamstack version of Optimizely.
One line explanation: Rules engine for incentives and rewards with an admin panel.
Use this to: Control who and when can get a discount or loyalty points.
It’s like: Your marketer can deactivate this one coupon code without waiting for the next spring.
One line explanation: All-around ecommerce platform with a great number of API endpoints for particular sectors.
Use this to: Run ecommerce with geographical, performance, vertical and [put yours] scalability.
It’s like: You merged all other MACH Alliance members into the MEGAMACH platform.
Fine, show me the code
If you want close-to-real world examples, why not take a look at winner repos of the recent hackathon organised by MACH.
The best way to learn how MACH speeds up developer productivity (as well as where it becomes a pain in the neck) is to follow folks who have maintained MACH-based solutions for a while now (MACH advocates) or meet them at one of MACH events. And if you can’t, you can always turn the MACH radio on.
Top comments (0)
Some comments may only be visible to logged-in visitors. Sign in to view all comments.