No Strategy? Do Not Pass Go
In this article: The pitfalls of a one-dimensional strategyStrategies provide the framework for collaborationDecision-makers are crucial Strategies create sustainable project flow…
Read MoreIn this article:
A solid foundation for a cloud architecture is essential to the success of any application. An overarching vision for the application provides direction, but there are numerous decisions required in developing its architecture. Inevitably, a lack of planning or structure causes significant pain and headaches down the road. For example, more than half of companies report difficulty with their DevOps journey. In fact, long-term planning is considered a new practice for most with only 34% of firms reporting that they plan for long-term IT architecture. From cloud strategy to assessing the level of expertise on your team, a solid cloud architecture foundation starts with answering key questions rather than every single question.
Evaluating all the decisions for a cloud architecture is overwhelming. Here are a few considerations to help establish a sturdy foundation that will benefit you:
The pivotal first decision is whether the application will embrace cloud-native hosting, or if it is better suited for a cloud-agnostic platform. My choice – go with cloud-native and reap the benefits of speed and simplicity. Cloud-native offers benefits such as autoscaling, a pay-per-use model, and faster development.
SQL or NoSQL? Graph? Distributed? Will it be self-managed or cloud-hosted?
Data is your most valuable asset. Selecting the right database is one of the most important decisions to consider. Why? Switching to another one is difficult and expensive due to the effort, complexity and outbound data charges. For instance, cloud providers don’t charge you to put data in (ingress), but they do charge you to take data out (egress).
Containers or Serverless. If you select containers, which container engine? What will you use for container orchestration? Who will manage it?
My choice – utilize a “Serverless First” approach. Most workloads are candidates for a serverless implementation. Learn more about how you can determine if your application is suited for a serverless from our guide.
AWS or Azure Well-Architected Framework, or something else? How will you ensure security from end to end of the entire stack?
The default logging and visualization capabilities provided by the cloud providers are basic with limited capability. Given that “logs are gold,” these tools are instrumental in problem detection and diagnosis.
How will you be able to deploy multiple times per day without any service interruption? Will you use one of the cloud provider solutions, or do you prefer a more cloud-agnostic approach?
All of these decisions could differ for each application. Taking a step back and answering key questions at a higher level will guide decisions for more detailed, technical ones. When I’m engaging with a client on an application modernization project, I start with these four questions:
Having certainty to any of these questions yields a cohesive technology strategy for the organization. Without a set foundation for the cloud architecture, teams within an organization will act independently and operate under splintering understandings of the vision, creating havoc and decreasing speed and reusability.
Here’s a simple but sample strategy statement that would cover these questions:
Our cloud strategy is to build cloud-native applications in AWS – portability to other cloud environments is not a requirement. We prefer to use SaaS offerings and not install or implement anything that we must manage ourselves. If there is no such offering in AWS, we will utilize an open-source solution after completing due diligence and choosing the best option. Our apps follow the Twelve-Factor methodology and AWS Well-Architected frameworks to ensure availability, scalability and security.
Although it’s not extensive, this sample statement does answer the critical questions that provide a strong direction to your engineering teams. The key is to develop one that’s perfect for your needs.
Building a strategic cloud architecture plan starts by asking essential questions about your strategy. A game plan for cloud deployment, containers, open-source, and an assessment of team talent will provide a launchpad for successful application development.
With a plethora of options to choose from, laying the groundwork to create a uniform approach will set realistic and tangible expectations for development. Here at GAP, our cloud-native experts can help your team build a cloud architecture. Sign up today for a “Modernization Workshop for Architects,” covering cloud-native development, microservices, containers, serverless, big data and DevSecOps.
If this article interests you and you are a technical leader, you may join my secret underground Slack channel. Please reach out to me if you’re interested in discussing topics like this and others with your peers across all industries.
Dave Moore is GAP’s Chief Innovation Officer. He is a seasoned technology executive with more than 25 years of experience in conceptualization and crafting innovative solutions that provide scalability, widespread end-user adoption, and substantially increased revenue. Dave’s experience has given him unique insight into building diverse teams, and expert knowledge of microservices, Serverless, cloud optimization, CI/CD, security, big data and open-source technologies. You can connect with Dave on LinkedIn, or send him an email.
In this article: The pitfalls of a one-dimensional strategyStrategies provide the framework for collaborationDecision-makers are crucial Strategies create sustainable project flow…
Read MoreWith an increased demand for cloud services, industries of virtually every vertical are migrating to the cloud. So, how do…
Read More