The Hidden Cost of Poor Development

Author: Ben B. 8/17/15

I’ve been doing contract development long enough to know what the market will pay for my services and skills.

That said, I’m still surprised by people who won’t. They choose to go with cheaper, less experienced developers or overseas developers because of the lower rate.

Let’s investigate (dear Watson) why a higher rate may be cheaper in the end. Let me know if you think any of these reasons are off base.

Your Time is Valuable Too

I’ve been meeting on a weekly basis with a couple entrepreneurs to share business concerns and get advice. This week, one of the entrepreneurs asked our thoughts about hiring an overseas contractor to develop his first website. Another entrepreneur, I’ll call him Bob, shared the story of his first site. “I was surprised by how much testing I had to do,” he said, “by the end of the project I’d lost all motivation to even go forward with the business because testing was so tedious.”

I know exactly what Bob meant, my first site was the same. I literally had to test every button, every link, every hover state, every requirement, everything! I was blown away by how much stuff was missed. Catching these little details was expensive. Not only did I waste my time, but I had to wait for a fix when I should have been more focused on the overall business.

Developers eventually get better at catching problems, and no developer is going to catch every bug and every missing link, but these should be the exceptions, not the rule.

Foundation is Important

When building a house, you start with the foundation, add walls, and top it with a roof. When building a website, you start with the technology you’ll use (Node.js or Laravel backend, Angular front-end, SCSS, Grunt, etc.) then you build the overall architecture (folder organization, routes, etc.), and then you start adding the pages, snippets, plugins, etc.

Although it is a good practice to keep code independent of other code, a good foundation coupled with building reusable code snippets, directives, and plugins makes it easy to add functionality through the whole site without copying and pasting. This means fewer lines of code, which are usually cheaper to write and always cheaper to maintain.

A great example of code building on itself is CSS. A developer implements the design of the overall site (header, footer, H1 tags, etc.) that is reused everywhere. When you add styles to a specific page, you don’t have to re-design the header and footer, the page inherits the overall site styles and allows the developer to just tweak the design based on a page’s need. If the CSS foundation is weak, you’ll find that you have to add a lot of styles to a page that should have been added at the site level. More code, more money. Also, a future developer may want to go back and tweak the site level styles to save time in the futrue, but this is costly because every tweak to the overall styles means they have to test the whole site for bugs.

All too often, businesses neglect the importance and value of setting a good foundation. They’ll bring in a cheap developer at the beginning thinking they’re getting value. Later, when the site isn’t performing or is cost prohibitive to update, they’ll bring in a more experienced developer who usually calls for a re-write.

Lost in Translation

The #1 reason to work with someone who speaks native English is that code is hard enough to communicate without a language barrier.

I had a potential client reach out to me recently, I’ll call his company GameChanger. They had worked with a developer in Vietnam for a very low rate (about 1/9th my current rate) but they decided to find a local resource. Why? Because they had been loosing a lot of time and money in translation. In other words, GameChanger would ask for a change, the developer made the change thinking they understood, GameChanger would review the change only to find out the developer didn’t understand. Not only did the developer waste valuable time and money doing something they shouldn’t have, GameChanger wasted time communicating the change and reviewing it. Then, the launch date get’s pushed back and more money is lost.

This must happen more than you’d expect because I’ve had the same exact experience multiple times. Cheaper is sometimes more expensive.

Debugging is Hard

Sometimes things just don’t work like they should. What is worse is that many times broken code doesn’t explain itself. There is no substitute for experience. Books won’t help you because no one writes books about bugs; they just fix them, if you’re lucky. If you’re unlucky, you fix them yourself.

I remember in the early days of coding that debugging would sometimes take more time building. With experience, however, I’ve become exponentially better at finding the source of the problem. Killing bugs take both a solid foundation of the fundamentals of a language and real-world experience hunting them down.

You’d be surprised how much a trained bug killer can save you.

Half the Price vs. Twice as Fast

