Solve Forward
Published on

The RIGHT Tech Stack for Your Digital Transformation

Authors
Mentoring Engineering Teams

You have a vision for your digital transformation. You want to get in front of the competition, and you know that technology is an integral part of this process. But where do you start? What are the considerations when building a tech stack for your company's digital transformation? This journal entry will help you answer these questions so that you can choose wisely before investing too much time and money into something that may not be right for your business.

In this journal entry, we will cover:

  • The first step to take before choosing any technology - What is the why?
  • How to avoid technology lock-in and vendor lock-in
  • How to optimize for return on investment with the right tech stack

The first step to take before choosing any technology - What is the why?

The first step to take before choosing any technology for developing any product is understanding its motives. What are you trying to accomplish? Understanding this will help determine what type of technologies would be needed to reach your company's goals and objectives. For example, if you're looking to run code near the client on edge using Cloudflare Workers or Serverless Compute with Amazon Lambda, JavaScript is an overwhelming favorite. For more details about Cloudflare Workers, see https://developers.cloudflare.com/workers/platform/languages.

Before choosing which product to try out based purely on features, make sure these considerations have been taken care of so everyone's efforts won't be in vain.

Why is your organization doing this at this point? You may have heard that digital transformation is about:

  • focusing on the customer; and,
  • leveraging automation to drive efficiencies.

But why does your organization need a tech stack to help fuel this transformation? And how will it help you accomplish those goals in this era of digital disruption? Your company needs a technology strategy because there are many different types of technology to choose. You want the right one for your business that helps you set a foundation for a successful transformation. The right tech stack ensures that the code your team writes today stands up to the test of time and avoids costly refactors down the line.

The first step is understanding where your organization currently stands with its current tech strategy. What specific goals would they like to achieve in the next 12 months (Loyalty programs, automating customer service)? What does success look like? How will you measure outcomes?

The second step is to figure out where you want your organization to be in the next three to five years (Customer self-service, automation of processes). How will you measure it? You can then map gaps and identify what type of technology might fill those gaps for your company's transformation.

How will you decide on the right tech stack?

The easiest way to start is to figure out the metrics that define your product's successful outcome. Then build a ranking matrix to help identify strengths and weaknesses in your organization's strategy, goals, and desired outcomes. Consult with experts in each technology discipline required for the transformation - data science, artificial intelligence, robotics, eCommerce, industrial internet of things, etc.- for their perspective. Their recommendations will be backed by experience in their field.

Get input from your organizational leaders and the people who will be implementing the technology solutions you choose to buy or build internally. They also may differ in opinion and help identify strengths and weaknesses that are not being considered by a strict ranking matrix analysis.

Also, determine what type of organization you want to become - a fast follower, a risk-taker, or an innovator. While not set in stone, such a decision will help set a course for your digital transformation path. Once you have mapped out your organization's future state - the strengths and weaknesses of today to the goals for tomorrow, it is time to decide on the right tech stack that will help close this gap.

The best way we know how to do this at Solvative for our client projects is to build a "next-generation roadmap" with your technology team. We start by agreeing on the goal of your company and product and then work forwards in identifying what type of tech will be needed for you to achieve this future state - both internally or externally sourced. A deliverable of this is our Business Requirements Document (BRD) which identifies as many possible business outcomes or user needs through a series of interviews. Once the BRD is complete, you have a starting roadmap to look at how much of the project to invest in initially and what the roadmap may look like for development efforts.

Here's an example conversation we have with clients:

Goal: In five years, we want our organization to provide customer self-service while automating industrial sector processes.

For your organization to be successful in these areas, we will need:

  • Data Science and Artificial Intelligence - These fields have been on the rise since 2012, with a projected growth of 118% over the next five years.
  • Robotics - The use of robotics is expected to grow by 50% over this same period due primarily to an aging population becoming more dependent on technology. We are going to need robots that can help care for older adults and have them interact safely with children or pets.
  • Software Development and Programming Languages- Our company will require software developers that know how best to leverage emerging programming languages and frameworks like NodeJS, Python, R, Swift, etc.
  • Cloud Computing and Platform as a Service - Our company will require that we store data in the cloud while also utilizing platforms like Salesforce.com or SAP to automate customer interactions with our organization.

