Enterprise

3 questions to ask before adopting microservice architecture

Comment

Digital generated image of data cloud server.
Image Credits: Andriy Onufriyenko (opens in a new window) / Getty Images

Madison Friedman

Contributor
Madison Friedman is an investor intern at Vertex Ventures US and an MBA candidate at the Wharton School of Business.

As a product manager, I’m a true believer that you can solve any problem with the right product and process, even one as gnarly as the multiheaded hydra that is microservice overhead.

Working for Vertex Ventures US this summer was my chance to put this to the test. After interviewing 30+ industry experts from a diverse set of companies — Facebook, Fannie Mae, Confluent, Salesforce and more — and hosting a webinar with the co-founders of PagerDuty, LaunchDarkly and OpsLevel, we were able to answer three main questions:

  1. How do teams adopt microservices?
  2. What are the main challenges organizations face?
  3. Which strategies, processes and tools do companies use to overcome these challenges?

How do teams adopt microservices?

Out of dozens of companies we spoke with, only two had not yet started their journey to microservices, but both were actively considering it. Industry trends mirror this as well. In an O’Reilly survey of 1500+ respondents, more than 75% had started to adopt microservices.

It’s rare for companies to start building with microservices from the ground up. Of the companies we spoke with, only one had done so. Some startups, such as LaunchDarkly, plan to build their infrastructure using microservices, but turned to a monolith once they realized the high cost of overhead.

“We were spending more time effectively building and operating a system for distributed systems versus actually building our own services so we pulled back hard,” said John Kodumal, CTO and co-founder of LaunchDarkly.

“As an example, the things we were trying to do in mesosphere, they were impossible,” he said. “We couldn’t do any logging. Zero downtime deploys were impossible. There were so many bugs in the infrastructure and we were spending so much time debugging the basic things that we weren’t building our own service.”

As a result, it’s more common for companies to start with a monolith and move to microservices to scale their infrastructure with their organization. Once a company reaches ~30 developers, most begin decentralizing control by moving to a microservice architecture.

Large companies with established monoliths are keen to move to microservices, but costs are high and the transition can take years. Atlassian’s platform infrastructure is in microservices, but legacy monoliths in Jira and Confluence persist despite ongoing decomposition efforts. Large companies often get stuck in this transition. However, a combination of strong, top-down strategy combined with bottoms-up dev team support can help companies, such as Freddie Mac, make substantial progress.

Some startups, like Instacart, first shifted to a modular monolith that allows the code to reside in a single repository while beginning the process of distributing ownership of discrete code functions to relevant teams. This enables them to mitigate the overhead associated with a microservice architecture by balancing the visibility of having a centralized repository and release pipeline with the flexibility of discrete ownership over portions of the codebase.

What challenges do teams face?

Teams may take different routes to arrive at a microservice architecture, but they tend to face a common set of challenges once they get there. John Laban, CEO and co-founder of OpsLevel, which helps teams build and manage microservices told us that “with a distributed or microservices based architecture your teams benefit from being able to move independently from each other, but there are some gotchas to look out for.”

Indeed, the linked O’Reilly chart shows how the top 10 challenges organizations face when adopting microservices are shared by 25%+ of respondents. While we discussed some of the adoption blockers above, feedback from our interviews highlighted issues around managing complexity.

The lack of a coherent definition for a service can cause teams to generate unnecessary overhead by creating too many similar services or spreading related services across different groups. One company we spoke with went down the path of decomposing their monolith and took it too far. Their service definitions were too narrow, and by the time decomposition was complete, they were left with 4,000+ microservices to manage. They then had to backtrack and consolidate down to a more manageable number.

Defining too many services creates unnecessary organizational and technical silos while increasing complexity and overhead. Logging and monitoring must be present on each service, but with ownership spread across different teams, a lack of standardized tooling can create observability headaches. It’s challenging for teams to get a single-pane-of-glass view with too many different interacting systems and services that span the entire architecture.

For example, years ago, one company had 10 different monitoring systems, three different logging systems and additional third-party vendors throwing their own data into the mix. The sprawl of observability tooling creates issues that flow downstream, making critical operations like incident response far more difficult.

