Follow Us


1550 Wewatta St Suite 200.

Denver, CO 80202


Email: info@goddit.io


Tel: 720-725-0997


Business Software Startup Advice: If you don't take the time to design it the right way...

Marcin Ziolkowski • Aug 23, 2022

.. you could be looking at a do-over.

Choosing the right business software design team can be one of the essential factors in your startup's success. Getting the right people to build the right design early on is critical, or you might have to do it all over. Whether you outsourced or built it in-house, that could be a fatal outcome.

 

This article will give you fresh advice and tips to avoid strategic errors. These are perfect for a startup founder or an already successful entity ready to throttle up a product design after your third round of funding approval.

 

When to cut your losses with growing Technical Debt 

One example of Technical Debt is when software code is poorly written, and your team must rebuild it. Another example is when code development begins before a design architecture is decided. Make the wrong choices on either, and you take on too much technical debt that can sink your company or stagnate feature development to the point that your customers leave for the competition.


Technical debt is a beast that causes a loss of focus at all levels and can lead to all development halting to a stop. Avoid these pitfalls so your company can pivot when it needs to.

 

The first casualty is lost opportunity costs for your small business. When you try to fix the technical debt because you did not take the time to build your software the right way, you don't develop new products/features, period. Higher engineering costs hurt profits, and your investors will get irritated. You like to sleep at night like most people, don't you?


Software developers hate poor code causing turnover in your engineering team.


Poorly planned initial software design translates into wrong code. It slows down your organization. And if you're outsourcing work, it means that within the 3rd party vendor you contracted with, you will work with a new developer on every project.



What processes will ensure your company prevents a software do-over?


  1. You need good communication with your lead engineer/project manager in almost day-to-day contact.
  2. Insist that your Development Team (devs) ask many questions about your business. Your company might find this irritating because Devs keep asking you questions. It seems they don't want to write code at all and want to talk with you instead. But communication is a good thing. If your Devs are not asking you questions and getting deep into your business, that is a big red flag.
  3. Design your software for future capacity to pivot to new market opportunities.


Engineers should be interested in your business so much that the code they write solves your business's actual problems and gives you the future capacity to adjust to changes inyour industry.


Some startups wrongly choose software developers instead of designers.


It happens when a company stakeholder writes, for example, a five-page description of precisely what they want the software product to produce. Acting on this mission, they decide to outsource it to a pure software Dev shop that tells them, "Yes, we can build this in two to four months!"


And you send them off on their way to build it. Since this dev shop likes to make only code and does not like to ask questions, the product you see in two to four months could be a real disappointment.



They didn't ask us any questions about traffic estimates.


Pure code developers tend not to ask clients any questions about traffic estimates. Recently my development team was fixing a client's version 1.0 built by previous devs who took 26 hours to run a single process, whereas it should have only taken 1 to 2 hours.


The cause? The devs didn't bother to ask how much data the system would process. They chose a single non-scalable Docker container instance iterating through data in a single foreach loop. Designing it serverless would have been better for the client.


We changed it to AWS Lambda, which scales up to 70x instances daily within a few minutes. We fixed the problem, but this client paid twice for the same thing because the previous contractor's first solution did not work at all when completed.


Some companies are willing to live with Technical Debt.

a. "The Hack" -- everybody is aware in the company that the solution will not work, for example, if the customer base exceeds
100 000. But everybody agrees that certain parts of the system will need replacement.


A better alternative is that the design architecture prepares for it from day one. Then running a company is not a hassle in year 2 or 3. You change some parts, not the whole thing.

 

A word of caution: Developers usually do not like "Hack" solutions even though the situation may call for it. It is hard for engineers to devise a temporary solution that needs the core engine replaced. You risk having a year's worth of downtime.


One example of saving operational costs and engineering overhead is to avoid the need for microservices from the beginning. It's better to choose a monolithic system but structure the code so that you plan to extract modules into separate systems when the traffic is high enough. You still work with GCP or AWS, of course. You know which cloud services you will use when the company scales.