Success looks like having customers self-service their needs by 2025 through an automated process driven by Artificial Intelligence. Customer service reps are freed from mundane tasks to focus on providing more personalized interaction for your most valuable customers at key points of contact. For example, during checkout or when answering phone calls about billing inquiries, the customers have provided more information so that your team can come in prepared to help your customers quickly and efficiently; a more frictionless experience is had by all involved. Your group can work more brilliantly because it has access to AI-powered automation tools, which provides them with safeguards against mistakes and makes them more productive.

How to avoid vendor lock-in

Vendor lock-in is when a customer is bound to one vendor's product and services due to previous contracts or decisions. For example, if the customer has spent years developing applications for a flavor of .Net, they can't easily update to using NodeJS or other platforms without rewriting all of that work. This would lead to not having what is necessary to complete the task at hand and time and money being wasted.

Digital transformation is an immense challenge, and you need to choose your technology stack wisely. Here are some tips to avoid vendor lock-in and technology lock-in.

  • Don't buy any new products until you thoroughly understand the problem you are trying to solve.
  • Be wary of vendor solutions unless the solution can be easily used as the platform for nearly everything else you do. Or, at a minimum, integrate easily without a large investment.
  • Be careful what open source libraries and frameworks you adopt since they often end up being hard-coded into the project's code base to build something that works with them.
  • When building using 3rd party libraries, always add them to your source control and use them from your CI/CD pipeline, not 3rd party sources directly.
  • Utilize standards-based 3rd party tools and platforms.

Never decide without considering the consequences of all available options. Vendor lock-in is just one type of consequence for poor decisions. If you're using software that is proprietary to a single vendor, what happens if the company goes out of business? What happens when you need to upgrade your operating system, but there's no support for it? What happens when their roadmap does not plan for your organization's future needs? This can lead to data lock-in and potential security threats or even obsolescence. If you use products from a single vendor, they are or could be in control of all your data and how it's stored. You lose the ability to change providers easily if something goes wrong with their service or the service becomes obsolete. This is why avoiding vendor lock-in and choosing the right tech stack is so important.

Always insist on storing your data in the cloud when embarking on any digital transformation mission. This way, you have access to your data should you need to switch vendors or tech stacks.

How to optimize for return on investment with the right tech stack?

It is advisable to choose the right tech stack for your digital transformation project. How do you know which one? Evaluate and prioritize tasks based on their return on investment potential, considering each solution's ability to reduce cost or increase revenue while respecting organizational constraints such as budget, skills availability, and company culture.

It all boils down to choosing a technology that can help optimize performance to bring about an ROI outcome that matches the goals.

Here is a project management strategy that has worked for the Solvative Team:

  1. Make your requirements simple. If you need a meeting to understand the requirements, it's too complex.
  2. Remove stems from the process that does not seem critical. If you are not forced to add back things, you didn't delete enough items. Things that will be added back in will have justification needed on why they need to be there. Capture that to aid the development team.
  3. Simplify or optimize. Always do this after step 2, so that the team is not optimizing or simplifying things that shouldn't be there in the first place.
  4. Accelerate product iterations. Make mistakes fast and early; the cost of failure then is lower.
  5. A person, not a team, should write requirements - decisions get made by people, not departments, leading to better and more transparent decisions being made.
  6. The people working on a the project should know how the pieces fit together, not just their own.
  7. Lastly, automate things that take the most time in testing, and keep adding tests as needed.

For any Digital Transformation project, it's essential to choose the right tech stack. Evaluate and prioritize projects based on their return on investment potential, considering each solution's ability to reduce cost or increase revenue while respecting organizational constraints such as budget, skills availability, and company culture. We'll help you decide which one to choose based on improving performance and increasing ROI outcomes. Whether it's an open-source library, a 3rd party tool from a vendor or even software that's proprietary to another company; make sure you're not making any decision without considering all of the consequences first - whether they are in terms of cost savings, increased revenue potential or organizational constraints such as budget and skills availability. Consider what happens if the vendor or supplier roadmap does not plan for your organization's current needs? What happens when you need to upgrade your operating system, but there isn't support anymore? For more information on how we avoid these risks altogether by choosing "the right tech stack" that will help our client's digital transformation needs, feel free to reach out to us at Solvative.

If you have questions about digital transformation that you’d like for us to cover, please email contact@solveforward.com or @solveforward on Twitter. We’d love to hear from you!