Microservices are in, monoliths are out & everyone should switch to automated testing for CI/CD deployment
Finding out the latest trends for development can be difficult for the average developer. That’s why Atlassian’s recent survey is such a helpful look at what’s going on in the field. Apparently, microservices are in, monoliths are out, and absolutely everyone has to switch to automated testing for CI/CD deployment.
Software design can be a lot like fashion. One day you’re in, and the next, you’re out. To make things even more difficult, modern software development can be like shouting into the void. You never really know if that product you spent so much time on was worth it. So, how can developers make sure they don’t mix pink and red? Or worse, choose a monolith over microservices?!
Microservices are the new monolith
Okay, this shouldn’t be too much of a surprise, but monoliths are officially on their way out. Monoliths make everything more difficult, from continuous delivery to just debugging errors. It’s no big surprise why the movement to microservices was so fast.
Atlassian found that 71% of developers that use microservices say that it’s easier to both test and deploy new features. Microservices make it possible for smaller teams to move their features from theory into practice independently.
“People are moving over to using microservices for their new applications – they can develop specific components that do jobs really well, and they can scale those jobs up quickly if they are successful,” said Patrick McFaddin.
Automation is crucial for CI/CD
Manual testing is so 2018. Do employers really expect their developers to manually go through code like some kind of computer peasant? We have automated testing for that now.
Speed is of the essence for any successful development team. Manual testing is slow and laborious. It drags the whole build/development pipeline down. Atlassian found that 62% of teams were bogged down by manual testing issues like insufficient test coverage, additional processes, and a lack of pipeline automation.
With continuous integration and continuous delivery (CI/CD), teams can release better quality software more often without running into these kinds of delays. Almost half of the teams surveyed found that they could ship changes and received customer feedback faster with CI/CD. More than half found they had less bugs or outages with CI/CD solutions.
This is a drum we’ve been banging on for a while; here’s what Chris Lample said a while back when we spoke to him before W-JAX:
Automated testing allows you to scale your testing in ways not possible with manual testing. After you’ve invested resources in automating test cases, you can run them more frequently and on multiple devices with little additional effort. Scaling your testing with automated testing is a great way to ensure that your app is bug-free.
Forget productivity measurements; focus on customer satisfaction
Sure, we’ve all been groomed to care about our numbers and metrics. But having the TPS reports done on time matters a lot less than making sure the end user is pleased with the product.
As Atlassian points out, outcome-driven development moves away from how fast something is delivered and focuses on the values it creates for the customer. It’s inherently more agile, with an emphasis on tools that provide real-time build and deployment information, data and analytics around customer adoption, and built-in feature flagging.
Trends to watch out for
So, to summarize, Atlassian recommends that development teams focus more on improving customer satisfaction. Whether that’s adopting a CI/CD approach or dumping a monolith, the main goal here is to improve the value for the end user.
Check out Atlassian’s infographic for all of their results. Have we missed out on some big developing trend? Let us know in the comments below!