Bonaventure OgetoBy Bonaventure Ogeto|

Do You Have to Be a "Tech Person" to Work in Tech? (No — Here's Why)

No. You do not need to be a "tech person" to work in tech. The image of the natural-born coder who built websites at age 10 is a myth that keeps capable people out of a career they would be good at. Professional software development is about problem-solving, persistence, and willingness to look things up. If you can follow a recipe, search for answers online, and stick with something when it gets confusing, you already have the core skills. The rest is learned. Every working developer was once a complete beginner, and most of them still Google basic things daily.

What People Think "Techy" Means (And What It Actually Means)

When someone says "I'm not a tech person," they usually mean something like this: I did not grow up building computers. I do not understand how apps work. I have never written a line of code. I sometimes need help connecting to Wi-Fi. The word "algorithm" makes me nervous.

That is a completely reasonable list of things to feel unsure about. But here is the problem: none of those things describe what working in tech actually requires.

The image most people carry of a "tech person" comes from movies and stereotypes. The teenager in a dark room who somehow knows how to hack into a government database. The kid who built a website before they could drive. The person who just "gets" computers on some instinctive level, as if they were born speaking Python.

That image is fiction. It does not describe the vast majority of people who work in software development professionally. Most working developers learned to code as adults. Many came from completely unrelated fields: teaching, accounting, nursing, customer service, sales. They were not born with a special affinity for computers. They learned a skill, the same way you learn to drive or cook or manage a team.

What "techy" actually means in practice is much simpler than people think. It means you are willing to read an error message instead of panicking. It means you can type a question into Google and evaluate the results. It means you can follow a set of instructions step by step, notice when something goes wrong, and try again. That is it. Those are the foundational habits. Everything else is built on top of them.

Professional Developers Google Things Constantly

This is the single most important thing nobody tells beginners: every working developer, including senior ones with 15 years of experience, spends a significant portion of their day searching for answers online.

"How do I centre a div in CSS?" has been searched so many times it became a running joke in the industry. Professional developers forget syntax. They look up how to format dates, how to sort arrays, how to write a database query they have written fifty times before. They copy examples from documentation and adapt them. They read other people's solutions on Stack Overflow. They ask AI tools to remind them how something works.

This is not a sign of incompetence. This IS the job. Software development is not a memory test. Nobody expects you to hold an entire programming language in your head. The skill is knowing what to search for, understanding the answer you find, and applying it to your specific situation. That is a research skill, not a "tech gene."

Think about it this way: a good lawyer does not memorise every law. They know how to find the relevant statute and apply it to their case. A good chef does not cook every recipe from memory. They read recipes, adapt them, and use their judgment about what works. Coding is the same. The knowledge is external. The skill is knowing how to use it.

If you are someone who can search the internet, read an explanation, and follow along, you already have the most important developer skill. You just did not know it counted.

The Skills That Actually Matter (And You Probably Have Them)

Strip away the jargon and mystique, and software development comes down to two core abilities: problem-solving and persistence.

Problem-solving means breaking a large confusing thing into smaller manageable pieces, then tackling each piece one at a time. You do this already. When your monthly budget does not add up, you go line by line until you find the error. When a recipe turns out wrong, you retrace your steps: did I use the right amount of flour? Was the oven too hot? When your phone stops connecting to Bluetooth, you try turning Bluetooth off and on, then restarting the phone, then restarting the speaker. That process of narrowing down the problem and testing fixes is exactly what debugging code feels like.

Persistence means continuing to work on something after the first attempt fails. In coding, your first attempt almost always fails. Your second attempt often fails too. This is normal, not a sign that you are bad at it. The difference between someone who learns to code and someone who gives up is not intelligence or natural talent. It is willingness to sit with confusion, try a different approach, and keep going.

There are secondary skills that help too:

  • Attention to detail. A single missing comma can break an entire programme. People who are careful and methodical have a genuine advantage.
  • Communication. Real software development involves working with other people, explaining what you built, understanding what a client needs, writing documentation. Strong communicators often make better developers than brilliant loners.
  • Comfort with not knowing. You will spend a lot of time not understanding things. That feeling never fully goes away, even for experts. People who can tolerate that discomfort and keep moving forward do well.

Notice what is not on that list: being good with computers as a child, having a technical degree, understanding how hardware works, or typing fast. Those things are nice to have. They are not requirements.

"If You Can Browse the Internet, You Can Learn to Code"

You have probably heard some version of this claim. It sounds like marketing. But there is real truth behind it, if you understand what it actually means.

It does not mean coding is easy. It is not. It means the barrier to entry is lower than you think. When you browse the internet, you are already doing things that overlap with coding more than you realise:

  • You read text on a screen and extract meaning from it (that is what reading code is)
  • You follow instructions in a specific order: click here, type this, press enter (that is what writing code is: giving instructions in a specific order)
  • You troubleshoot when something does not work: refresh the page, clear the cache, try a different browser (that is debugging)
  • You search for information and evaluate whether the results are useful (that is what developers spend half their time doing)

The gap between "person who uses the internet" and "person who writes code" is real, but it is a skills gap, not a talent gap. It is the difference between someone who eats at restaurants and someone who cooks. One is not smarter than the other. One has just learned a specific set of techniques that the other has not learned yet.

The key word is "yet." The people who struggle with this transition are not the ones who lack natural ability. They are the ones who convince themselves, before starting, that the gap is genetic. It is not. It is practice.

People Who "Weren't Tech People" Already Did This

Every cohort at McTaba includes people who describe themselves exactly the way you might: "I am not a tech person." An accountant who had never opened a code editor. A teacher who thought HTML was a government agency. A customer service agent whose entire tech experience was Microsoft Excel. A business owner who hired developers but never understood what they were doing.

These are not exceptional people with hidden talent. They are ordinary adults who decided to learn a new skill. Some of them struggled in the first two weeks. Most of them struggled in the first two weeks. Then the pieces started clicking together. Not because something magical happened, but because that is how learning works. Confusion comes first. Understanding follows, slowly and then faster.

The pattern we see repeatedly is that people from non-technical backgrounds often bring strengths that traditional "tech people" lack. The accountant understands financial logic and data accuracy. The teacher knows how to break complex ideas into steps. The customer service agent understands users and how they think. The business owner knows what problems actually need solving. Those perspectives make them better developers in the long run, not worse ones.

You do not need to arrive with technical knowledge. You need to arrive willing to learn. Those are very different things.

What Day One Actually Looks Like

One of the biggest fears people have is showing up and immediately feeling lost. "Everyone else will know what they are doing, and I will be the only one who does not understand." That fear keeps more people away from tech than any actual difficulty in the material.

Here is what the first day of McTaba's Tech Foundations course actually covers: not code. The course starts before code, because code without context is just symbols on a screen. Day one is about how computers think. What happens when you click a button on a website. What a server is and what it does. Why we write code at all, and what problem it solves.

There is no moment where the instructor says "as you already know" and launches into something you have never seen. The course is designed for people who know nothing. Not "know a little and are being modest" but genuinely nothing. If you can open a web browser and type, you have enough to start.

The reason this matters is that most coding resources start at the wrong place. They assume you already understand what a variable is, what a function does, why indentation matters. If you do not have that context, you get lost in lesson one and conclude you are not smart enough. You were not "not smart enough." The resource started at step five and you needed step one.

Good teaching starts where the student actually is, not where the teacher wishes they were. If you are starting from zero, that is fine. The course starts from zero too.

What to Do With This Information

If you have read this far, you are probably in one of two places. Either you are starting to believe that "not being a tech person" is not actually a barrier, or you believe it in theory but still feel it in your gut. Both are normal.

The feeling does not go away by reading articles. It goes away by doing. The fastest way to find out whether you can do this is to try, in a low-stakes way that does not cost you much time or money.

Create a free McTaba Academy account and look at the first few lessons. You are not signing up for a career change. You are spending an hour seeing whether the material makes sense to you. If it does, keep going. If it does not, you have lost an hour.

The next question people usually ask after "do I have to be techy?" is "where do I actually start?" We wrote a practical answer to that too.

You do not have to be a "tech person." You just have to be a person who is willing to learn something new. That is the only prerequisite that actually matters.

Key Takeaways

  • Being "techy" is not a personality trait you are born with. It is a set of habits anyone can build: searching for answers, reading instructions carefully, and not panicking when something breaks.
  • Professional developers Google things constantly. The skill is knowing what to search for, not having answers memorised.
  • The real requirements for coding are problem-solving and persistence. If you have ever debugged a recipe that went wrong or figured out why your phone was acting up, you have used the same thinking.
  • Most people who work in tech today did not grow up as "computer kids." They learned as adults, often from a completely different field.
  • McTaba's Tech Foundations course assumes you know nothing about code. Day one starts before code, with how computers actually think.

Frequently Asked Questions

Can you learn to code if you are not good with computers?
Yes. "Good with computers" usually means "has spent time using computers." It is experience, not talent. If you can use a phone, browse the internet, and type, you have enough baseline skill to start learning. The rest comes from practice. Most developers were not "good with computers" before they started coding. They got good with computers by coding.
Do you need a technical background to become a developer?
No. Many successful developers came from non-technical backgrounds: teaching, finance, healthcare, retail, the arts. A technical background can give you a head start on some concepts, but it is not a requirement. What matters more is your willingness to learn, your comfort with problem-solving, and your persistence when things get confusing.
What if I do not understand tech jargon?
Nobody understands tech jargon until someone explains it to them. Words like API, framework, repository, and deployment sound intimidating, but each one describes a simple concept. A good course or bootcamp will introduce these terms gradually with clear explanations. Not knowing the jargon means you have not been taught it yet, not that you lack ability.
Is there a personality type that is better suited for coding?
There is no single personality type that makes a good developer. Patient people do well because debugging takes patience. Curious people do well because the field is always changing. Detail-oriented people do well because small errors matter. But outgoing people, creative people, and people who prefer working with others all do well in tech too. The "quiet genius who works alone" stereotype does not reflect the actual industry.
How long does it take a non-technical person to learn to code?
With consistent daily practice (1 to 2 hours), most people can build simple projects within 2 to 3 months and reach a job-ready level within 6 to 12 months. Coming from a non-technical background does not significantly change this timeline. The main factor is consistent practice, not your starting point. McTaba's Tech Foundations course is designed to get non-technical beginners up to speed before they write their first line of code.

Ready to build real-world apps?

Join the McTaba Labs full-stack marathon (4 months full-time · 6 months part-time). Learn M-Pesa, USSD, and WhatsApp engineering while shipping 8 production apps.

Apply to the McTaba Marathon