I once again had the opportunity to present at the Brampton DevOps / Cloud Computing Meeting. This session was focused on a series of rapid-fire lightning talks. There were a few really great talks on “Automating Legacy” and “Next.js with Now”. All around a great and fun evening.
My lightning talk focused on 6 software architecture trends that have been on my mind since attending ArchConf 2019. It was a great conference, with some incredibly talented presenters and architects. This made it a perfect opportunity to reflect on 2019 and think about what is not working and what is working both internally at SPS Commerce and externally in the tech community in general.
While I won’t recap the entire presentation, here is a brief overview… let me know what you agree with, disagree with, or think should be added to this list:
Recent stats show that around 70% of the world works remotely in some way at some point during the average workweek. That is a huge number, and likely much higher than you thought it was (I know it was for me). Additionally, the same measurements show that when working remotely employees are 13% more productive at the same time. I wonder why that is?
Contrary to popular belief “not everyone” is doing continuous deployment. Sure continuous delivery is entirely standardized in DevOps mentality now, but continuous deployment is REALLY hard to do well and has many inherent risks that come with it.
Simply put, a Microservice architecture in its purity is more expensive often than we want to admit. We pay the price in dealing with granularity. Technology enables this level of granularity, but that doesn’t mean we don’t pay for it through higher management costs, infrastructure costs (DB isolation alone is costly). This forces us to think for the monoliths we are decomposing if the organization would benefit from a better balance, focusing on a tiny or small service architecture instead. Better yet let’s focus on asynchronous workflows and streaming technology to enable the services we are building.
While my naive first thought is to believe that everyone should be moving to the cloud since it enables my team and I to provide immense velocity with what we are building, there are many reasons why the cloud may not be the right choice! In fact, some organizations are moving away from the cloud, including Dropbox who saved over $74.6M in data expenses.
I was introduced to CDC at ArchConf this year, and love the concepts that it enforces, and I look forward to diving into it deeper. Rather than attempt to explain it here… go check it out yourself. After you understand the concepts, have a look at pact.io to help you enable it in your organization.
I’ll be honest, I always struggled with data lake concepts a lot. The idea of working with unstructured models and data in production simply didn’t make sense to me. From what I gather from others over the past year and some of the internal technology changes within SPS, this sentiment rings true with others.