You Don’t Need To Learn To Code: Why Non-Technical Founders Should Learn To Manage Freelance Web Developers Instead

You Don’t Need To Learn To Code: Why Non-Technical Founders Should Learn To Manage Freelance Web Developers Instead

Do you want to build a technology startup, but don’t know how to code or have a technical co-founder? Maybe you’re one of thousands of non-technical founders looking to build an MVP? No worries, all you have to do is learn how to code in a few quick months, right?

Mmmm. Not Really.

Look, I’m not trying to discourage anyone – programming is a great skill and if you’d like to learn it in your free time, then go right ahead. However, in this article we’re going to explore if there are better uses of your time as CEO of a tech startup (Spoiler alert – there are).

Here are some things you need to consider next time someone suggests that you should learn to code if you can’t find a tech co-founder.

Learning to code is SLOW

To become a CTO-level developer takes years. When I just started, It took me close to a year working as a web developer to become competent in just one PHP stack. And I already had a 5-year Computer Science degree and had been coding pet projects since the age of 9 (I know – I wasn’t the coolest child).

Startups have to operate fast, and as a CEO you don’t have the luxury of taking several years off to learn how to code. Besides, it’s not a learn-it-and-forget-it type of thing. Technology is evolving rapidly, only full-time practitioners are able to stay on top of things through daily learning and work.

Technology is evolving rapidly - Non-technical founders

Technology is evolving rapidly

Coding isn’t everything that a CTO needs: experience is key

Being able to understand and write code is not everything a good CTO needs. Experience is what really sets great developers apart. Sleepless nights fixing unexpected issues taught me and many other developers important things you just can’t learn from books.

In programming the same result can often be achieved in many different ways. For example, say you’re building a video app and you need to process tons of video and convert it to different formats to stream to users based on their device and bandwidth.

You can build the whole thing from scratch, which will take forever. Or you can use an open-source video processing library, or a paid library, or maybe an API that sells video processing as a service? Each decision has long-lasting financial and time consequences.

Let’s say you decided to go with an open-source library. If you’re like John-the-experienced-programmer, who spent a weekend fixing a nasty memory leak in the latest version of the library instead of spending time with his family, then you know that you need to use the previous version of the library. But if you aren’t that guy – be prepared for your app to crash and having no idea how to fix it (the bug is not even in your code).

Sometimes things crash and you have no idea why - non-technical founders

Sometimes things crash and you have no idea why

A good developer has the experience to make the right decisions. For example, on my projects I rarely write any code myself. Why do my clients pay me so much then? Because I make all the key decisions – that’s where the real value is. Years of experience is important.

There are large pools of cheap tech talent in Eastern Europe and elsewhere

There is no shortage of good developers globally. There are large pools of underpriced tech talent in Eastern Europe for example. But there is a shortage of people who have the project management skills to use this talent for their business.

There are no shortage of great coders globally

There are no shortage of great coders globally (image from www.hackerrank.com)

Learning how to manage developers gives you a shortcut to building your product. Once you’ve mastered this skill you can work with any developer, no matter what technology or coding language. In addition, each developer or team you work with becomes a valuable asset that you can use for your future projects, giving you more leverage as an Entrepreneur.

You should be spending your time being an entrepreneur/manager instead

If knowing how to code was everything a startup needed to succeed then there would be a lot more successful developer-led startups. So, why is this not the case? Because building the product is just one piece of the puzzle. There’s also marketing, sales, legal, finance, customer support, business development and other things you need to take care of.

As a CEO, your goal is not to learn how to masterfully do all these things yourself, but to hire and manage talented people who can do them for you. Managing developers is no exception, although learning how to do it successfully can be a challenging process. If you still have doubts, here is a list of non-technical founders who achieved success despite not knowing how to code.

Plenty of non-technical founders have built successful software startups

Plenty of non-technical founders have built successful software startups

Case study – my client

One of my clients is real-life proof that knowing how to code is not essential to building a successful technology business.

I first e-met this client back when I lived in Russia through Elance.com. One of the first projects we worked on together was a complex system for a major airport. The project was successful. It was completed on time and the airport still uses the application we’ve built.

Here are some fun facts:

  • The client didn’t know how to write the code (he still doesn’t).
  • I never heard his voice nor saw his face until several years later when I moved to the US.
  • We used email for most of our communications – at the time my spoken English was quite bad.

However, that client was extremely good with documentation and management, he provided designs for every major screen of the application, he thoroughly described the purpose of the application and responded to all my questions with detailed answers. He also carefully tested everything and sent me well-written bug reports if something didn’t work right. In short, he had great answers to some of the important questions you need to ask yourself before outsourcing development.

Convinced yet?

The key takeaway here is that while learning programming basics can certainly help you long-term in your startup career, learning how to hire and manage freelance developers will produce significantly more impact in a much shorter time frame. It will also give you flexibility with respect to technologies you can work with and geographic locations you can hire from.  

The beauty of this skill is that, unlike programming languages and frameworks, it doesn’t get old. Although new tools and approaches appear over time, they rarely completely invalidate the old ones, but rather make things easier. In contrast, in my career as a developer I worked with several technologies that became obsolete, making my experience with them essentially worthless.

The topic of whether or not knowing how to code is required for being a successful tech startup founder is somewhat controversial. What’s your take? Leave a comment below and let me know!

 

(Map image from Hacker Rank)

Comments ( 4 )

  1. ReplyRobert G
    Interesting article. I've done development, and I've also managed freelancers, I do consulting on freelancer hiring (http://techinterviewers.com) and I've even taught a course on tech skills for non-technical founders (http://www.abovemba.com/p/create-an-it-startup-with-no-programming-or-experience). I'd say it's sort of in between. Some coding knowledge is nice in order to understand what's going on, but you don't need to be a real coding expert. It's usually better to hire someone, or use middleware that cuts down on your workload. Even if you know how to code that's often the case, because it takes you time to code your product, and your time is often better spent managing and promoting your company. As a founder, one of your most precious resources is going to be time, especially if you're juggling your startup with a day job.
    • ReplyAuthorAndrei Anisimov
      Robert, I agree, any additional technical knowledge is very helpful when managing developers. My key point in the article is that it's unrealistic to learn how to code enough to develop a production-ready app in a few month on your own. And just like you said, there are much better ways to spend founder's time.
  2. ReplyDavide
    Very well written. My wife's experience: she wanted to have a professional website for doing the front-office for a new conference selling activity. Hiring a techie was a no brainer since she doesn't have a clue about programming. She found a former colleague with developer skills and voilà, the website with e commerce and CRM works fine. But as you said, she knew very well her business and from logo to colors to UX to the payoffs and all the texts, everything she discussed thoroughly with her partner first, and then provided very specific instructions to the tech guy. Competence in your business is crucial, tech follows.
    • ReplyAuthorAndrei Anisimov
      Thanks for the feedback Davide. I agree, knowing exactly what you want built is crucial. Developers already have to make many underlying technological decisions. Having them also make design or business logic decisions is a bad idea in general.