Close up of hands on a laptop keyboard
Technology / 04.23.2018

Reduce your tech stack to improve viability

Bob Dylan wrote “The times they are a changin” more than 50 years ago. People have listened to it on vinyl, cassette, CD, iPod, and streaming—same song, new delivery system—accepting these changes without question. Few consider what’s required to deliver any new convenience, the complexities and complications beyond fabrication that include finding talent that can make this all happen: the underlying tech stack.

For the non-tech-savvy reader, the tech stack is a combination of different technologies designed to work together to accomplish a unified goal. Typically, each technology performs a specific function within the stack. Think of it as division of labor among a team of workers.

While there are different schools of thought on tech stack size and complexity, I’d like to offer my perspective on how and why keeping your tech stack smaller and more manageable produces better results in the long run.


Plan Ahead

More often than not, your project’s key stakeholders are asking for a solution rolled out, like, yesterday. We’ve all been there. That’s why it’s important to clearly communicate that shooting from the hip will cost the company more money in the long run. Choosing the right technology stack can ensure the extensibility of your project and add dollars to your profit margin—but to do so, you must often negotiate extra time to complete the following planning activities up front:

• Discover what end-users expect and how the project owner wants to provide that experience to them. Keep a list of questions that you can standardize and add to with future experience.

• Understand the product owner’s ultimate vision for the project. Creating short term solutions can get the job done, but you’ll incur considerable technical debt in the long run if future requirements aren’t correctly considered.

• During platform selection, thoroughly audit what any proposed new technology can do, how it will benefit the project, and how it will ultimately bring your project owner’s vision to fruition.

• Socialize the requirements, goals, and strategy with everyone on your team to make sure everyone understands their importance. Addressing any confusion up front can help avoid much larger issues moving forward.


Adopt Later

New technology is exciting, however, experienced developers know to give new platforms and languages time to prove themselves in the wild with smaller, more self-contained projects before integrating those elements into their larger projects. These folks know that sometimes projects lose steam and wither on the vine, as so many have in the past. If viability and high adoption happens, these technologies tend to experience fundamental changes, as Angular experienced between its first and second versions.

Reliable documentation, community forums, long-established product roadmaps with a schedule for when new versions will be made available—all hugely contribute to how likely a new technology is to integrate into the project. Without these, the likely longevity of that technology in your stack will be limited to how long your team is willing to work with it. The more difficult pieces in your stack, the more team frustrations will spread, creating a ripple effect that destroys morale.


Consider Talent

The moment you’ve been dreading has arrived: you need to replace or add people to your team. Finding the right person for the right price is always a challenge, for any position. But if you’ve adopted features based on a flavor-of-the-week technology throughout the course of your product life-cycle, finding that right-price person with the incredibly niched skillset to fit in your stack has increased the degree of difficulty tenfold. In the off chance that you find the skills, you’ll pay an arm and a leg to get them in the door (either because they know their value, or you’ve been working with a recruiter, or both).

Because the talent you are looking for must be specialized exactly for your needs, they will come at a premium. And if you can’t find this talent, you will have to hire someone with gaps in their knowledge, and spend money and company time getting them spun up and on the same page with the rest of your team. Those costs are never completely avoidable, but minimizing skill requirements is best.


Be Critical

In the agency space, it’s pretty common to jump from one project to another without taking time to reflect on completed projects. While this is sometimes unavoidable, taking the time to properly analyze the good and the bad experienced on a project is crucial for making internal pivots. Use these opportunities to refine and improve your processes and approaches to creative problem solving.

We take development seriously at Grafik. We have fun doing what we do, but we’re always looking for ways to improve our own processes and ultimately bring greater value to our clients. Remember to take care of your team, because at the end of the day you can rest assured that a well-cared for team will take greater care of your clients, contributing to your bottom line.

Matthew Lee Keith, Senior Director-Technology
Matthew Keith Senior Director, Technology

Related Articles

Google makes the rules. Here are the top 3 for 2020.
2019 was a big year for Google search. Google set into place multiple updates cementing its transformation from a mere search engine to a content curator for the modern user. Powering this shift is Google’s…
Read More
Counting down the clock to CCPA
The California Consumer Privacy Act (CCPA) is a new consumer protection law set to take effect January 1, 2020, with enforcement beginning July 1, 2020. This legislation loosely follows Europe’s General Data Protection Regulation (GDPR)…
Read More
The early adopter catches the competitive advantage
Think back on some of the most impactful digital marketing technology to hit the mainstream over the past two decades. Search engines. Customer relationship management tools. Twitter. Were you one of the first to join…
Read More
Weight loss for websites
One of my favorite quotes pertaining to development is very close to one of my favorite quotes pertaining to design: “The code you write makes you a programmer. The code you delete makes you a…
Read More