Dustin Bruzenak has been in software development for 20 years. He’s worked at Adobe as a senior engineer, served major banks as a contract developer, and bootstrapped and sold an app-based company. However, for the past seven years, he’s been on the agency side of the industry, a side he finds distinctly troubling. “When I switched to the agency model,” he says, “I started to see how messed up software development could be.”
In a recent conversation, Dustin candidly elaborated on the shortcomings he’s witnessed in agency-based software development. Some of his insights stem from mistakes that he has made along the way as an agency leader; others are based on his observations on how other agencies operate. Source aside, here are five key takeaways from our conversation.
1. Dishonesty Regarding Costs
Most of the clients who approach digital product agencies are not experienced in software development; they don’t know what it takes to build a digital product, which is precisely why they seek out an agency’s support. Unfortunately, says Dustin, many of the agency experts they turn to dish out highly inaccurate estimates.
“The agency leaders want the work, and they feel they won’t get the work if they say what it will really cost,” he says. “So, they say the number that they think the client will go for.”
How far off are these estimates? Dustin says the differential can be astounding. “It’s like saying you can build a skyscraper for $100k,” he says. “Agencies put out low bids and get the work, but they put themselves in a position where their only option to get out of it alive financially is to cut corners.”
Not surprisingly, when agencies cut corners, they deliver insufficient products. In fact, many of the clients Modern Logic serves today have had this very experience. “We inherit a lot of work from other agencies,” says Dustin. “These agencies started out with good intentions, but they weren’t being honest about what it takes to build software.”
2. Skipping Strategy & Research
Dustin says that agencies operating on unrealistically low budgets cannot provide clients with strategic or research-based support. For example, an agency operating off of a thin contract won’t help clients firm up the business case behind a product, nor will they research competitor offerings or alternative technologies. It’s not that the agencies are lazy; it’s that they are trying to stay in the black.
“Agencies today are competing on price, and they don’t feel they can be competitive if they charge for things like strategic work,” he says. “Some say they’ll get involved with strategy, but because they end up eating the costs if they do, it limits the time they can realistically put into it.”
It’s a situation that ends up hurting clients the most, says Dustin. “Agencies build a lot of products,” he says. “That depth of experience makes them one of the client’s best sources for strategic information. But if clients can’t leverage that information, if the agency’s experience and wisdom can’t be applied before code is written, clients miss out and spend more.”
3. Building Too Much
Though Dustin is passionate about bringing agency issues to light, he acknowledges that some of the software industry’s problems occur both inside and outside of agencies. One such issue is the propensity to overbuild—to build digital products with far more features than are actually necessary.
“The average app has 20 features,” Dustin says, “but the average user will only use two or three of them. About 80 percent of the features built in applications aren’t used.”
How does this happen? Dustin says that when products are overbuilt in the agency model, it often stems from the agency’s inclination to both appease clients and work from very specific contracts. “Clients naturally want everything,” he says, “and agencies want hyper-specific contracts so that when the scope of the project changes down the road, which it will, they can charge for those changes and cover their costs.”
The combined effect, says Dustin, is that clients end up providing expansive wish lists early on with all the features they want, and then the agency goes out and builds exactly what is on that list—even if many of the features are frivolous.
4. Engaging End Users Too Late
One way to combat the overbuilding problem in digital product development, says Dustin, is to incorporate user testing early in the process. In other words, getting a minimal version of a product in the hands of users early and often helps agencies and clients learn which features should be invested in and which should not. Unfortunately, agencies have been slow to adopt user testing, Dustin says, in part because clients are often skeptical of the process.
“Clients hesitate when it comes to early testing,” he says. “They don’t want to reveal their ideas too early. They’re afraid a competitor will hear about it and jump out in front. They also feel like they already know what their end users need, so why should they pay for testing?”
Despite these client objections, Dustin believes in user testing’s value in software development. He says that, although user testing can be harder to sell to clients than, say, an additional feature, it ends up saving them a great deal of money in the long run. “Our job is to help clients be successful,” he says, “and to be successful, they have to invest in solutions to problems that users actually have.”
5. Taking Orders Instead of Asking Why
Just as overbuilding plagues software development inside and outside of agencies, so too does the strange belief that developers should be told what to build, not why.
“I’ve been on dozens of projects over the years,” says Dustin, “where no one could tell me why we were building what we were being told to build. I’d ask, then someone would tell me to ‘just go build it.’”
Unfortunately, this “just go build it” mentality is common in today’s digital product agencies, says Dustin, in part because “the agency doesn’t need to know the business case behind a product in order to bill hundreds of hours for its development.”
But when agencies don’t understand the why behind a product, they cannot do their best work, says Dustin. “If you don’t understand why you’re building what you’re building, you can’t apply your understanding of technology to the real business need behind the product, the real problem that needs solving,” he says. “If you don’t see the big picture, your hands are tied.”