Turn your hobby into your career by becoming a Software Developer.
Software Developers are the creative minds behind computer programs. They design based on how they think the user plans to use the software, and either give instructions to Computer Programmers to write and test computer code or they write and test the code themselves.
After a program is released, Developers will often add upgrades to improve its functionality and repair any glitches.
There are two types of Software Developers:
- Application Software Developers: They design computer applications like word processors and games.
- System Software Developers: They create the systems that keep computers running like the operating systems in cell phones and cars.
Many Software Developers work on a project from concept to launch, often solve problems and design programs that make people’s lives easier.
What does a Software Developer do?
Job responsibilities can include:
- Review current systems and suggest areas of improvement
- Work closely with analysts, designers and programmers
- Create detailed product specifications
- Write, test and rewrite computer code
- Test, improve and retest software
- Preparing training manuals
- Maintaining systems
Who hires Software Developers?
Software is an important part of many businesses and in a variety of sectors. That’s why many Software Developers work for computer systems design and related services firms or software publishers, while others work in computer and electronic product manufacturing industries, transportation, retail, finance or insurance.
It’s helpful when Software Developers are knowledgeable about the industry they work in. This helps Developers who, for example, work for a retailer understand the retailer’s business and their computing needs.
What are the educational requirements?
Software Developers usually have a bachelor’s degree, typically in computer science, software engineering or a related field like mathematics or science. Some employers may prefer a master’s degree for some positions.
Students should focus on learning practical skills to be more employable, such as how to build and use different types of software as well as create and read computer code.
Even after graduation, Developers should look to improve their skills and knowledge by enrolling in seminars and courses, and reading recently-published books and industry blogs.
A computer science degree is the most common because the program tends to cover a broad range of topics. A number of colleges, universities and technical institutions across Canada offer computer science programs, including the University of Toronto, the University of Waterloo, the University of Northern British Columbia (UNBC), Dalhousie University, McGill University and the University of Calgary.
What skills do Software Developers possess?
- Expertise in computer hardware and software
- Knowledge of one or more computer coding languages (see below for more information)
- Strong communication and time management skills
- Ability to work in a team or individually
- Knowledge of the client’s business and their computing needs
- Attention to detail and a problem solver
- Willingness to be wrong and learn from your mistakes
Which types of computer coding languages should you know?
According to an Internal Drive report titled “10 Steps for Becoming a Professional Software Engineer,” some common languages used by software developers and programmers include:
- Visual Basic
- Microsoft .NET
- Ruby on Rails
- Microsoft XNA
The more you know, the more employable you’ll be. Employers are looking for people who are passionate about technology and have a desire to build great software.
How to get hired
Supplement your education with informal learning, participate in a student club, think tank or hackathon, volunteer or intern at a technology company during your summers, or start a blog. These initiatives will help you stand out from your peers.
Follow these 10 technology interview tips for students and new grads from a University of Waterloo career advisor.
What can you do right now to improve your skills?
- Write code for fun—you could make some money off what you create
- Design code before you write it
- Improve the code as you write and continually redevelop your code
- Write code that can be easily maintained by someone else
- Read and study someone else’s code
- Learn about Canada’s rising technology companies
- Start a blog to showcase your work and anything you find interesting
- Attend a local technology conference
Photo credit: Wonderlane