Traditional software development—one monolithic code base containing all the application’s functionality—has been replaced with a modular approach. This “cloudnative” development breaks up applications into smaller chunks—microservices—to drive agility. These microservices are then frequently deployed within containers since they’re more resource efficient and can be scaled individually.