The Problem Of CS (Computer Science) Graduates Who Can’t Code

Over the past 10 years of being in the Malaysian start-up ecosystem, I was surprised to find out that a significant number of CS grads can’t actually code.

Some even started their own tech start-ups, but were struggling to find programmers to build out their apps. I was genuinely surprised because if you are a CS grad, can’t you build it yourself?

Some of them told me that it was because they were never really good at programming, that’s fair enough. I know how to code — I learnt how to at a programming bootcamp called NEXT Academy, but I won’t say that I am the best at coding.

But shouldn’t you at least be able to build simple apps or at least build an MVP yourself like I did? Even more so if your app or web app is just a simple listing and booking site.

Apparently that’s not the case.

Why Can’t CS Degree Holders Build Their Own Apps?

After I was forced to learn how to code to build my own start-up — Wowwwz, I started to understand what was really happening in our education system that was causing CS degree holders to not be able to code.

Read Also:


A Computer Science Degree Does Not Really Teach You How To Code

I soon realised that a computer science degree does not really teach you how to code and build full applications or websites. They might teach you the basics, and have small introductory courses on how to execute code on a terminal, but that’s far from what is needed to build a fully functioning application that can serve as an MVP — Minimum Viable Product.

Theory Vs Practical

I found out that a computer science degree mostly teaches you theory.

Do not be mistaken, the theory you learn in computer science classes is exactly what would help you build a world-changing start-up like Facebook, as Mark Zuckerberg mentioned himself in a fireside chat — stuff like how to make an algorithm faster etc.

However, you need to apply that theory to a fully functioning app for it to be of any use.

The part where you build a fully functioning app, that’s the practical part where most computer science courses don’t really focus on. Instead, they focus on the basic fundamentals of programming and how to make algorithms milliseconds faster. These are problems that most start-ups would only face when they grow big enough to reach a certain scale.

Read Also:


CS Grads Vs BootCamp Grads

I learnt how to code out of necessity — because I can’t find any software engineers who were good enough to build Wowwwz — from a programming bootcamp.

Read Also:

Apps I’ve Built In 9 Weeks @ NEXT Academy

My background was in law, I don’t have a CS degree. I am what people in the industry would call a bootcamp grad programmer.

BootCamp Grads Are Great With Practical

The difference between a bootcamp and a CS degree is that a bootcamp focuses on teaching you how to code out a fully functioning MVP in 2 weeks. It is 3 months of intensive practical training.

A CS degree on the other hand teaches you the fundamentals of programming, theory and various algorithms, many of which you won’t really use until your application hits a certain scale.

Read Also:

27 Things You’ll Learn In A Programming Bootcamp | NEXT Academy Blog

Good bootcamp grads are great at writing code and building fully functional apps in a short time, but they often lack a strong fundamental understanding of computer science, and tend to write code in a way that will break when you reach scale.

Good Enough For Early Stage Start-Ups Who Need To Iterate Fast

That’s great for start-ups who need to iterate and push out product fast, but bad if you’re building for long term sustainability, you will probably have to rebuild a lot of things as you scale, but that’s actually part of the growth process of any start-up that makes it that far.

Read Also:

Worst Advice I’ve Ever Received As A Tech Entrepreneur

CS Grads Have A Strong Understanding Of CS Fundamentals

CS grads, on the other hand, have a much better understanding of CS fundamentals, and can build quality sustainable code that can scale, the kind that can handle millions of queries at the same time.

My co-founder and CTO is one example of a rare CS grad — I should clarify that it is only rare in Malaysia — who can actually code. Someone like him is what you would call a true software engineer, someone who can code and also have a good understanding of CS fundamentals in order to write and build quality scalable applications.

Read Also:


Towards the later stage of a start-up or for big corporations who need to maintain apps and infrastructure at a big scale, you will need someone with strong CS fundamentals like a CS grad. A bootcamp grad can also fulfil that role if they keep learning and develop strong CS fundamentals after they’ve mastered the practical side of coding.

The problem in Malaysia is that a significant number of CS grads know the theory side of things but don’t know the practical side of things.

You need both.

Read Also:

What’s Stopping ASEAN From Having A 100 Billion USD Tech Company?

Most Of The Time, You Write Essays, Not Code

I have also found out that throughout the course of a CS degree, you actually write more essays than code. These are essays about CS fundamentals, algorithms and stuff like that.

Computer Science Needs To Be APPLIED To Practical Engineering

In order to be effective, CS fundamentals need to be actively applied to the practical act of coding and building apps and algorithms, not just writing essays about how you would do it if you ever did it and what are the pros and cons of doing it in different ways.

