Subscribe to industry newsletters

#WomensMonth

Search jobs

Skills to cultivate for a career in software development

One of the most exciting times in a young person's life is choosing what they are going to do as a career. The world is evolving so fast that it feels as though the options are endless. That being said, we also know that young people are driven by a sense of purpose. Various studies have shown that Generation Z - these are young people who recently finished or are about to finish high school - place high value on making a difference.
Image source: luckybusiness –
Image source: luckybusiness – 123RF.com

As we all know, the future is digital and software development will drive current and future innovations in the fourth industrial revolution. Our collective future, and securing employability, lies in IT. This is where it becomes exciting - there are dozens of industries and possibly tens of thousands of small, medium and large companies - especially those that are driven by a purpose to make people’s lives better - that will require strong IT candidates to fill crucial positions.

Perhaps one of the biggest ironies in South Africa in 2022 is that there is a crippling skills shortage, yet there are more jobs in the IT and software development fields than there are people to fill them. When we consider that we can make a real difference, and fulfill roles in companies driven by an authentic purpose, the prospect of becoming skilled in something such as software development becomes all the more exciting.

Once a young person has chosen a career path, such as software developer or engineer, data scientist, or systems integrator, it doesn’t matter which path they choose, there are a few key considerations they would do well to keep in mind. In a digital world where purpose is more important than ever before, a young person needs job-specific skills, relevant skills, a particular mindset, some degree of work experience and very importantly a host of human skills that are more important than they have ever been.

Job-specific skills

The beauty about learning is that you don’t have to enter a course, school or university knowing how to code. Lecturers and colleagues will teach you the skills. Let’s look at a prospective software developer. As you start learning to become a developer, you will learn different coding languages, you’ll learn about data and databases, testing procedures and policies, debugging, support, and much more. Before starting your journey, be sure that you find these types of things interesting. Some people are artists by nature, others are engineers - make sure you are pursuing a career and the types of skills that appeal to you. An artist and an engineer can be driven by the same purpose.

Relevant skills

One of the biggest disconnects between education and the workplace is a lag between what skills are taught and what skills are needed. This holds true for both schools and universities. Curriculums are designed with the best intentions, but the world evolves at breakneck speed, meaning that by the time graduates emerge, those who have chosen software development may well find that coding languages and best practise has evolved. This partly contributes to the gap between jobs needing to be filled, and people able to fill them - a lack of experience and no time to teach new skills. Be sure to ask about the relevance of skills being taught, and whether they are being used in companies driven by the sense of meaning that matters to you.

Mindset

Skills are only one side of the coin. To be a successful software developer, or team member in any IT profession, you must have a can-do attitude. In the rapidly evolving workplace and world, there is no place for being stagnant. The successful software developer in the fourth industrial revolution is hungry to learn and push boundaries. Start today by cultivating a positive mindset and a hunger to learn from those with more experience. Never stop learning and become comfortable being uncomfortable, as that’s how we grow as people and professionals.

Experience

How many times have we heard this: A job is available, but it requires experience; but how can you get experience if every job needs you to have experience before it will give you more experience? This is a frustrating reality, but if you look at it from the perspective of the company it makes sense. When deploying software developers into live environments, the business needs to be sure that the young person not only has the required skills, but they know how teams work, how processes unfold, and much more. This can only be taught in a live work environment and not in a lecture hall and so try to find apprenticeships, holiday work programmes or training institutions that teach young people in live environments.

Human skills

While the instinct may be to presume that the future workplace will only have space for people with the latest and most technical IT skills, the truth is that human skills are more important than ever before. As technology drives automation and as advances in artificial intelligence and machine learning mean that machines can take on work that was previously done by people, the need for human skills increases. Creativity, decision-making, judgment, leadership and communication will become more important than ever before.

As the machines take on monotonous or predictable tasks, humans will be called on to think out of the box, make judgment calls, manage other humans and think strategically. Take the time to do courses and find mentors to build these crucial human skills, which will go a long way towards finding employment first, and then fulfillment in a career.

About Jessica Hawkey

Jessica Hawkey, Managing Director at redAcademy

Let's do Biz