b. "The Mini-Hack" -- Let's say you cut some corners but not very many. After the initial version of your software build, you operate it by developing 90% of new features and 10% to fixing known tech debt. This keeps your software lean.


It's okay to do "The Mini-Hack" for a period, but again, business stakeholders should be aware that the day of reckoning to pay for this will come sooner than later. Sometimes it makes sense to do "The Mini-Hack" to grow fast.


When to build your software well engineered from the start
 

A startup's reality is that you rarely get the budget to do it the whole right way from the beginning. The only exception here will be if your product IS the technology itself. When your clients are the engineering community. It needs to be bulletproof from day one.

 

When your software is bulletproof

Your company feels more in control when your development team properly explains the process and how it's built. Working daily with a proficient full stack development team will grow your company's engineering instincts by association. A business owner learns what is hard/medium/easy to develop without always talking to engineers allowing for faster decision-making.

 

So, when will you have the time to build it over?

When you build your software development the right way the first time, you make a conscious choice to save money, time, and maybe even your business. Design first before you develop. Choose a team that asks many questions and communicates closely along the way. And allow your software to serve with extra capacity, enabling you to take advantage of market opportunities. You got this.

 

Marcin Ziolkowski writes about business software development strategies for early-stage companies. He also founded Goddit LLC.  Based in Denver, Colorado, the company is a burst tech dev, full-stack software development team.