In the world of development, time really is money. With an hourly contract, which I highly recommend, the important question is, would you be better off with half the price or twice as fast? Think about that, which is better? They seem to be the same until you realize that fast also means less bugs, a better foundation, better communication, and faster debugging.

The learning curve for becoming a seasoned developer is slow but exponential. In the begining, we spend a lot of time just getting the basics of a language. The first time we write a function takes a surprising amount of time due to stupid mistakes. Stupid mistakes are the most challenging because no one writes about them; they’re too obvious to everyone but beginners. Soon functions become second nature and we start learning about objects. Later, we move into learning different libraries, frameworks, and packages. Many of the things we learn span the whole language and development in general.

It may take as much as 10 times as long to do something the first time as it does to repeat it; typically it’s about 3 in my experience. After years of experience, I’ve seen things take me 1/50th of the time it did in the beginning and the curve keeps going. In other words, an experienced developer can provide about 3X the value of a beginner and sometimes as much as 50X.

Again, sometimes a higher price is less expensive.

Conclusion

It is natural to want the most value when choosing anything, particularly a developer. Just keep in mind the counter intuitive truth that a lower rate doesn’t necessarily mean more value.

About The Author

Ben currently works as a senior developer and technical business consultant outside of Boulder, Colorado.

More about this author

About Buink

Buink Web Development is a website development company founded in 2009. Although we still focus on web development, we now offer digital marketing services, web design, local SEO services, ecommerce website design, and custom logo design

Our value proposition: Buink can help you unleash the power of the internet and help your business scale with superior quality code at a competitive price and in a transparent, honest way. 

Read more about Buink

Cycle S.
Cycle S.
1709262820
Buink generously helped us optimize our Google Ads for an upcoming community event. He expertly walked us through our dashboard making precise recommendations that helped us launch a successful campaign. Google Ads were much more difficult to get going than we anticipated, so we were very grateful... for the advice.read more
Dave G.
Dave G.
1691935511
Buink is a great place to work, as well as a great place to have quality software written. I originally contracted Buink for some web development, and it worked out so well we began working together on many different projects. Definitely an honest transparent company that needs to be considered for... your software needs.read more
Dru M.
Dru M.
1616686900
Ben’s a super responsive, thoughtful, sharp and all around great guy to work with. Excellent with his trade. I’d recommend him to anyone. Thanks Ben!
Craig A.
Craig A.
1560891037
It was a pleasure to work with Ben and his team. It is rare to find such attention to high standards of coding and devops.
Lexi S.
Lexi S.
1560872174
Grateful to have Ben and his team as such a capable, reliable partner for completing client work!
Tom S.
Tom S.
1560518288
I reached out to Buink after finding Ben’s name in a local developer/consultant listing in 2017, and I have to say, it has been an absolute pleasure to work with Buink. Ben consistently understands not just the development task laid in front of him but the business application behind the task. I’ve... never felt more comfortable with a development team than I do with Buink. I truly feel Ben and his team are integral partners in the success of my business.read more
Marilyn F.
Marilyn F.
1557787674
I could not recommend Buink Web Development more highly. Ben and his team have recently developed a budgeting app for me (both web and IOS). I have had the opportunity of working with them for over a year and I am extremely happy with the results.I would say that the biggest plus for me is that I... trust Ben completely. From the very first, Ben has helped me make decisions that were in the best interest of my company. I have never felt like he is taking advantage of me. Ben does his best to keep the whole process very open and upfront. I have really appreciated that.I tell people all the time that I love my developers. And I do. I'm very happy that I chose to use Buink to develop my apps. It was the best business decision I could have made.If you are looking for someone to develop a website or app, I strongly suggest choosing Buink Web Development. They are fantastic!Marilyn Ference, President, Defend Your Money, LLCread more
James Landon B.
James Landon B.
1535420033
Great company to help with all your web design needs!
Next Reviews
js_loader

Connect with Buink

Connect with Buink via email, send us a message, or subscribe to our blog.