The Easy Button. We all want one.
If we could turn all of the complex things in our lives into Easy Buttons, it'd be smooth sailing. After all, the decision to do something is the hard part. So shouldn't what comes next be easy?
Ah, but life isn't like that. And neither is website development.
Building the backend functions of your website requires a solid understanding of your business, clear goals and a balanced approach to deciding what to build and what not to.
How do you prioritize your backend development efforts when your team gets a request to make that complicated feature into something simple for users?
Nothing Worth Something is Easy
The Easy Button is easy to press, but it takes some skill to build one. Websites are no different. They are somewhat easy to view once complete, but skills are required to build them.
While it might be true that a plumber can build a website in one evening in his underwear, a high-performance website requires a deeper understanding of the technical aspects of it all: web servers, databases, browsers, Internet infrastructure, and other core pieces to deliver your brand online.
That's why when I hear people outside the dev team within a company asking them to quickly add a new feature to the site because "it should be simple," I know they don't understand everything that goes into it.
So if you're part of a web dev team or you manage the priorities of that team, your job is to understand the complexity of tasks before saying yes to them and knowing how long they are going to take before you commit.
Make Hard Tasks Simpler Over Time
The cost to make complicated concepts in web development into a simple end product or feature is usually high, and may be more than you think in terms of resources and dollars to complete.
But over time, the complicated concepts can become simpler to develop. Look at how your team will bear the burden of these web development requests initially.
If you have a backend process that needs 10 hours of attention from a senior person every week, you may be able to automate portions of that where a more junior person in your company can accomplish the task in two hours a week.
On another note, your company may only have a few senior folks on hand, and a small army of junior personnel. Automating this task will have two benefits:
- It will cost less do to who can now do the work.
- You will gain redundancy because more people can accomplish the task.
Once the process is repeated often enough, complicated tasks will be simplified so that anyone on the team can do it.
For Tough Requests, Start with "No"
I like to remind myself that when I say "yes" to something, I'm saying "no" to seven other things. What we say "no" to defines us.
The work to simplify a complex task in web development requires tough decisions. I believe those decisions start with "no".
- A "no" makes features earn the right to be included.
- A "no" makes us look at every angle before we act.
- A "no" makes our backend simple and effective.
Finding a balance on your web projects is the trick. Before you engage your web dev team on a complicated task, ask yourself these six questions:
- What is the cost of doing nothing?
- If we are going to invest the time and money to do this, are there other things we should do first? In other words, is this really our top priority?
- Who will use the new, simplified solution?
- What steps are we are automating, can we remove a step?
- How long will it take to automate them?
- Where will the payback come from, and will the effort be worth the investment?
Answers to these questions should reveal the right decision.
New feature requests that are seemingly simple to others in the company can add layers of complexity to your team's workload. So, before we ask our development team to "make this easy," let's first make sure we're prioritizing based on the goals of the site, the brand and the effort required to do so.