When I was at school, a career in tech didn't even cross my mind. All I knew about computers was that they never worked properly and were usually present in the most boring of classes. Working with computers for a living? No thanks!
Although, that's not all I knew about computers. I also had a computer at home, and enjoyed playing around with new software, sometimes playing games and surfing the internet. I liked customising my social media pages of the early 00s and enjoyed having to troubleshoot problems when I couldn't get my MySpace page looking exactly how I wanted it.
But I had no idea that this kind of work - this creative activity, with high levels of trial and error and learning - could actually constitute a job. I thought working with computers in a professional setting would just involve all the boring things we did in ICT classes.
Luckily, years later I found out for myself that this whole world of software development existed, and that it aligned extremely closely with many of my interests, and of how I like to work.
In this article I want to highlight a few of the features of software development, as a career, which I didn't know before, and which might help you see whether it could be something you'd enjoy.
Yes, software development is hugely creative. Often you get to see real stuff you build on a screen, and even if you don't because you're building a system that doesn't have a visual interface, you get to solve problems in your own unique way which is creative in itself.
It's not just sitting behind a screen with your headphones on, staring at code. The best parts of software development are talking through ideas with team mates and figuring out how to solve a problem together.
Learning to code opens up a lot of doors for you. You might progress through a software development pathway, becoming a more senior engineer with time, or you might be choose to sidestep into areas such as UX (user experience), data engineering, product ownership, testing, coaching, DevOps or tech management. You might decide to build your own product, launch your own business, go freelance, work remotely or become a contractor. There are many roles and patterns of working available in this industry, giving you more flexibility than in many other sectors.
Do you like solving problems? Do you enjoy a crossword or a SuDoku? Do you get excited when faced with a tough situation and the way to solve it isn't obvious? Do you get bored when you have to do the same thing again and again, and prefer to be given new challenges to rise to? If so, you'll probably find software development really rewarding. Every day there are problems to solve, things you won't have done before, and new challenges to face.
As I mentioned, if you find yourself getting bored quickly in jobs/situations you might find that software development feels a whole lot different to many jobs out there. There's a lot to learn, and it never stops, which means you get to stretch yourself all the time. It's hard to feel bored when you're constantly learning, and always being faced with new challenges. A lot of developers report it being common to enter a state of "flow" when working, where we enter a highly engaged state and time just seems to slip by as we work, so engrossed are we in what we're doing.
Sometimes it can take a while to get the the bottom of a problem. If you're the kind of person who enjoys working something through to the end and hates giving up on a problem, software development will probably be a lot of fun!
As a whole, the industry itself is also far from boring. Tech is being used to solve a lot of important problems and there's no doubting that it's making a huge impact on our world - for good and sometimes not for good. If you want to be involved in something with huge social, economic and policical relevance, then being involved some way in tech is not a bad shout. It's really important that a diverse range of people are involved in tech so that the tech that's built represents and caters to the people who'll be using it - in other words, tech needs you!
I hope this has given you a few things to think about.
Of course, you won't really know whether you enjoy software development until you give it a go! Luckily there are lots of free online resources where you can get a feel for programming, such as Codecademy and FreeCodeCamp. Why don't you try them out and see what you think?