“It’s important to get the number of services right,” said Andrew Miklas, co-founder of PagerDuty. “There’s a basic sanity check for the number of services in your organization. If each dev supports three services, you’re probably creating too many. On the other hand, if a full team of 10 devs supports one service, it may be time to break it apart.”

Managing a microservice architecture also implies managing multiple codebases, each with its own set of dependencies. Each codebase also needs to be hooked up to its own release pipeline. As the practice of CI/CD matures and companies can deploy multiple times per day, if something breaks, it becomes increasingly difficult to determine which change from which codebase caused the issue.

Problems are plentiful, but our interviewees also found creative solutions to overcome challenges with microservices.

Which strategies and tools help companies overcome these challenges?

Speaking with developers and engineering managers helped us identify essential strategies and tools to help companies manage their microservice pain points:

1. Embracing the silos that form in your organization. The key is to make it easy for teams to break out of their silo when needed. Establishing best practices and standardized formats for cross-team contracts helps break down silos when teams need to work together. For example, Laban said he has “seen a lot of companies lay out high level guidelines and say ‘if you follow these best practices then you get a license to operate autonomously.’”

On the tooling side, Kodumal says using new technologies like feature flagging can help teams embrace siloed teams and services, “once you can decouple deploying a change from exposing it to end users you have a greater flexibility in how you roll things out.”

2. Balancing your team with generalists and specialists can also help overcome the organizational drawbacks of distributed architecture. Every team has specialists that know their codebase inside and out. But adding in generalists can help facilitate connections between teams for features that span multiple codebases, share best practices across the company and help educate the team on how all the codebases work together. Sourcing internal generalist candidates from platform teams and setting up rotational programs between groups can set up teams for long-term success.

3. Standardization helps simplify microservices. Independent service ownership gives teams the flexibility to choose the best technologies that fit their requirements, but too much autonomy breeds too much complexity.

Laban recommended that “you should only introduce new technologies if they have a large impact. Don’t look for a 10% improvement, look for a 2x improvement.” Before switching to microservices, specify a preferred set of technologies that engineering teams can standardize on.

“When making technical decisions, try to keep the needs of the broader company in mind and don’t just focus on what works best for the piece of software you’re writing today,” said Miklas. This makes it easier to hire devs, share knowledge and focus development on the most useful tech stacks.

4. The most exciting solution I’ve seen that helps increase visibility across the microservice architecture is the service catalog. The service catalog’s goal is to reduce the pain of managing the associated overhead of microservices by having one place for developers to get all the information they require about their infrastructure. From costing, to observability, to team ownership, a successful service catalog helps developers understand how infrastructure maps to their company’s organizational structure.

Companies like OpsLevel, Cortex and Effx help dev teams build better software by painting a picture of how their services fit together and how they map to their organizational structure. John Laban laid out his vision for how teams should manage their microservice architectures and the challenges that follow: “The ideal end state is where the development teams have full ownership of their software end to end both in design and operation. This works well with a distributed architecture where people get autonomy and independence and they can move a lot faster. But this independence comes with responsibility in reliability, security and compliance, which takes a lot of added effort.”

The best products do far more than just track service SLOs; they help teams collaborate to build better services. Products like OpsLevel help teams understand what language a given service is written in, who to contact, how to contact them if something goes wrong and what changes are coming down the pipeline.

These tools can also solve practical headaches such as finding and eliminating orphaned services, cataloging services for comprehensive legal and security audits, resolving incidents and driving standardization of technologies across infrastructure.

For example, let’s say your organization needs to adopt a new technology like Kubernetes or move to a newer version of a language like Java or Python. This process might sound simple when you’ve only got a few services to keep track of. But once your organization scales beyond ~30 services, it’s nearly impossible to ensure standardization across the entire stack.

With organizational silos keeping teams focused on only their specific slice of infrastructure, cross-team engineering efforts require a microservice catalog to ensure all teams are on the same page when it comes to understanding who has yet to adopt. Companies like OpsLevel keep an up-to-date list of all your services and their owners with metadata on languages and frameworks to help you reach 100% adoption.

