I once overheard someone say that CTO's in the 10 person office are like petty king's. Make of that what you will, but titles do tend to bring more responsibility, prestige, and most importantly—power. If you're lucky. Here are the seven most important things to start doing if you're in it to become Chief Technology Officer someday.
1) Think and Act like a CTO
Fake it till you make it. Observing and studying the CTO’s that you admire and imitating them is the most important thing you can do. Buy a notebook and start writing down everything you can find about CTO’s, how they work productively, and how they got to where they’re at. When you’re working on a project ask yourself, what would a CTO do? If your company has a CTO or superiors, this isn’t a call to overstep your boundaries, but it is a call to show initiative.
2) Create a Network
Nothing shocking here, but when you end up coding in a room with a bunch of other coders, you sometimes forget to explore your city. Make sure you’re attending events related to your industry and meeting people who you could help or visa versa. If a client invites you to an event, it's important to them, and you should probably make an effort to attend.
3) Make Your Code Public in Github
Most in-the-know hiring managers want you to have a Github account and want to see your Github account. Look at this article for the top four things Daniel Doubrovkine looks for in a potential hire. He’s both a founder and a CTO at different companies so he has experience from both sides of the table.
4) You Need to Be Business Savvy
As CTO, you need to conscious of how projects are affecting the company's bottom line. You need to be accurate in estimating how much it will cost to complete a project and how much time your team will need. There are different schools of thought on this, but I believe it’s better to overestimate than underestimate. Clients love “saving” money at the end of a project, not going over budget. If you don’t know anything about finances, leadership, or marketing, it’s high time you buy some books about them or enroll in some night college courses.
5) Continue to Learn—But Know When Enough’s Enough
This one is huge. Ian Langworth geniusly writes about this conundrum on First Round. In our day and age we’re constantly bombarded with the message of doing more, achieving more, and earning more. Most engineers and coders are life long learners and will naturally want to keep up-to-date with the newest technologies and coding languages. That's a great trait, but it's also important to acknowledge when you're overworking yourself. Sometimes more is a big mistake.
Langworth was used to focusing on his true loves in his free time outside of work. But when his hobbies became his daily work when he launched his company, he needed to learn how to manage side projects. One weekend Langworth helped a friend build an e-commerce site—to the detriment of his own productivity the next week. Maybe you’re someone who has the mentality to handle multiple projects at once. But if you’re feeling sluggish or hitting walls during the week, it’s probably time to slow down on nights and weekends.
6) Be Able to Communicate in Non-Technical Terms
This is a key skill to have because you will often have to explain and sell your services and products to people who have no clue as to what you actually do. Being able to lay down your selling points in layman's terms will go a far way in your conversations with people.
7) Be Able to Take Someone’s Vision and Translate It Into a Product
Problem is, sometimes people don’t have a vision or have trouble communicating their vision. It’s your job to finesse—and sometimes drag—it out of them.