At the beginning of your company, you are a programmer. You are the founder who will turn a business idea into a real product. You dream of having thousands of customers, creating something that people actually use. You’ll work into the night to make the magic work.
Then your business grows, daily activities start to change, and you need to continue to scale with the business and evolve your role. In this post, I intend to talk about some of these assignments and I’ll show you what I’ve learned about changing my job over the past three and a half years.
In the beginning you do all the development: work full time on the product, probably define the scope of functionality in forums with other founders – and deploy it.
In growth, its concern will be to ensure that the development process is running in a scalable way, which, in practice, means prioritizing the backlog, benchmarking and studies, creating MVFs (minimum viable features) , defining the scope of the solution, developing with agile practices, select clients for the alpha version and launch.
You must be concerned with this cadence, ensure that each phase of the process evolves and that everyone is learning from past mistakes.
Here are some examples:
- When defining the scope of a solution, also understand how to scale the operating cost;
- Ensure that during the benchmarking phase there are processes to talk to customers and gather data (and not just personal opinion);
- Have tools and processes so that the development is done with a high level of quality (a subject for a next post);
- Also evaluate the system performance in alpha tests with real data;
- Ensuring that releases are communicated correctly, as well as creating materials for internal and external customers.
One of the most valuable things about a technology company is the team. During growth you will need to expand your team and you will need to find the best.
You’re likely to spend a good deal of your time recruiting – and you should.
I have two recommendations:
- You, as a good product and tech guy, speak the language of devs, designers and POs. Know the motivations and style of these people. You are one of them: you have all the gadgets, you understand new technologies, you have an account on Github, you register with all startup services, you know the correct way to develop software, you like pizza and beer. You will always be better off meeting these people than someone who is not from the field. Internalize this search in your product/technology area. Do not transfer this responsibility to HR: use it as support. Devise a strategy to find and attract them, create processes with tests and interviews with the technical team (we’ll talk about this in a next post) and make it all go round.
- At this stage of the company, get in touch with everyone. Be sure to interview and get to know the candidates. This item is very important because the company’s culture is formed by people and a relentless pursuit of their values - and you need to ensure that this happens. As the volume of applicants increases and the process becomes more structured, you will be at the final stage of the interview process, but never stop talking to people. Even being in this last phase, until today, when I see a candidate with a lot of potential, I anticipate the conversation so as not to lose anyone. Only you know what you’re looking for and you also know when you find it.
While the company has few people, it is easy to talk daily and maintain alignment. As it grows, it becomes more and more difficult to have the same proximity.
We all have problems, good and bad days, motivations, ambitions. We have a cost of living, style, family, friends, children and even pets. The fact is that each of these things can “create problems” and, as a result, can impact your day. As a manager, you absorb these details from people. There will come a time when you will be a kind of psychologist. You will spend some of your time worrying and solving people’s problems – or trying to minimize them.
Perhaps this is one of the most complex parts of growing up. You need to understand each person on your team, in addition to analyzing and aligning a way to make your expectations viable. Constantly. It takes a lot of communication, transparency and feedback.
There is a phase of the company when you are not too big to have several teams and not too small to have only one. This is the moment you break the team in two, even though it may not be complete at that point.
It’s your role to form new teams, form arrangements of people who complement each other and who will do tasks that challenge them – or ones they’re good at and enjoy. You need to understand who can lead a particular group to achieve the expected results. This leadership needs to be interested and have potential (organization, communication, respect, technical skills, etc). Coaching, at this point, is necessary.
You need to bring the strategic planning vision to the teams and make sure everyone is aligned, that they have a purpose. You need to understand when the team’s performance is bad, what’s going on and how to help them. Dedicate your time to transform these people into great athletes in order to form an elite team, just like the sports. Set clear goals, give tools, give freedom and trust your team.
It is your duty to manage the area’s budget and ensure the execution of the strategy. You need to understand the costs associated with people, cloud, workstations, consulting and more. You will also need to re-plan as scenarios change.
I recently spoke briefly about managing some costs involving Cloud services.
Our clients SuporTI, Smartbill and Project Builder have released an eBook and spreadsheet on planning your IT budget that might interest you too.
Its role is to seek levers to accelerate the company’s growth, connecting the dots. One of these levers is to partner with other companies and find ways to connect businesses.
Find companies with which it makes sense to develop some activity together, be it events to attract talent/marketing, product integrations to gain segmented markets or provide some solution that complements or brings other forms of revenue.
You need to use your time productively, so you need to select what to do and what brings the most leverage to your business. My recommendation is to stay tuned and available. Go to events, meet people, exchange ideas, have coffee. Sometimes no business comes out at that time, but you find other opportunities.
Eventually, larger companies will be attracted to your product and close robust contracts. Companies of this size will likely have internal systems and processes that will require some level of integration. They will need SLAs and differentiated support, they will need to understand how your company handles data security or the Roadmap of functionality that doesn’t yet exist.
Another case of complex sales is companies that are strategic for your business – be it product, expansion, market, technology, whatever.
You may be involved in any way in negotiations of this type. As a founder, you are already a seller by nature, but as the company scales, you won’t want to miss out on deals like this.
When people ask me what keeps me asleep, I always talk about the operation. One of my biggest fears as a CTO is experiencing massive problems, whether caused by some critical bug or unavailability of a third-party service, for example.
Today we have 1600 customers and we need to deliver our service with quality. It will always be a great responsibility to provide a Cloud service, as in many cases your customer’s business processes go through your company.
When the company is still at an early stage, there is no operation. You can walk faster. However, when it grows, it is necessary to structure a team and processes to be able to meet this new demand.
For that reason, the operation is one of the things I keep constantly on the radar. This year, we will multiply the base and we need to ensure that we serve these customers in an even better way than we do today.
It’s not wrong to do what you like. So there is nothing wrong with continuing to plan for this growth. A commercial director, when he has the opportunity, will continue to sell. So what sense does it make for you to completely distance yourself from what gives you pleasure and knowledge?
As stated, your time will be consumed by the other assignments above and obviously you need to exit the operation to be able to scale. As a result, you will likely have much less time to program and what you do will likely not have the same impact as multiple teams working. Even so, it is very important to keep doing it. You need to keep up to date and bring a vision of your company’s technological evolution. I mostly use my weekend for this – which turns into a mix of fun and study. I usually do exploratory testing and develop unplanned things.
It won’t be easy to climb and you’ll need to get out of daily operation for it. Understand your role constantly, analyze the stage your company is in and plan how to move to the next level. Once that’s done, find the best ones and create the structures to maintain this growth.