What To Say To A Roomful of CTOs

At 8am this morning I am going to address the monthly breakfast group of CTOs here in NYC. I haven’t prepared any remarks and it’s time to spend a few minutes thinking about what to talk about. Might as well think out loud on this blog.

I am going to use the words CTO and VP Engineering interchangeably in
this post, I realize there’s a difference, particularly in large
companies, but in the world we live in, the CTO or VP Engineering is the person who manages the development/engineering team.

CTOs are among the most important people in the companies we back. Many of our portfolio companies don’t have CTOs when we invest and we often are involved in recruiting one to join our companies when they get large enough that the dev team needs a manager. My partner Albert (who was a CTO at one point in his career) wrote a good post called "Hiring A VP Engineering or CTO for Non-Techie Founders". That’s a good read, including the comments we got on that post.

The last point that Albert made in his post is if you find the killer VP Engineering but it’s going to cost you more than you want to spend (cash+equity) to get them on board, you should do it anyway. I totally agree. I have seen first hand the benefits that come from having a rock solid CTO in a company. And I have also seen the disaster that can result from not having that person on board.

First and foremost, I see the CTO as a manager. Great managers are hard to find in any line of work. But managing developers is even harder. The better the developer the harder they are to manage. I assume its a bit like managing high maintenance entertainers. The best developers are artists who are often moody, are anarchists who have bursts of creativity and equally long periods of uselessness. They are strong willed people who will fight with their colleagues over anything and everything. The people who have mastered the art of managing these kinds of people are a rare breed and every great technology-based business needs one of them.

I have found that for young companies a "player/manager" often works best. If you can find someone who is or has been a world class developer who also has the ability and more importantly desire to manage a team of at least ten developers, do it. That person, by virtue of their engineering talent and prowess, will be able to manage a small group effectively. And they can contribute to the development too which at crunch time is incredibly valuable.

As companies get bigger, you really need a full time manager. The best ones, like all things in startups, have done it several times before in high growth startups. As Albert said in his post, it’s not usually a great idea to hire a CTO from a super big company for a young growth company. Companies growing from 10 engineers to 50 engineers to 100 engineers over a 2-3 year period are a unique situation and you really need someone who has lived that situation a few times. Again, it’s incredibly hard to find a person like that.

I think being the CTO of a early stage growth tech company is a great job. There are several things going on in technology right now that make the work incredibly exciting. First and foremost, we are witnessing a new infrastructure for web apps getting built. We have open source infrastructure (the lamp stack) that is now a pretty mature and inexpensive and ideally scalable architecture to start with. Then we have new technologies like server virtualization that make many new things possible. And we have things like Amazon’s web services as a platform to build on. I suspect we’ll see something along the same lines from Google as well. So all these new tools, systems, services provide a new sandbox to innovate in. The CTOs job, among other things, is to work with the engineering team to make sense of all of this and figure out how to use it to make the business work best.

On top of that, we have the emergence of web apps as a platform in and of themselves. Each and every web app should have an api so that other web apps can be built on top of them. And most web apps should take advantage of the existing apis that are already out there so that they can build on top of other apps. This is a new world with lots of challenges and lots of opportunities. I see it as a natural evolution from the world of open source and reusable software. The web apps themselves are like pieces of code that others have written that can be used to extend a service. For example, when seesmic built their video dashboard service, they chose to use twitter as the notification system instead of building their own right away. Now they can eventually build that functionality directly or they can continue to rely on twitter for notification or they can do both. But it allows them to get to market more quickly and more importantly immediately reach a whole base of users that they don’t need to recruit themselves.

The best CTOs get that web apps need to be constructed so that they’ll get viral adoption. Technical decisions like the one seesmic made to use twitter as its notification system have huge implications for adoption and it may make sense to do something for adoption issues that makes the engineering or scaling job more difficult. Many of the old rules are going to have to go out of the window in this new world we are in.

We had a long discussion of using Amazon’s web services at our Portfolio CEO Summit in November. Many of our companies rightly want to be in control of their infrastructure so that they can respond to scaling issues directly. That’s certainly been conventional wisdom. How can you think about relying on a third party for your most basic infrastructure. But as one of the CEOs in the room said, why wouldn’t you want to run on the same infrastructure that Amazon runs on. It’s battle tested, scaled to a huge level already, and doesn’t go down very often. Think about that argument when Google gets into that business.

So I’ll end this long rambling post that has now given me my talking points for this morning with the following observation. If you are a world class CTO, our companies need you badly. And you need just as badly to be working for one of our companies (or at least a company in the sector we invest in). Because it’s such an exciting time with so many opportunities and so many challenges and so much money to be made too. I’ll see you all in a couple hours.

#VC & Technology

