Diario del capitán, fecha estelar d638.y38/AB
We are about to kick off our seventh year of operations running MarsBased. Every year, we compile a blog post with all the learnings acquired in the past 12 months, to look back at everything we've done, but mostly to share with others what we wished we had known in our early days.
Previously, on the MarsBased blog…
Before we start, take a quick look at the previous editions of this post for further reference:
- 2015: Lessons Learnt: One Year Running Our Own Business
- 2016: We Don't Need a CEO (Lessons Learnt in Two Years Running a Development Consultancy)
- 2017: Three Years Running Our First Business: Lessons Learnt
- 2018: We Shot for the Stars and We Landed on Mars (Lessons Learnt in Our Fourth Year)
- 2019: Here's (Almost) Everything We Have Learnt in our First Five Years
No office? No problem
After six full years without an office, we simply can't envision our company having a physical space. Even though we've heard siren charms or companies and entities wanting to keep us closer, the truth is that we can only guarantee our quality and our long-term commitment by sticking to our core values.
The same way a non-remote company can't simply transition to being full-remote without a lot of work and sacrifices, we can't go the reverse way.
We have built a team of people who maybe can't work in an office. I know a few of them can, but some people just can't work in an office. Likewise, there are people who can only work in office environments, so in order to allow for a change of this nature, we would have to change the team.
However, six years in, we have built everything around us to work with the precision of a Swiss clock: tools, onboarding, culture, rituals and so on. All of these are built considering our full-remote nature.
Lesson learnt: We only invest in what is truly necessary to get our job done. This keeps us focused.
No investors? No problem
Being financially independent is truly a unique feeling. We admire and respect entrepreneurs who go through endless and exhausting fundraising rounds, but we simply don't want to do it, not because we don't need it, but because it's against our principles.
Our company has been profitable since day one, growing independently and organically up to where we are today: a team of fifteen people and a solid company culture around well-being and quality outcomes.
Not only do we not plan to raise any funds, but we also don't plan to sell the company. We have no exit strategy, and that's what helps us to plan for the long-term with our employees and with our clients.
Lesson learnt: Accumulating cash in the bank is useful when going through economic downturns. We have increased our reserves every year, and even though we've never had to use them, it feels safer knowing there's money in the bank in case of an emergency.
Changes take time to apply
Even though we've gotten a few Node.js projects, they came because we have a reputation of 5+ years in Angular, so we can't really attribute this dealflow to our promotion of this new service. We have also gotten a few projects in React, but they mostly came through recommendations, and the same happens with React Native.
As for the Tech Due Diligences, it took almost a year for that to generate the first lead. However, this needs to be taken with a pinch of salt: we don't do outbound marketing nor sales, so everything is either SEO-based or through word of mouth.
Lesson learnt: We started offering these because we wanted to try stuff and because there's demand, but when the demand came, we couldn't satisfy it. It feels a bit frustrating at times!
Losing big clients suck
Even if we have the financial muscle to withstand big client losses, the roadmap of the company changes completely. Last year, we lost our biggest client overnight. We first filled the gap with some buffered projects we had accumulated, and then with another big client (even bigger, now).
These new projects required different technologies and teams, and most of all they also had very different dynamics. Therefore, we had to adapt the company, and even though we didn't lose money with the change, we couldn't stabilise the company for a few months, trying to adapt to all the changes.
Lesson learnt: Contracts aren't anything but a mere formality. You should always assess the likelihood of losing each one of your clients on a regular basis.
No focus on side projects
Last year, we announced that we were working on a side project, our own product. However, losing our biggest client was a game-changer for us, and a big blow to this new project. We have been working on it here and there, but never with the amount of focus and care it deserved.
Side projects can only work in situations of extreme desperation (where you go all-in with the project) or in complete calm. Since we were in neither situation, it never took off.
Lesson learnt: Every project has got its moment. It's crucial to know when to invest in it and when to stop doing it.
Growth requires more management profiles
Even though we solve a lot of our daily situations with a strongly-defined company culture. There are so many calls you can take in a given day, or projects you can handle with detail.
Last year, we grew our internal team to 15 full-time employees - which added to our contractors - make for a total of twenty salaries. Consequently, the amount of projects - and their size - has grown as well, but our management team stayed the same.
We upgraded Oriol to be our Tech Lead, last year, so he could help us managing projects too, relieving him of his development tasks. We were losing an extremely talented developer, but we ended up gaining a surprisingly great technical project manager with it! Well worth it. Also, some other members of our team are gradually acquiring the project management skills by taking on these duties in smaller projects.
Lesson learnt: Investing in our own team has been a great move and definitely provided a motivation boost to more than one.
Friction with fixed bid projects
A couple of years ago we managed to turn all of our clients into time & material contracts (we bill by the hour). But in certain circumstances, mostly public administration, friends and non-profits, we have taken some fixed bid projects here and there to complement our ongoing contracts.
Fixed bid projects come with a lot of disadvantages for the providr, mostly, that I won't enumerate here, but one of them is the problem with the intermittent engagement. That is, you work for the first phase of the project, say 3 months, and then stop because the client wants to focus on something else. After a few weeks, or even months, the client comes back with something super urgent but all your developers are assigned to other projects. When this situation repeats over time, it creates a lot of friction.
No matter how much we emphasise this at the beginning of fixed bid projects, this always happens.
Lesson learnt: Don't do fixed bid projects, but if you really need to, pen down some conditions like the notice they should give you for requests outside of the contract.
Company culture is your best investment
We've really doubled down on company culture this year. We have redefined it - you can find it on our Employee Handbook - and we've written a few blog posts about it:
- How We Came Up With Our Company Culture
- Our Company Culture Helps Us to Hire Faster and Better. Here's How!
- Leading by Example: Transmitting Company Culture in Your Organisation
- Maintaining Company Culture in Remote Environments
These posts, and some talks I gave in the past, have allowed us to speak in events, podcasts and even in some of the biggest conferences in the country. We are a force to be reckoned with, when it comes to company culture and remote working!
Lesson learnt: You can never invest too much in company culture. It will always bring benefits.
Hiring slow to reduce mistakes
We have been strong advocates of slow hiring, which is something we define as hiring only the best profiles available, when they're available, provided you can give them the best possible onboarding without jeopardising other parts of your company. Most startups, or companies with high levels of attrition, can't do this, and they need to hire 5 or 10 people per month, or even per week!
Even if you automate and fine-tune all the process, you will still miss out on the best people. The best engineers don't want to undergo days and days of whiteboard-coding and extenuating selection processes.
Lesson learnt: Every new hire will rock your boat. Make sure you invest in a proper onboarding so everything stays in control.
Dealing with excessive dealflow
What a nice problem to have! This past year, we've had more dealflow than ever. People from all around the globe are recommending our services and we sometimes can't even trace where these recommendations come from.
We are still struggling (read, I am struggling, as the sales director of the company) with the feeling of declining opportunities just because you're at maximum capacity. We're forwarding them to other companies, to see if we can help them out. We don't want to hoard all the opportunities at the expense of our quality.
Lesson learnt: Choosing which projects you work on is as important as choosing which ones you won't work on.
Proactive communication prevents problems
Because we are a fully remote company, we invest a lot in communicating the right way. We like to communicate in a proactive manner, as clearly and concisely as possible and with the utmost transparency.
We're dealing with difficult situations here and there because of the nature of our projects, our clients, or even due to unforeseen circumstances like COVID-19 or a fundraising round being cancelled. All these tough situations can be prevented, or made easier to swallow, by adopting our approach.
Lesson learnt: Good communication prevents misalignments, sets expectations and provides a good way to solve problems.
We don't like the term employee retention. It sounds like you're keeping them against their will.
The truth is that our employees must like it a lot. The last person to quit the company was in September 2017. That's close to three years! How many companies can claim that? Actually, one of our first employees, David, just turned five into the company!
Lesson learnt: When you create the company you would like to work for, your employees will thank you for it.
Tapping new markets
We are a global company since its inception. We never set any boundaries to where our clients are located, and since 2014 we've got clients around the globe, mostly in the US and in Northern Europe.
We actively invest in the US, mostly through my regular visits to San Francisco.
Last year, I started spending one week per month in Madrid, in order to generate business there. However, since pretty much my first visit, we've been at full capacity, and we haven't been able to start working for any new client. It is worth mentioning that the opportunities we generated were smaller than the ones we usually get, and therefore we didn't deem it viable to hire extra people to satisfy them.
Lesson learnt: Make sure you've got the capacity to acquire new clients when launching a new sales/marketing campaign. It's harder when you're an agency working purely with time & materials contracts.
Invest in your brand
Some startups and early-stage companies leverage the power of other brands to bring attention/credibility/clients/community to them. That is true when you're a partner of AWS, Shopify or whatever. It is also true in the events realm: some companies organise franchised events of global brands like TEDx, Fuckup Nights or, in our case, Startup Grind.
While this is of immediate and justifiable benefit in the early years of your company, one should strive to break away financially from them. Having a strong dependence on any external company is always detrimental to growth and to the strategy of the company.
What's more, you're investing in their company more than you're investing in yours. To most of them, you're just another partner or provider. A name on a list, or a register on a database, but little more than that.
The best investment you can do is to emancipate from any strong dependencies and develop your own brand.
Lesson learnt: The value they give you when you're a young company is high, compared to what you give them. Later on, if your company grows, their value stays the same, while yours increases exponentially. Make sure they match it along the way.
What has helped us to get clients this past year
- Having developed a good SEO strategy since the early days. It compounds over time.
- Happy clients referring more clients.
- Working actively on developing a strong network and a pristine reputation in the market.
- Tapping different markets (in our case: San Francisco and Madrid).
- Organising the Startup Grind events.
What has not helped us to get clients this past year
- Belonging to organisations/clusters/associations/etc.
- Speaking at events or participating in any capacity.
- Referrals from other companies.
- Appearing in press.