Before starting, let me present myself: I’m Roger and I’m a software intern at Promine. I’m currently studying software engineering at McGill University in Montreal. Now that introductions are out of the way, let’s address the hottest subject when discussing the software industry: Money. If your reason to get into it is money, you’re kind of in the right place, but not really. See, it is undeniable that you can make a substantial amount of money in the software industry, but you first need to be dedicated and passionate about your work. Therefore if your only drive is the green stuff, you’re probably gonna end up switching careers after 3 years. Anyhow, let’s get into our 5 questions.
- Do you like puzzles?
Programming can be summed up to solving puzzles. Every time you will be required to write code, it will be to solve a problem. Every time you will have finished a piece of code, it will be because you have solved that problem. Programming is all about the highs and lows. You will first start full of determination and hope, then get stuck and go through a period of depression, and finally, reach your goal with an intense sense of pride towards what you have accomplished. I might be dramatizing a bit, but it is always some variation of that process. Sounds like a process you could get behind? You are at the right place.
- Are you a team player?
If you’ve ever seen Silicon Valley on HBO, you’ll know that good software is produced by great teamwork. Programmers often need to communicate their ideas orally, textually and programmatically. Modern software architectures are too complex to create alone and need a lot of preparation and discussion to develop. You will spend a lot of your time in meetings discussing the improvements that need to be implemented, presenting your work and talking about bugs. If you believe in making a whole greater than the sum of its parts, you will find what you are looking for in software.
- Do you love learning?
Software is the most rapidly evolving industry in history and to keep up with it, you need to be passionate about learning. Learning new programming languages, new APIs, new frameworks, new everything. Every single day is a learning experience. It is not uncommon to have to learn a new programming language in just a few days for an interview or a new project you have been assigned to. If you love the feeling of mastering something you barely knew anything about the week before, software is most definitely right for you.
- Do you enjoy being creative?
From syntax to style, it sometimes feels like programming has more in common with literature then mathematics. Every programming language has their little nuances, areas they are good and terrible at. Assembly code could be compared to latin, as it is at the source of most languages but is almost completely forgotten. Every problem has a million ways to be solved. The solution could vary in logic, architecture, structure, but when the deadline is near, the only thing that matters is that it does the job. So if you like to think outside the box, sometimes under pressure, you will find your fix in software.
- Can you appreciate failure?
I know that few people will say that they crave failing. Failure is by no means a good feeling that you should seek. However, it is a valuable step in software development that every programmer can appreciate. Like everybody, you will fail over and over again. Bad algorithms, broken code, terrible interviews, those are the rites of passages that will shape you into a great programmer. As Kelly Clarkson taught us, “What doesn’t kill you makes you stronger”. Thus, if you can accept your failures and see every one of them as an opportunity to improve your craft, I can assure you software will suit you like a glove.