Software is becoming a bigger and bigger part of our lives, but do we actually understand how it works? 

We might be the tech savants in our families, and know our way around a smartphone or laptop. But that’s just the surface; the reality is that most of us don’t actually understand how most of the technology we use works under the hood. If you had to explain to me how the internet works, could you do it?

Obviously we don’t need to understand everything we use, in the same sense that we don’t need to know why boiling potatoes in water with baking soda makes them taste better when roasted, or why ice reduces swelling. But technology is a lot more practical than that, because a lot of people work at companies that sell software. And everybody works at companies that use software.

These are important things to remember, because although we hear a lot about how we’re in the golden age of software engineering — nobody can hire developers fast enough — an underappreciated reality is that inside startups and tech companies, most roles aren’t technical. Every organization employs marketers, salespeople, recruiters, and executives whose job descriptions don’t involve any meaningful knowledge of computer science or even basic HTML, but whose professional lives and workflows are dominated by software nonetheless. 

If you match this description, ask yourself: Do I understand the basic concepts underpinning the software I use to do my job or what it is that my company actually builds and sells? These questions aren’t rhetorical. Becoming more technically literate will help you work better with engineers, identify chances to automate or improve your workflows, and become a whiz in the tools you use to get your job done and help the business grow. In short, technical literacy provides a path to excel as a non-engineer in a field dominated by engineers.

Technical literacy does not mean learning to code

People think about “being technical” in a binary way — there are software developers who know how to code, and there’s everyone else. But learning how to code is a hefty undertaking: you’re looking at hundreds or even thousands of hours of precious time.  Plus, there are sizable financial and time investments if you want a degree or even just to graduate from a bootcamp. While in some ways building apps has never been easier, today’s developers need to understand vastly more domain-specific tools than in the past (e.g. how to use npm or storybook). 

If you don’t want to be a software engineer, what’s the point? If this is what being “technical” means, then for most it is completely inaccessible. 

This binary view of technical literacy is memorialized in the classic meme about how movies comically misrepresent what software engineers actually do. In any given film, you can expect to see “coders” doing something like this:

This “code” is actually an SVG file from Wikipedia, which is basically a representation of an image (like a rectangle); in other words, it’s not really something you’d ever see a software engineer “coding” in real life.  The point the movie is trying to make is clear: whatever these coders are doing is complete magic, we have no chance of understanding it, and we might as well just brush over it since nobody will notice. (Credit to The Social Network for at least trying to be accurate.)

As you’ll see, though, things are way more nuanced than that! Being technical is a spectrum — it’s not one size fits all — and there are lots of different places you can settle. You don’t need to be a developer to understand the differences between file types, and to know that an SVG is a type of graphic used for design. And if you’ve been in a startup office, you probably know that developers don’t write code on see-through holographic screens.

You can think of it just like playing an instrument. There’s a big difference between being able to strum a few chords on guitar and being able to rip out a gnarly solo. Both are great, and utility purely depends on what you’re trying to accomplish. Technical literacy is no different. You don’t have to learn how to code to benefit from knowing what code is and how it gets written.

Being technically literate simply means that you’re comfortable with the basics of how technology works, and critically, you understand the area you work in with more depth. Useful and practical technical literacy has two layers:

  • The base: The basics of software and hardware.
    • What’s a computer?
    • What’s the internet?
    • What’s a database?
  • The domain: Deeper knowledge that’s relevant to your job.
    • What products are we building, selling, and using?
    • How do they work? What problems do they solve?
    • How do our engineers build and use them?
    • How do your team’s tools work?

If you’ve read this far, you’re hopefully convinced that there’s a place for you on the technical literacy spectrum, and that you don’t need to be a developer to be someone who u