Comments (Archived):

  1. JeffreyM

    Sounds interesting. Will this be available as a podcast?

    1. fredwilson

      You know I should get one of those digital audio recorders that record tomp3 and record every talk I give and then upload it to the internet.Not sure how many people would take the 45mins it would take to listen tothe talk.If there was demand for it, I’d do itfred

  2. Stefano Buliani

    I absolutely agree with what you just said about finding a good manager to deal with egomaniacal developers.A few weeks ago I took the time to put together my thoughts on the matter in a rather long and mostly useless post ( http://thebigdeal.wordpress… ). Really great to have your 2 cents on the subject.

  3. charlie crystle

    CTO is about innnovation, vision, discovery, research, prototyping.VP of Engineering is about recruiting and managing developers, programmers (there’s a difference), testers, etc–the crew you need to ship product.The difference between the two is staggering, and assuming you can mix the two is a big mistake.

    1. fredwilson

      Of courseBut we often get the cto role in a founder and what we need in our companies is the vp engineering roleNames are a problem they confuse people. But the role is clear. The person who manages the developersFred

      1. Nate Westheimer

        Very important, this point.I CTO is responsible for the technical direction of the company. What technology will be used. What are the standards. What is the configuration. What’s the architecture the engineers are building?VP Engineering manages the execution of the development/engineering plan.

      2. charlie crystle

        Right–we need a VP of Development, which is why I’m hot on this right now. The last thing we need is more innovation around product, APIs, vision, etc. We need to build and manage teams.

        1. fredwilson

          It seems like that is always the scarce resource until you find the right person. It makes such a differenceFred

    2. daryn

      I agree with your distinctions, but in most (web) startups, the CTO & the VP of Engineering are one and the same. Additionally, the CTO/VP is often the lead programmer/developer/architect, at least out of the starting gate.

      1. daryn

        sorry, the threading and my use of pronouns is confusing. This is a reply to charlie crystle’s comment, not fred’s or nate’s.

  4. Anthony Stevens

    Hi Fred — mostly great post, but as a CTO/CIO, I have to disagree with your premise about the inevitability of the primadonna. See my fullish response here: http://xidey.wordpress.com/

    1. fredwilson

      I hope I didn’t suggest that the prima donna is inevitable, but we certainlyrun into them a lot in our companiesfred

  5. Peter Troast

    Brad Feld wrote about this with a slightly different POV than you on the manager vs rock star aspect here: http://www.alwayson.goingon…. Glemak’s comment is also worth reading.

  6. dave

    “bursts of creativity and equally long periods of uselessness”Nail on head. And it’s the CTO who can recognize this and create an environment where the developers can flourish more than not that make or break a development. When they aren’t willing to put up with the uselessness and they inevitably settle for a more predictable but mediocre staff as a result.

    1. Jeff Judge

      +1 on agreeing with that.i was talking to a friend (a friend who is also talented engineer) yesterday who told me that a few days ago his manager approached him and said “you seem to be spending a lot of time on the internet today, don’t you have anything to do?”. he found it ironic as he was researching monitoring tools for one of their applications. he quit the next day.i think the cto sets the technical vision and his team executes that vision. i’m not saying the cto is sitting around beard stroking thinking of the uber architecture; he/she understands the business and has a vision to scale it. in a large organization, a vp of engineering is a direct of the cto and is all about execution. in that same large organization, the cto keeps pulse and is a pivotal communicator. in a startup, you won’t find such division of roles as it’s not practical for a small company. the cto (as fred said) is usually a founder, and is also an informal vp of a dozen other things.great post fred. i love where we’re at right now, and i think the future is even more exciting.

  7. daryn

    Amazon Web Services are “game-changing” for sure, and in theory (and increasingly in practice) I’m a huge fan. I think ultimately things like storage and compute will be commoditized such as bandwidth and connectivity. There will always be times when you need your own environment, for control, security, privacy, legality, etc, but I think the de facto choice will be the cloud.What scares me is that many of the Amazon services that people are trusting as “infrastructure” are still in Beta, and at least in the cases of FPS and EC2, I’ve seen significant issues pop up. That’s not to say you wouldn’t have these issues and worse in you rolled your own payment gateway or server environment, but at least it’d be in your hands to fix and troubleshoot.

  8. Raza Imam

    The CTO has to be intimately involved in the business side of things to make sure that her team is solving the right problems the right way. I think the pressure is really on for CTO’s to be innovative and see the world differently. I own a Chicago-based offshore software development firm that acts as a CTO for our clients as opposed to just cheap labor. Our problem is to find simple solutions to the complex problems that our clients need solved. The traditional thinking is that a complex problem needs a complex solution… it just ain’t so. We also have to train our developers to think creatively and truly understand the problem they’re trying to solve. We’ve had clients that said they wanted an SOA architecture but had no justification for it; they knew it was a buzz word so they wanted us to implement it that way… in fact he didn’t really know what SOA was. Our job was to step back and get them to understand what they’re trying to do and have our developers come up with an intelligent way to handle it. A great CTO should be able to instill a vision in her developers. To make rambunctious team of developers work cohesively to solve a problem is incredibly hard.Seesmic’s use of Twitter is a good example of looking at a problem and solving it intelligently, rather than trying to build something from scratch. Successful businesses in any industry know this… Henry Ford focused on a smart process to build cars.Regarding scalability, Dharmesh Shah had a really insightful post on his blog called “Premature Scalaculation” talking about how startups focus on tangible and safe metrics like scalability at the expense of more ambiguous, yet crucial things like usability, innovation, and increasing adoption.Raza Imamhttp://BoycottSoftwareSweat…

    1. fredwilson

      Great commentsThanksFred

  9. patwoodward

    Looking at developers as artists makes a lot of sense. Creative juices can be hard to control. From my perspective CTOs can be likened to music producers. They have the technical (musical) chops to do develop (write and play music) as well as the ability to focus and lead a team of developers (musicians) to a finished product (song/album).This excerpt from paragraph 5 sums it up:I assume its a bit like managing high maintenance entertainers. The best developers are artists who are often moody, are anarchists who have bursts of creativity and equally long periods of uselessness. They are strong willed people who will fight with their colleagues over anything and everything. The people who have mastered the art of managing these kinds of people are a rare breed and every great technology-based business needs one of them.

  10. Dustin

    “why wouldn’t you want to run on the same infrastructure that Amazon runs on”?APIs are great and combining services/web apps/etc will make business and software that much more enjoyable. One problem comes up when reliance of said APIs ‘breaks’ your software once the use agreements change slightly. I would think twice before placing the core of the business or its software in the hands of other’s code or legal documents.

  11. Abdur

    CTO’s need to think about their business and stop recreating the wheel figuring out hosting and infrastructure. Any discussion or meeting that helps us towards that realization is great.The Amazon services may not be ready for all situations but still move the industry forward in two important ways. First, it gives small compute needs the first viable means for commodity computing to the industry. Second, business that need resources that are not cost effective with Amazon now have an industry standard pricing for bandwidth and hosting to negotiate with.I recently examined our needs (Summize) in comparison to what it would cost with Amazon on our blog (http://blog.summize.com/200… and found that Amazon is still pricey for storage and CPU / Memory intensive applications. The benefit of posting the analysis, our hosting provider is actively working at getting costs to Amazon prices. I know in the end large compute services will free most CTO’s from this nightmare of hosting and infrastructure thus Amazon’s move is game changing.

  12. BillSeitz

    Really sorry I couldn’t make it this month to the meeting.

  13. Aruni S. Gunasegaram

    Liked the post on the Union Ventures blog. This post shows another side to one of your earlier posts where you seemed to indicate that you had to have a technical co-founder from the beginning in order go be successful in a VC backed company. I remember thinking that was an interesting filter criteria on many levels. I have a great dev team and PM in India. I have access to technical support & advice on critical issues locally. Would love to have a technical hands on full-time co-founder but you can’t always get what you wish for right away. I found your original observation on having a technical founder interesting because of all the risks out there (Technical, People, Market) I’ve heard it said that most investors believe the technical risk is usually manageable (unless you are inventing the Start Trek transporter). If you have the right Market it will be easier to find People. If you have the right People they will adjust to the Market.By the way, the last several times I come to this blog using IE 7 I get a “stack overflow at line: 0” error pop-up. I hit OK and then it’s fine.

  14. Mitchell Ashley

    I’ve always said I have the best job in the company as a CTO. It’s very creative and is all about producing fantastic results you want your customers and the market to feel passionate about. That’s right up my alley – It’s what I love to do.There’s another philosophy I’ve adopted from the startups I’ve done; “as goes Engineering, so goes the rest of the company.” If product engineering is hitting it on all cylinders, it not only produces product but it literally enables the rest of the company. Sales and marketing is more aggressive because they have a great team and product behind them. Sales people want their reputation associated with it, rather than hesitating in case the next release falls behind schedule or suffers from poor quality. The psychological impact to the company is huge, either positively or negatively.First and foremost, VPE’ing is all about producing products, but it’s also about connecting the development team to the business and the customer. It’s easy to get isolated when you are so deep into creating software and products., and the more you can connect the team with the other important activities and events happening, both inside and outside the startup company, the better the team is positioned to make good decisions. “What” you are doing is very important, but I like to focus on bringing clarity to “why” questions; Why are we going after the market we are? Why did we make a certain change inside the company? Why is it more important to fill out the functionality in one area of the product vs. another? All of this helps the team create the best results.Software developers want to feel empowered to bring their talents to creating products, not just writing code. I have this philosophy that if you deeply believe in people and you passionately focus on their personal growth, they will amaze you with what they can do. Often times they’ll amaze themselves by doing things they themselves didn’t know they could do! I think these things are essential to creating high performance teams.The right kind of leadership is so important in a startup. I’m taking some time off in part of January to write an ebook about startup leadership, detailing my learnings and thoughts from startup experiences. I hope some of those writings will be helpful to others pouring their passion into creating great products and companies.

  15. severus

    ok

  16. David

    Ok, and for those of us ex CTO’s what’s the best way to land back at a startup as a CTO?

    1. fredwilson

      Send me an email pleaseFred

  17. David

    I’m a world class CTO. Where are the companies beating down my door? Columbia MBA, 6 years IBM consulting, 3 .Com’s under my belt, 1 of them IPO’d. ([email protected])

    1. fredwilson

      Maybe we can change that