Another instance where microservice catalogs are a must is in incident response. Our interviews highlighted the magnitude of pain teams face when trying to resolve incidents in a microservice architecture. With services spread across so many teams and monitoring data spread across so many siloed products, it’s difficult to get context on the timeline of events leading up to an incident.

Tools like Effx embrace the service catalog to aggregate data across services and data sources to give the complete picture of an incident. For example, let’s say I’m a developer on support rotation. I can use Effx to pull in monitoring data from tools like Datadog to scan my services and identify any incidents quickly. If one pops up, I can build a timeline of events using monitoring data, past deployments, active feature flags and provisioning changes to diagnose the problem.

Tying everything together

Microservices are now widely accepted as a way to help companies scale their infrastructure with their org structure.

Most teams start with a monolith to lower overhead. As the company scales to naturally develop distinct areas of focus and ownership, microservices help link the right services to the right teams.

Increasing complexity creates challenges in managing this infrastructure. Service sprawl, technical and organizational silos, and dependency management slow development and take the fun out of building software.

But development teams are problem solvers by nature, and they’ve devised strategies to overcome these issues. Standardized cross-team contracts, balancing dev teams, standardization of practices/tooling and service cataloging help teams manage the complexity.

These strategies have helped our interviewees scale their architectures to support some of today’s most popular products. We’re excited to see what new products startups come up with to help teams fully realize the power of microservices. If your company is looking for feedback on how to uplevel microservice infrastructure or if you’re working on a new product to tame microservices, leave a comment below or get in touch.

Vertex Ventures US has a financial interest in LaunchDarkly and OpsLevel.

How Roblox completely transformed its tech stack

More TechCrunch

Dubai-based fractional property investment platform Stake has raised $14 million in Series A funding.

Stake raises $14M to bring its fractional property investment platform to Saudi Arabia, Abu Dhabi

“We were motivated to fundraise because we think the ’24 vintage is going to be a good one,” founder Craig Shapiro said.

After hits like Reddit and Scopley, Collaborative Fund easily raised a $125M fund to tackle climate, health and food

The merger has yet to close due to extended due diligence amid ongoing restructuring and macroeconomic headwinds across multiple countries.

Sources: Wasoko-MaxAB e-commerce merger faces delays amid headwinds in Africa

The keynote will be focused on Apple’s software offerings and the developers that power them, including the latest versions of iOS, iPadOS, macOS, tvOS, visionOS and watchOS.

Watch Apple kick off WWDC 2024 right here

Featured Article

What to expect from WWDC 2024: iOS 18, macOS 15 and so much AI

Apple is hoping to make WWDC 2024 memorable as it finally spells out its generative AI plans.

5 hours ago
What to expect from WWDC 2024: iOS 18, macOS 15 and so much AI

While funding for Italian startups has been growing, the country still ranks eighth in Europe by VC investment, according to Dealroom. Newly created Italian Founders Fund (IFF) hopes to help…

With €50 million to invest, Italian Founders Fund looks for entrepreneurs with global ambitions

William A. Anders, the astronaut behind perhaps the single most iconic photo of our planet, has died at the age of 90. On Friday morning, Anders was piloting a small…

William Anders, astronaut who took the famous ‘Earthrise’ photo, dies at 90

You’re running out of time to join the Startup Battlefield 200, our curated showcase of top startups from around the world and across multiple industries. This elite cohort — 200…

Startup Battlefield 200 applications close tomorrow

New York’s state legislature has passed a bill that would prohibit social media companies from showing so-called “addictive feeds” to children under 18, unless they obtain parental consent. The Stop…

New York moves to limit kids’ access to ‘addictive feeds’

Dogs are the most popular pet in the U.S.: 65.1 million households have one, according to the American Pet Products Association. But while cats are not far off, with 46.5…

Cat-sitting startup Meowtel clawed its way to profitability despite trouble raising from dog-focused VCs

Anterior, a company that uses AI to expedite health insurance approval for medical procedures, has raised a $20 million Series A round at a $95 million post-money valuation led by…

Anterior grabs $20M from NEA to expedite health insurance approvals with AI

Welcome back to TechCrunch’s Week in Review — TechCrunch’s newsletter recapping the week’s biggest news. Want it in your inbox every Saturday? Sign up here. There’s more bad news for…

