Being CTO of a Small Startup. Interview with Andreas Palsson, CTO at BetterWealth
Should a startup try to grow quickly? Or is it better to keep the team small? How do you select a candidate to hire? What technologies do you choose when you start building a new product?
Andreas Palsson, CTO at BetterWealth, a Swedish robo-advisor, talked with me about the role of CTO in a small startup. Andreas shared his experience of managing software development, facing challenges, and splitting time between business and technical issues.
BetterWealth was founded in 2016 with the goal to provide robo-advisory services directly to end investors as well as white-label services via third-party integrations with financial firms. The company provides extra features to their business clients. However, private investors also benefit from their sophisticated investment model and wide range of assets.
Challenges of the CTO
Share business and technical knowledge
BetterWealth has the following software team:
- A full-stack developer (Andreas himself)
- A front-end developer
- A cloud infrastructure engineer (“He’s not involved in the incoming issues or stuff that needs to be solved immediately and urgent, but he takes more of a long-term point of view of the product and the infrastructure.”)
- An investment model engineer
The team uses Slack for communication and Jira for task management. Andreas says that the Kanban methodology with weekly sprints works well for them.
On a weekly basis, the whole company has one-hour sessions during which they go through new features of the platform. This is a chance for everyone to get to know what’s being released, learn how it works, and anticipate what’s forthcoming.
Andreas says that one of the most important responsibilities of a CTO is to translate technology to the rest of the company:
“Everyone should understand what we are actually doing technically. The technology is not just some black box for the rest of the company, but they should follow what we are doing on the tech side. Changes don’t appear as surprises; they have time to prepare. They should also be aware if a potentially hazardous feature is being released, [that] something could potentially go wrong here, [that] we need to be careful and whatnot.”
That said, the development team needs business knowledge, too, but, Andreas doubts that developers need wealth management expertise from start. They should learn the specifics of the financial sector while they’re working on it.
“It’s important that you’re not working on the task that you are assigned without thinking about the broader concepts or what’s surrounding the thing that you are actually working on. No matter what domain you’re in, you should be interested in the domain; otherwise, you should probably not work here.”
According to Andreas, BetterWealth’s entire development team already has enough knowledge to ask their product manager specific questions and have discussions about tasks:
“When you start and you don’t have the domain knowledge, then it’s hard to question the one who sets the specs. But as soon as you build up knowledge, that is possible, and I think it’s also good that you have a good discussion on things.”
Leverage the rest of the company
Hiring software developers is a particularly tricky question for a small startup. Andreas believes that it’s crucial that a new person fits into the team. Another principal factor is having a broad technical understanding:
“Even if you only develop the front-end, you [need to] have some grasp on how the back-end works so you can think in those terms. It’s weird to have a back-end developer that doesn’t care enough about the front-end.”
Andreas considers that within a small team, personality and the ability to think broadly might be more even important than previous experience or education. However, Andreas isn’t in a rush to grow the BetterWealth team. He believes that if the technology team grows too quickly, they risk developing features that aren’t needed or haven’t been considered thoroughly.
“The team cannot be too small, because then, you cannot deliver anything, but I don’t think it’s a purpose in itself to just grow the dev team. I think it’s good for product management to have development a bit as a bottleneck because it requires them to prioritize way harder.”
Instead, Andreas prefers to leverage the rest of the company. He fosters close communication among his developers and customer-facing professionals to make sure the product can attract consumers and help the company move forward:
“Your job is to leverage others, both the other developers and the rest of the company so you don’t end up thinking that you should solve everything by just sitting and [writing] code, because that’s not really scalable. It’s not good to the rest of the company communication-wise.”
To make the most marketable product, the BetterWealth team gathers feedback from actual and potential users. The product team also provides market resource studies to track what other companies do. Andreas says that these studies help the company determine what they want to do and what they don’t.
To make the product reliable, the company uses various data sources. For example, they integrated their platform with some traditional Swedish finance services to manage transactions and authentication.
Pick technologies with care
Despite having limited resources, the CTO of an early-stage startup needs to use them wisely and rigorously. Andreas suggests focusing on things that are relevant today rather than things that might become relevant in a few years. This applies to all aspects of software development, particularly when choosing technologies or building the architecture.
“We have two mantras when choosing technologies. One is ‘You’re not Google.’ You don’t have ten-billion users right now. You need to build something that you [can] change so it scales, but currently, you just need to have the vision on how it’s supposed to do it. Apart from that [the other one], we try to pick technologies with care so we don’t end up in using something that looks really cool, but [then we’re the] only one using it.”
BetterWealth uses React for their front-end and Java and Spring for their back-end. For their cloud infrastructure, they use Kubernetes hosted on Google Cloud. In addition, the company has partially divided their architecture into microservices:
“It’s not taking the full-fold step into a real microservice architecture because the work we see on our current setup is to maintain more services, [so] it’s not worth the effort right now.”
How to do it all
For every CTO, time management of utmost importance. Andreas says that development matters don’t take as much time as business meetings, accounting, and other tasks related to the company do:
“There’s a lot of things you need to do in a company. For me, a really good strategy is to bulk up similar things. You don’t need to context switch more than necessary because that is the worst [way to] spend time. You can have a whole day of just context switching and [get] nothing done.”
The same principle applies to development. When Andreas is coding, he turns off all notifications and focuses on the task at hand. Although the company uses Jira for task management, Andreas says that to-do lists on paper work better for him:
“I think it works best, with actual traditional tasks, that I write on paper and post it somewhere. I have tried so many task management tools, but it doesn’t stick on me. I always fall back on the paper.”
When he gets stuck, Andreas often goes to Medium. Reading others’ experience inspires Andreas to collate multiple sources and create new approaches to company issues. He particularly likes the blog-post format of the platform:
“I love to have a quick read on something. Then, if I feel I need to read more, I can go out and find more information instead of spending […] too much on one topic.”