Read Also:

7 Famous People & Startups That Started Or Started As Dating Apps

Theory Alone Is Useless

It is the lack of practical coding experience that resulted in Malaysian CS grads who can’t code and can’t build simple applications.

In this sense, theory alone is useless.

Practical Experience Alone Is Not Scalable

On the other hand, if you are a bootcamp grad, you can probably build simple apps and websites with ease, but if you don’t continue learning and develop strong CS fundamentals, chances are that you are writing unscalable code that will break when you build more features on top of your app or when your app reaches scale — let’s say 2000 people using your app at the same time.

Read Also:

Why Is Our App So “SuckShit” | Wowwwz

It is good enough for early stage start-ups that don’t have scale, need to iterate fast and where most features might not even make it past the next release, but you will have to rebuild or refactor everything once you reach a certain scale, otherwise your app will probably crash.

CS Students Overseas Usually Start Coding/Building Stuff Since Young

I’ve come to understand that this problem is less prevalent overseas simply because CS students overseas usually start coding and building stuff since young. Mark Zuckerberg build an MSN-like app called Zucknet when he was still a teenager.

Read Also:


These CS students don’t have a lack of practical experience, most of them probably have more practical experience and have built more hobby apps for fun than most software engineers here.

A CS Degree Enhances Their Knowledge So They Can Push Boundaries With Code

Armed with a wealth of practical experience, they enrol in a CS Degree course full of questions and a good understanding of how things work.

They will find a CS degree very interesting because they are excited to find out how they can make the application they built even faster or better after applying CS principles to their code.

Most Malaysian CS Students Study Computer Science Without Actively Applying That Knowledge By Building Stuff

Plenty of Malaysian CS students I know enrolled into a CS course without knowing what they’re really getting into. Most of them don’t even really know what they want yet, as long as they get a degree, it’s fine. Some eventually discover an interest in computer science, and go on to become great software engineers, but most don’t.

Those who don’t actively apply what they learn from a CS degree by actively coding and building out applications to test out their CS principles and push the boundaries of programming would probably end up as a CS grad who can’t code.

CS Theory Needs To Be Coupled Up With Practical Experience In Coding To Be Useful

To be an effective software engineer, you need both a good understanding of CS fundamentals coupled with up to date practical experience.

I started as a bootcamp grad without strong CS fundamentals, but in order to build an application that’s as challenging as Wowwwz and in order to build it sustainably so it can scale properly and new features can be added to it, I had to learn CS fundamentals on my own with guidance from my co-founder and experienced software engineers.

Skills Need To Be Constantly Honed & Refined To Stay Relevant

Technology also moves at a really fast pace, what was true a year a go might not be true today.

Syntax change, frameworks change, things get deprecated. Even if you knew how to code a few years ago, you might have some catching up to do before you can start coding and building applications again today.

Otherwise It Is Education Wasted

If a CS graduate does not actively apply their CS knowledge by building applications or working on code and does not keep themselves updated with the latest frameworks and technology, their education in CS is basically wasted.

That’s how CS graduates in Malaysia end up not knowing how to build simple apps.

That’s Why More CS Grads Does Not Equal To More Software Engineering Talent

With this in mind, more CS grads does not equates to having more engineering talent. You will only have plenty of people who know some CS theory but not know how to actually build an app or become a software engineer at a start-up or tech company.

Encourage The Building Of Apps — Encourage Experimentation — Applaud Failure

As with a lot of skills in life, you learn by trying, you learn by experimenting. It is okay to fail, it is okay to be embarrassed by the first app you ever built, it might look ugly or crash on signup, but at least you tried, and learnt.

That makes you a better coder.

We should encourage more people to try building apps to solve different problems just for fun, don’t judge them if it is lousy, encourage them to try again and become better.

That’s how you create better tech founders, better software engineers and a better start-up ecosystem that can propel Malaysia into a high-income nation.

Read Also:

My 10 Year Start-Up Journey — Lessons & Honest Reflections

I am building a start-up myself, and I hope you will help me out a little here so that I can build the tools to help everyone in this world find their soulmate whom they can grow old together and live long happy lives with.


You can reach me at or LinkedIn.






You can also follow me on Facebook, Twitter or Instagram.





SCAN with Wowwwz to meet amazing single people in Kuala Lumpur!

SCAN with Wowwwz to meet amazing single people in Singapore!


Let’s do this together!


You have the power to become a superhero!

Leave a Reply


You are commenting using your account. Log Out /  Change )

Google photo


Twitter picture


Facebook photo


Connecting to %s