When I was a young lad studying Computer Engineering and Computer Science my professors would often talk about skills we would need as CTO’s. At that time I never really thought about becoming a CTO, I wanted to work in Sales or Marketing, something exciting where I was traveling the world and closing deals. So I did that and after nine years of working in sales for digital music startup Sonos, I made the leap and now find myself as a full-time startup CTO.
It has been a very satisfying change, both refreshing and challenging, humbling at times and still many more lessons to come. That being said, as many of you know, I’m one reflective guy so I thought I’d share five things I’ve learned about being a CTO in the last nine months.
- You need to live in the future – when I used to do small web projects I could live in the now, in a startup you need to live in the future. A small 20 – 100 page minisite is probably never going to have millions of visitors, as a startup you have to plan on millions maybe even tens of millions of visitors, and build your platform and infrastructure to scale. While before I looked at shared hosting as a starting point and a VPS as a way to scale, now I look at elastic clouds and load balancers.
- Quality code matters – my comp sci professors used to always emphasize the importance of writing clean code, back then I was more focused on getting code to work than writing beautiful code. Then again, since back then the code I was writing was for individual assignments it really didn’t matter since I was the only one that would be reading my code. As a CTO you have to think about how to write code and build a framework that another developer, or two, or twenty can work with as easily as possible. Your team should spend time innovating not trying to figure out what all your sloppy code does.
- Learn from others – this is my first time as a CTO and I know I have a lot to learn, so I’ve done my best to connect up with CTO’s that have more experience than myself to learn from them. I joined a group in LA for full time CTO’s of funded startups and have been learning a lot so far. I also read just about every article I can find on Hacker News or TechCrunch written from a CTO’s perspective, it takes a bit of re-wiring and I’m still learning where to connect the red and blue wires.
- Sometimes what you want doesn’t exist…yet – back in school, every assignment we were given was possible, there was a known solution out there, when you’re building your own software sometimes you want to do something that hasn’t been done before. There are no reference manuals, no “How To” guides, it’s just you and that blinking cursor on your screen. This has been the most terrifying and exciting part of the role and I’m loving every challenge.
- Finding good developers is incredibly hard – Facebook and Google and many other companies are constantly hiring the best developers on the planet. This means that startups are all vying for a smaller pool of developers which consists of some ace developers that don’t want to work in a big company, and those that didn’t make the cut because frankly, they’re just not very good. I don’t mean to be harsh here but it’s true and it’s a challenge that every startup faces. There are plenty of people that know how to code, but only a fraction of those are great developers and good development talent is critical to the success of a company.
Last but not least it’s important to remember that all the startup advice you read is wrong, but you should read it anyways. Evan Williams did a great post about this on Medium and makes a great point about startup advice:
Even in a case where someone comes up with a truly great idea that improves the odds for many, many situations, it may be wrong for you. Your company is different. They all are. There are good ideas that apply to most companies, but I can’t think of any interesting ideas that apply to all companies. (All The Startup Advice You Read Is Wrong, Evan Williams, Medium.com)
What I have learned in my first nine months as a CTO might be completely different from what someone else has learned, still we can all learn from each other. As with most things in life, it’s all about dissecting what applies to you and what doesn’t. Thanks for reading!