How India’s most valuable startup ended up being worth nothing

If death and taxes are inevitable, why are companies so prepared for taxes, but not for death? “I lost both of my parents in college, and it didn’t initially spark…

Bereave wants employers to suck a little less at navigating death

Google and Microsoft have made their developer conferences a showcase of their generative AI chops, and now all eyes are on next week’s Worldwide Developers Conference, which is expected to…

Apple needs to focus on making AI useful, not flashy

AI systems and large language models need to be trained on massive amounts of data to be accurate but they shouldn’t train on data that they don’t have the rights…

Deal Dive: Human Native AI is building the marketplace for AI training licensing deals

Before Wazer came along, “water jet cutting” and “affordable” didn’t belong in the same sentence. That changed in 2016, when the company launched the world’s first desktop water jet cutter,…

Wazer Pro is making desktop water jetting more affordable

Former Autonomy chief executive Mike Lynch issued a statement Thursday following his acquittal of criminal charges, ending a 13-year legal battle with Hewlett-Packard that became one of Silicon Valley’s biggest…

Autonomy’s Mike Lynch acquitted after US fraud trial brought by HP

Featured Article

What Snowflake isn’t saying about its customer data breaches

As another Snowflake customer confirms a data breach, the cloud data company says its position “remains unchanged.”

3 days ago
What Snowflake isn’t saying about its customer data breaches

Investor demand has been so strong for Rippling’s shares that it is letting former employees particpate in its tender offer. With one exception.

Rippling bans former employees who work at competitors like Deel and Workday from its tender offer stock sale

It turns out the space industry has a lot of ideas on how to improve NASA’s $11 billion, 15-year plan to collect and return samples from Mars. Seven of these…

NASA puts $10M down on Mars sample return proposals from Blue Origin, SpaceX and others

Featured Article

In 2024, many Y Combinator startups only want tiny seed rounds — but there’s a catch

When Bowery Capital general partner Loren Straub started talking to a startup from the latest Y Combinator accelerator batch a few months ago, she thought it was strange that the company didn’t have a lead investor for the round it was raising. Even stranger, the founders didn’t seem to be…

3 days ago
In 2024, many Y Combinator startups only want tiny seed rounds — but there’s a catch

Welcome to Startups Weekly — Haje’s weekly recap of everything you can’t miss from the world of startups. Anna will be covering for him this week. Sign up here to…

Startups Weekly: Ups, downs, and silver linings

HSBC and BlackRock estimate that the Indian edtech giant Byju’s, once valued at $22 billion, is now worth nothing.

BlackRock has slashed the value of stake in Byju’s, once worth $22 billion, to zero

Apple is set to board the runaway locomotive that is generative AI at next week’s World Wide Developer Conference. Reports thus far have pointed to a partnership with OpenAI that…

Apple’s generative AI offering might not work with the standard iPhone 15

LinkedIn has confirmed it will no longer allow advertisers to target users based on data gleaned from their participation in LinkedIn Groups. The move comes more than three months after…

LinkedIn to limit targeted ads in EU after complaint over sensitive data use

Founders: Need plans this weekend? What better way to spend your time than applying to this year’s Startup Battlefield 200 at TechCrunch Disrupt. With Monday’s deadline looming, this is a…

Startup Battlefield 200 applications due Monday

The company is in the process of building a gigawatt-scale factory in Kentucky to produce its nickel-hydrogen batteries.

Novel battery manufacturer EnerVenue is raising $515M, per filing

Meta is quietly rolling out a new “Communities” feature on Messenger, the company confirmed to TechCrunch. The feature is designed to help organizations, schools and other private groups communicate in…

Meta quietly rolls out Communities on Messenger

Featured Article

Siri and Google Assistant look to generative AI for a new lease on life

Voice assistants in general are having an existential moment, and generative AI is poised to be the logical successor.

3 days ago
Siri and Google Assistant look to generative AI for a new lease on life

Education software provider PowerSchool is being taken private by investment firm Bain Capital in a $5.6 billion deal.

Bain to take K-12 education software provider PowerSchool private in $5.6B deal