Gourmet food serving
By Marcin Ziolkowski 01 Nov, 2022
With Twitter layoffs can smaller tech companies like yours pluck one of those super-intelligent software engineers from the big tech companies? You smell opportunity in quickly changing conditions.
By Marcin Ziolkowski 19 Oct, 2022
Your great startup CTO gave their notice today, and you're wondering what to do next. It stings because you suddenly hear that they are no longer interested in the company and want to pursue new challenges. What happened? Your business was booming, so why is your chief engineer no longer interested in working on your projects? Depending on what stage of growth your business is in, this could be a terrible thing or a good opportunity to make a better choice. I will give you new insights into the technology personality types so that your next hire in this area is a better fit. Hiring a new Chief Technology Officer is a big deal because if you hire one with competencies that do not match the stage your business needs most now, you have bought real trouble for your company. Let's keep you out of trouble and help you hire a CTO that gets your tech stack to the next power stage. I have more than a bit of experience in this area of connecting the right people to get tech projects out the door, under budget, and fast to market. I also have scars that came from my experiences in building dozens of systems, hundreds of system integrations, and several mobile apps. It is challenging to make daily decisions about how to create the right product vs. how to build the product right.
By Marcin Ziolkowski 04 Oct, 2022
The future is here with exciting new low-code and no-code software development platforms that save companies time and money. Ok, this may not be exciting to you from a development standpoint, as it is for me, but I know everyone loves to save a boatload of money when they can. I will crawl into the details of where we are seeing and using low-code and no-code tools for client software projects, and if you are a founder or CTO, how you can take your project to market faster. Low-Code and No-Code tools have been around for a while. Content Management Systems- (CMS) have been present for about 20 years . They have evolved thanks to solutions like Wix , which incorporated all the functionalities of a website: Used for quick content changes and blog posting. Creation of SSL certificates (encrypted secure web connections). Setting up analytics and tag management scripts for tracking. Updating DNS entries (a human-friendly name to a DNS server) and changing name servers.
Eggs in a carton
By Marcin Ziolkowski 20 Sep, 2022
Most startups and scaling businesses do not know that software code can get stale and moldy, expiring like a loaf of bread. And when you are taking the most critical steps to prove the viability of your MVP and build it as fast as possible, it can derail your path to market. You likely have used 20% of your effective software lifespan already. If you are one of the founders happily developing your MVP for six or… sometimes even 12 months – think again. How many customers did you sign up for your product at that time? Most likely, you have used 20% of your effective software lifespan. Software code has an average effective lifespan of 5 years. That's right, as a rule of thumb, based on my experience, software code has an average effective lifespan of 5 years. At the five-year mark, your competitors can reproduce 100% of the product you have already built. They can do more with your product than you could use five times the technology power at a fraction of the cost. After five years, if you cannot capture the market share you had intended, your competition will have surpassed you because of technology. For example, AWS has been consistently lowering the prices of its computing platform. GO, and Rust is becoming more popular within their space.
By Marcin Ziolkowski 06 Sep, 2022
If you are currently working with a software development team or are in the process of choosing one, then there are seven tips here that will help you avoid trouble. I want to save you from unnecessary pain with project advice born out of direct experience managing and executing software projects for all types of companies. Let’s demystify software development projects right here and now and help you identify the seven tells. What is a tell? If you play the card game of poker, you know that other players can give you “tells” about their hand strength and confidence based on tiny ways they behave. It is true in your business with development software projects. Some are subtle, but I know what to look for. Tell #1 – Development team needs more time. You believe you are getting the exact thing you ordered initially, and suddenly the development team says they need additional time. What’s weird about this is that nothing has changed from your business side or what you told them you wanted. Most likely, the developer changed what they needed, which delayed the project because they did not ask you enough questions about your business at the beginning. It is a big red flag if your software design/development team is not crawling deep into your business with frequent questions. It happens more than it should.
Orange classic car with V8 engine
By Marcin Ziolkowski 16 Aug, 2022
This is a story about Gustav and Hugo, co-founders of a MarTech startup called Bruno.ai , who were recently interviewed by Marcin Ziolkowski, CEO of Goddit. Background Story : These founders have been in the marketing and SEO business for several years. In 2020 they had an idea that they wanted to build the easiest and simplest Ranktracker, a business software. Marcin: Can you explain who or what a Ranktracker is? Gustav : Sure. Let’s say I want my eCommerce site selling shoes to rank higher in search engine results for the phrases ‘sneakers’ or ‘football cleats.’ Ranktracker is software that constantly checks how good your website ranks for specific keywords and informs you daily if you gain or lose a position. Marcin: Have you ever built a software product before? Gustav: No, never. This was our first time. Our customers love our services, and we thought we have deep enough expertise within the industry to create something unique in the marketing software scene. We thought - how hard can it be to build software since we’ve learnt so much, right? Marcin: How did you approach this challenge? Gustav : We reached out to an offshore software agency with an idea. We had a couple of meetings. We felt we connected with the team on a personal level. We presented the idea. We received a fixed quote for the whole project. It looked really good. I thought that if we could build this tool on this budget, it’s going to be a space rocket. Marcin : How did you evaluate the talent of your software team? Gustav: They said they could do it, and we believed them. That’s it. Hugo: We thought we could make software excellent and cheap. It’s a trap. Gustav: Yes, we were very naive. Marcin: How did the project go? Hugo: Initially, it went pretty well. The team was delivering constant updates. Problems started to occur when the team blew their original deadline, which was estimated to take three calendar months. Gustav: We started to suspect that it would end badly after they blew their 3rd deadline.
Boules in a ring
By Marcin Ziolkowski 25 Jul, 2022
Background Story : Niklas Lundgren is the Chief Technology Officer of Boulebar , a French-originating boutique chain of restaurants that also happens to be a 21st-century cutting-edge cloud-first company. Their Company needed help with optimizing its cloud computing costs and recently met for a chat with Marcin Ziolkowski, CEO of Goddit.io. Marcin: Thanks for taking the time to talk more about what is happening at Boulebar, you guys are fast-moving, and it is fun to see what you are currently working on. Marcin: You’re using the public cloud, right? Niklas: That is correct. We have been one of the early adopters of cloud computing and moved all our core reservation and invoicing systems to Microsoft Azure long ago. We experienced considerable efficiency gains. We have 80 employees in the low season and up to 200 in the summer. I am the only technical person within the organization. I manage it from a software perspective with the help of a handful of consultants. Marcin: Your software has been running on Azure for years. Why did you reach out to us? Niklas: The problem was the cost. Initially, the public cloud cost seemed low, but as the company grew and services expanded, Azure kept rising prices for its services. The charges have recently been increased to unsustainable levels. When we started the cost optimization project, we had an annual rate of $50 000 per year for their service.
Share by: