Beyond Learning to Code: What Aspiring Software Engineers should know
October 13, 2020
Across industries, for various reasons, companies are clamouring to hire software engineers, and correspondingly individuals are clamouring to take on those roles. Naturally, there’s an influx of kids and adults wanting to learn how to code so as to leverage that prospect. And while it’s true that the ability to code opens many doors, it’s a common misconception that all you need to be a software engineer is the ability to code or programme.
Our friends at Code Chrysalis – a software engineering bootcamp – should know, having trained and placed numerous fresh software engineers in Tokyo, Japan. At a recent webinar, they shared insights into the tech industry and what people curious about a future in software engineering should know and brace themselves for in a time of COVID-19 and the 4th Industrial Revolution. Here’s the the lowdown.
Beyond learning how to code, here’s what you might not know about becoming a software engineer.
Mindset is key.
Being a software engineer is a constant battle of learning new things. Aside from the need to pick up new technologies, libraries, and frameworks, software engineering is all about learning what you need to know to solve new problems and build solutions. As such, a growth mindset is key and what enables anyone to stand out in a sea of technically competent people.
While a computer science degree or a coding bootcamp can help you develop mastery of programming theories or languages, the industry is constantly changing. Technical chops aside, perhaps the most important quality a prospective software engineer should develop is that of being an autonomous learner, i.e. learning how to learn.
Soft skills like empathy and communication matter (much) more than you think.
A large part of being a software engineer is being a part of a larger team driving the product that you’re building. Beyond just programming, the role involves receiving and leveraging feedback, being able to take on different perspectives, and collaborating with different stakeholders – from designers, product managers, marketeers, to other engineers. To navigate this smoothly requires interpersonal skills that traditionally have been under-valued in the tech industry.
Plus, in a time of remote work, communication and empathy are more important than ever. Now that it’s not unusual for new hires to have never met their teammates in person, or for meetings to be held remotely, knowing how to communicate and relate to a remote team – and remote customers – goes a long way.
The world needs more software engineers from non-traditional backgrounds!
There’s a lot that we could say about this, but in a nutshell: Product teams need to be as diverse as the users they’re building for, and having diverse perspectives at the table enables a product to grow to its full potential. That’s an issue and a need in the tech industry that schools like Code Chrysalis (for adults) and Saturday Kids (for well, kids) are addressing.
The reason for this is simple – that you don’t know what you don’t know, and bringing more diverse experiences, knowledge, and perspectives to the table can only serve to help a product cover more bases.
That’s not to say that more boys shouldn’t learn to code, but that having someone from an under-represented group that wouldn’t typically be exposed to programming (for example, an underprivileged female or non-binary person) has a ripple effect that positively shakes up the status quo. (As you can tell, we’re here for it.)
So now that you know what you need to be a software engineer, what’s next?
Here are a few suggestions from Kani and Yan, the co-founders of Code Chrysalis.
Leverage free learning resources before making a big commitment.
There’s an abundance of educational content out there for people who are curious about learning how to programme, and a lot of it is available for free. Signing up for a coding bootcamp is a significant investment of time, money, and energy. With all the free resources available online, there’s no reason why an adult eager to explore a career switch should start from zero before committing to a paid programme.
Do your homework and know what you want.
Learning to code opens lots of doors; and while choosing a vocational bootcamp or course, it’s important to educate yourself about the outcomes they’re preparing you for. For example, the ability to code is necessary for both data scientists and software developers.
But coding aside, the two roles require very different skillsets. While the former is research-oriented and data-driven, the latter centers around building and problem-solving. Perhaps it goes without saying, but knowing your inclinations and strengths and doing your due diligence will enable you to make decisions about your learning and career with more clarity.
With great power comes great responsibility.
Tech has a more pervasive role in our lives than ever before, and this influence and power seems only likely to grow in the future. With the ability to code comes the privilege to play an important role in inventing and building the future, and that’s not something to take lightly.
The need to value soft skills and diversity in tech is more important than ever. That’s why Code Chrysalis aims for (at least) 50% female representation in each cohort, and why Saturday Kids is dedicated to creating more access and opportunity for kids from disadvantaged backgrounds, infrastructure-poor communities, and women and girls in tech. This isn’t just limited to people who care about human rights and social justice, but anyone who cares about the quality of tech, and the future it’s shaping.
So, what do aspiring software engineers need to know beyond learning to code? In short: being an all-rounded, empathetic, independent and collaborative human being. Coding is a superpower but it only goes as far as the person wielding it. Use it well!