Notorious mistakes we have made as a Software Services Company

3.5 years as a company. Short period of time but with many lessons learned to share. We didn’t have any formal support to handle unexpected and hard situations along the way.

Now that we have lived those, here is a list of the most important situations to share with the world, hoping that any services company in the same field can take them as a valuable input in case they are starting. 

The most hardcore mistakes we have made as a Tech Services Company are:

1. Not charging the right price for our work and effort.

What’s the price for a piece of software? What’s the value of that software being executed in the right context by the right team? What’s the cost of not implementing properly software? And what’s the value of good software for those companies that have had problems deploying good software on the past?

All the considerations to build, deploy and maintain software the right way certainly have value. All procedures around recruiting, hiring, retaining and motivating (also perks and incentives) the right team for the right software have a value. The company culture embedded within the processes, practices and conversations to build the right product has a value. 

Being a small team of engineers and designers matters. It is the very first step on building a culture, a service, and then, a company. If somebody is looking for a team capable of building software, that means he wants to win against time, effort and strategy on building a team; he needs execution. The execution capabilities you and your team are developing are part of that value. 

You are not a freelancer. You are a team, with such a value for your clients that needs to be charged the right way.

2. Working without contracts, both with clients and providers.

One of the worst things you can do is evading formality in a business relationship and not signing a contract. 

A contract is just an artefact to develop confidence between the parties. It doesn’t mean you are going to bring attorneys to every conversation about the relationship itself. Having a contract where all parties agree on the terms keep sanity and develop confidence in a faster way. Also, it gives you a back-up for any anomaly or irregularity that could happen on the future. 

It doesn’t matter how small or big are the parties. Encourage the signature of a contract, preferably a contract proposed by the one providing the service. We have faced problems where some company bigger than ourselves asking for our services try to impose a contract. The reality is that makes more sense if X is asking for the services of Y, Y proposes a contract because Y is the one providing the service. 

3. Not building our culture since the very first day.

Values, rituals and a manifesto to accomplish mission and achieve vision. The way you recruit, the way you talk to the world, the way they see you as a company, everything happening around a business relies on the culture they defend and promote. Normally when you start, you forget thinking about the basic elements of a culture, but once you want to grow and scale your team and your value, you realize the culture is the backbone of your entire business

Competing with big companies for the right talent is not a winning battle because of the money they can offer, but by the culture and the vision you can share with others. 

Remember: the 10 first employees define your company culture and you should feed them with only 2 pizzas.

4. Agreeing on equity and working for early stage bootstrapped startups.

Many of this cases were from first-time entrepreneurs. Nevertheless when someone wants to share equity with our company before starting a project is a sign of a low quality lead. Problems like lack of investment, validation and fear of taking risks are the examples we can see when the negotiations have this initial proposals. 

It is always exciting to hear new ideas flowing, see entrepreneurs’ enthusiasm and be part of a new vision looking to change an entire industry. There are many success cases of companies doing this, but the best scenario is when the founding team has a background building other companies, or the idea aligns in some way with your company’s vision and you feel is the right moment to build something like that. Otherwise, pass. When it comes to business, if you are going to provide value to any product or new business you need to assess risks in every term within the relationship.

Ironically, we are a bootstrapped company just as many others.

5. Working client products from scratch with all design made by third-parties. 

Other companies in the process will block our guarantees we offer. We have lived this on the past, and the difficult thing is helping the client realize that coordinating more entities and actors on the beginning of the product development is a real challenge, and most of the times doesn’t finish well. 

Delays on time or misunderstood features to name a few are possible situations. The less communication channels while building a product, the better is going to be the outcome.

6. Considering one region as the only target market.

We started in one region — our Headquarters country: Mexico. Many people started to contact us to build great software with them and change the way industries have worked for the past decades. This was part of the very first acquisition channels we had to get in touch with interesting leads, basically word of mouth and our network. 

But why staying just there? We received many similar needs from other clients around the world, and the interesting thing was to deal with the culture, language and diverse backgrounds from both sides. Thanks to our efforts in open source, and the connections from the company network, we started working with great clients around the world, discovering new both technical and business challenges. 

With the power of the Internet and many tools leveraging it, collaboration and software development can happen co-located and remotely.

7. Not having mentors since the first year of the company.

Mistakes can be advised. 

People with experience who have built teams, companies and visions are the right profile of the advisors you need to have behind you. Same situation with investors — you need people who become part of the team, not people demanding what they think it should be. 

Advisors only advise, and help you have more perspective and input once you need to take a decision.

8. Lacking a hiring procedure and clear profiles of the people we were needing.

This was something we noticed during the first years. Growing our team and the capabilities to detect great talent weren’t scalable. Even more, the way we were executing the talent evaluation wasn’t considering important elements from our culture. 

We ended up firing people who didn’t fit with the type of talent we believed were going to push the entire company achieve the vision. 

Right now we have stablished a 3 hours procedure for technical, creative and management roles, were the culture and values are the first thing we assess, introducing then an activity where we test the person in a real work environment. 

9. Focusing only on first-version products, rather than helping clients to keep building them

It wasn’t obvious, not only in terms of revenue but in terms of impact, that keeping long-term relationships with clients and partners, will be part of a trustworthy link that will enable the impact we wanted to see out there with the products and software we were going to build. 

Being part only of the initial development of an MVP, prototype or feature enhancements wasn’t going to help our clients nor our vision to be achieved. We have switched many of the conversations to start with an initial task to develop trust and confidence between ourselves, and then think long-term, looking forward to help them and have the impact they want to have as well. 

10. Rarely asked where was going to be the Software industry in 5 or 10 years from now.

This is a rhetoric question every company should be asking for their particular industries: where is our industry going to be in 5 years? what are we doing to see the industry at that point? what should we do to be part of that evolution?

Frequently asking this question — every year, quarter, month, even every day, allow us to be continuously aligned with user, clients and industry demands. Also, allow us to propose and create things that don’t exist in a way we imagine them to be existing in order to move forward the entire industry. 

Changing the answers as time passes is normal, but keeping that question as part of the mindset let us be part of the future we want to see.

For sure this list will grow, and mistakes won’t finish and it will be a good sign. 

Ending with all possible mistakes you can make as a company is ending with the capacity, willingness and vision to innovate. Making mistakes derives from trying things you never have done before, but if not taken the risk, who will take it?

What other lessons learned have your companies made in early stages? Let’s start an open conversation to benefit both sides from our experience.