5 challenges in the developer to CEO transition

John-DanielGeneral15 Comments

I lead Mindscape with my co-founder Jeremy. I thought I’d share some of the experience of making the migration from being a software engineer to being the business guy of Mindscape. I hope you enjoy a less than technical post for a change! 🙂

When Jeremy and I met in 2004 we both were software engineers. Jeremy was a legend, I was not to shabby but lacked some of the professional experience (he’d been in the game for a few years and is a brilliant Engineer to boot).

In 2007 we left our employer and started Mindscape. Although we don’t really use labels, our actions were clear – he’s the tech lead, I’m the business lead. We still discuss most business decisions, but we each have our own responsibilities.

This was an interesting transition for me. Going from living inside my development environment through to running a company, hiring staff, investing capital, managing accounts, etc.

I used to half joke that I considered this my skills over time like this:

Skill Level Graph

I’d say “I sure hope I’m not in the bottom of the valley – no good at coding and rubbish at running a business!” 🙂

We’ve now been running Mindscape successfully for over 6 years and I think I’ve made good on some of that up skilling. The company has grown, the products have improved, we’ve hired more people. It’s certainly a life long journey and as time has gone on, I’ve had the experience of helping other engineers make the jump.

Based on what I’ve seen, as well as my own experience, here are some of the key challenges:

1. Confidence

In the early days I used to feel like the dunce of the class. I’d read books, I’d talked with folks I respected, but I just lacked the confidence to really push some things through.

This changed over the course of about 18 months. What really helped was seeing some issues I didn’t push back on turn to complete crap. That made me think “I should have pushed harder on that”. I still certainly make a lot of mistakes, but every business needs somebody making the call – just hope they’re right more often than wrong, and when they’re wrong they’re not fatal.

Certainly also making sure you defer decisions you’re not an expert at. Jeremy is fantastic for bouncing ideas off, and I rarely argue a technical point because I know I’m probably wrong (remember the chart JD, remember the chart).

2. Business is soft, not hard

Software development is basically glorified mathematics. You can make something perfect. You can prove something is optimal. You can rapidly test. You get instant feedback.

It trains you for the reverse of what running a business is like.

There’s rarely a perfect decision. You’re always making trade offs. Balancing risk. There’s a lot of juggling that needs to be done to make a business.

On the plus side, I found myself often thinking of ways to make running a business more like software development. How can we get feedback faster? How could we test ideas sooner? It helped challenge some established thinking.

3. Not falling back into comfortable position

When things aren’t going so well, or you’re just tired and worn out, it’s easy to fire up your dev environment and just pitch in on the coding work.

That’s almost the worst use of your time as the business leader. Unfortunately, it’s super easy to fall back into – even to rationalise – but it’s not how you build a great company.

I read a great quote once: Great businesses are not built behind a monitor. I try to remind myself of that.

4. Coding is a super power

Having said you shouldn’t fall back into a comfortable position, I will say coding is a super power.

Need to dredge your database to help make a decision? I can do that without thinking.

Need a quick program to do something more funky than I can’t do in Excel? No problem.

A customer gets in touch with a technical issue? I can take a stab at solving it.

Our company builds tools to help the best developers create great products. Being in charge and knowing how to code ensures I can relate to our customers, but any CEO who can code has a super power.

5. Never stop hustling

You’re the person who needs to embody what your business is about more than anyone else. If you don’t exude passion about what you’re doing then you shouldn’t be doing it. This comes as quite a challenge when you’re used to working quietly on your own most of the time.

Learning to tell a great story was a new challenge for me. Seriously – it’s one of those things you don’t consciously think about until you realise you suck at it. I’ve been getting better at this. Actively working on getting the message out there, at presenting that message more clearly and infusing that passion to those who are listening.

It’s a big change, but a worthwhile thing to work on.

Next steps

It’s been a great journey, and while it’s been a few years now, I do enjoy constantly improving on my skills.

If you’re an engineer who’s made the jump, I’d love to have you share your experience in the comments for others to read!

Next level software intelligence across your entire stack.

15 Comments on “5 challenges in the developer to CEO transition”

  1. Nik

    One thing that I often struggle with is reluctance to pick up the phone, or actually go out and meet someone.

    I think as developers we’re confident behind a keyboard – as JD says, it’s easy when you can sit back and prove categorically that A is mathematically superior to B with time and Google on your side. It’s much harder to think on your feet for a face-to-face discussion, but it can mean the difference between understanding what the other party needs and missing it completely.

    That’s not to say you can’t do most things via email, campfire, IRC and Twitter, but I would suggest that peppering that with the occasional “Shall we jump onto Skype/Facetime/Hangouts?” wouldn’t be a terrible idea.

    1. Tino

      I think this is a great article. I think most technical people should first of all figure out whether they are suited to
      management or not.

      Staying technical may not be a bad thing for some people and they needed to realize that some of these roles are just as important as senior management roles e.g. if you are the product visionary.

      So explore your options and talk to people in management positions before persuing a management career (or an expensive MBA degree that you may never make use of).

  2. Ivan

    Business isn’t like software development because “There’s rarely a perfect decision. You’re always making trade offs. Balancing risk”? Really? That sounds *exactly* like software development to me!

  3. Mike

    I was head of a digital department that were merely a bolted-on service but we have strainef at the leash brcause we are capablr and willing to deliver much more.
    I am trying to pushbupwards to changr but its very difficult. Learning the management’s language and the business skills you refer to is exactly what I am tying to learn everyday to educate them and so get them to bring in work/to sell work that is more tecnicaly challengjng and rewarding

  4. Mark

    Great post JD.

    I have been observing since late-2007 – and you have done a great job in that transition.

    I think that in most industries the best leaders come from a technical background in the industry. You are a great example of that.

    It isn’t easy to make the transition – but all industries need quality leadership. We are generally pretty crap at that here in New Zealand. Talking about this is a great idea.

    The first rule of fight-club is – we do talk about fight-club (with apologies to Chuck Palahniuk)…

  5. Andy Potanin

    Excellent article. I laughed when I read “it’s easy to fire up your dev environment and just pitch in on the coding work,” because I catch myself doing that all the time. It’s difficult to force yourself to re-learn habits, especially when you don’t have a boss “force” you to do it.

  6. Pingback: Getting the most from tech events - The Raygun Blog

  7. Astried

    CEO who can code has super power ?

    I have been thinking lately about should I be a lone wolf or keep in group with my co developer from current project.

    Yes, I can’t do it alone unless I am willingly sacrifice my social life. I feel that my workload is not equally balance between me and him plus we have different work ethics, visions. At this point I am so tired of doing all alone but have doubt to continue on different path.

  8. Pingback: Podcast: Going From Developer To Entrepreneur with Raygun and Simple programmer

Leave a Reply

Your email address will not be published. Required fields are marked *