13

I have quite a good experience in startups and consider myself as a perfectly valid full-stack developer. I'm in the process of becoming CTO for a consulting company that is economically viable and who wants to get in the software development business.

So, after some months spent in building the foundations of two applications, my main job is for the moment to hire a skilled team of 4/5 various profiles which I will manage, including an experienced full-stack developer.

I have complete trust from my employers and the company's investor, and I don't care about this developer being more skilled than myself, actually it's precisely what I'm looking for. I know "big developers skills" are not the same thing at all as "big CTO skills".

But still. I've been interviewing a guy who I think is way more proficient than I am in all the languages that I know of. I'm talking about a guy with 23 years of experience (I'm 31 of age), who was playing with Python the day Guido released version 1.0 while I was playing with toy cars, and who's been CTO in a big company for 10 years of his life. This guy now wants to get back to core coding because he realised he doesn't like that much being a CTO.

I'm going to be totally transparent towards my company about this fact, so my question is not "how can I not be eclipsed by the guy". I know I won't. I see this as a potentially remarkable opportunity of growth, but I fear it might sometimes be overwhelming, or I could not turn this potential into realisation.

This man seems to be better and more experienced than I am in any field I can think of, but he now wants to get back to coding, and wants a young CTO to manage him. What sort of things can I do, what kind of approach can I take to make my company and the projects I'm working on take full benefit of this situation, and not having to regret it years after, thinking that I didn't handle it the way it deserved?

  • It seems as though you don't really want to be a CTO, and would rather work directly with this individual as a developer and learn from them? Would that be accurate? – JMK Jan 10 '15 at 0:06
  • @JMK I want to be a CTO. That's what I'm interested in and I'm excited about this challenge. It's rather that in the past, I used to base part of my leadership on my technical skills - which I won't be able to do with this kind of profile in a team I have to manage – Jivan Jan 10 '15 at 0:18
  • Fair enough! It's worth noting though that while there are many who view being a developer as a rung on the ladder as it were, there are also a lot who wouldn't want any other job as being a developer allows you to work with and learn from people much smarter than yourself (such as the person you describe) and moving up the ladder takes that opportunity away from you. – JMK Jan 10 '15 at 0:40
  • 2
    A good manager manages UP the chain of command (IMHO, the best managers are the one that 'clear a path' to let their subordinates do what they do best). As such, they hire talented people underneath them as they know they can do their job well without much need for you to manage DOWN to them. So I think you're doing the right thing. – DA. Jan 10 '15 at 2:50
  • As you say this person has been a CTO for 10 years; he may not be that proficient of a programmer. Just because he has been working for 23 years; doesn't means he has 23 years of programming experience; its just that he has been around for a lot longer than you, and thus you assume all these years he's been doing nothing but programming. Further he stated himself that he wants to "get back into programming"; implying that he wasn't doing much of it before. Make sure you are not reading too much into this. – Burhan Khalid Jan 10 '15 at 8:41
22

You seem to be wondering how you can help your resource be successful and provide as much value as possible. In your role as a senior manager, here's how you can help:

  1. Take any steps that you can to remove any obstacles to his productivity. Shield him from politics and unnecessary meetings. Make sure that he has the tools that he needs.

  2. Bring him into the appropriate conversations with people in other parts of the organization. In particular, make sure he makes the connections and gets the info that he needs to fully understand the business domain. Make sure that other departments understand how and why this is important.

  3. Communicate your strategy to him clearly and as quickly as possible. Help him understand his priorities and make sure that he shares his skills and mentors the rest of your development team.

  4. Make sure that he gets the credit when credit is due. An employee that feels valued is a happy and productive employee. If your team is seen as successful, you're successful.

3

It could be worth asking him/her if they would be prepared to take a technical lead/mentoring role with a guaranteed level of hands on work and mentioning up the chain that you would like to offer an enhanced package to this individual because of the value that you feel they would add. Explain that you have talked to them and that while they have leadership background they desire to get back to a more technical role. Possibly ask if it would be worth spending some time looking at setting up a career path specifically for people with such desires.

One company that I worked for years ago set up such a package where people with the high levels of skills that either did not wish to be "diverted" or were unsuited to management roles were rewarded both financially and technically. This included a self administered budget of time and finance to allow them to a) keep up their technical interests by following the publications in the field or attending conferences, etc., and b) to spend some time & money on projects that they thought may be worth the company getting involved in down the line any patents resulting from such work belonging to the company but with a proportion of the earnings going to the individual.

1

The 2 big things on your plate, when you manage people, are (1) managing performance (set targets, monitor progress, give/take feedback on outperformance or underperformance) and (2) creating an environment that allows expected performance to be achieved (provide the right tools for the job, eliminate rework and red tape and all sorts of crap that stand in the way, ensure the team chemistry works and if not do something about it).

His skills reservoir being deeper than yours have very little to do with how you manage him. In fact, it should be easier for you to set his performance targets ie he needs to deliver more stuff, in less time, than the rest of his peer group.

After you've done that really all you have to do is monitor, prepare to get/give feedback, and check on the environment part of the equation. Does anything get in the way of people turning in a good job? This could be anything from office lighting to bad HR policies or management team who is always changing their mind about features. Your job is to shield the team from outside crap as far as this doesn't kill the company. Because company agenda does come first.

Not the answer you're looking for? Browse other questions tagged or ask your own question.