Venture into software engineering
THE advent of technology has created a myriad of career options for students to pursue. Among them is the field of software engineering, which has infiltrated many aspects of our lives.
A common question asked by many is: What’s the difference between a computer science degree and a software engineering degree? While there are common elements between the two, it is easy to deduce that software engineering is a branch of computer science.
Computer science is a highly technical field where students study computing theories and computer-related functions such as algorithms and computer networks.
Software engineers have the attributes of computer science graduates. They come with added knowledge and skills, including quality assurance and software designs. They are also equipped with non-technical aspects such as managing client relationships to software teams, and time and budget planning.
While there is no hard and fast rule over which degree is better, a prospective student’s decision would depend on their area of interest.
Computer science graduates often have the title of “programmers” tied to their heads, while software engineering students are called software engineers. In reality, both these terminologies are used interchangeably.
Monash University Malaysia is the first university in Malaysia to have a four-year honours programme in software engineering while the university’s computer science programme is three years long.
At Monash Malaysia, both the School of Engineering and School of Information Technology manage the software engineering programme. Among the subjects taught in the university is the Agile process, a type of software development methodology. The Agile process works by breaking a software development project into chunks.
For example, to develop a software with 100 features, the software programmer would start by choosing its 10 important features before undergoing six phases: analysis, design, coding or programming, testing, delivery and maintenance.
Upon completion, these 10 features are delivered to the customer. However, software engineers work with limitations, as there may be only a handful of software engineers within a company to test the developed system. Once the product is handed to the customer and is used by others on a large scale, problems may crop up. This is when software engineers proceed with maintenance works with which to analyse problems and find solutions. The process continues with the 10 features until completion.
The Agile process enables software engineers to fix errors more efficiently than the traditional method known as the Waterfall model. The Agile environment emphasises team collaboration and is less bureaucratic.
Monash’s software engineering programme is a combination of coursework and research projects, with the latter done by fourth-year students.
Some of the popular models covered in the university’s Agile class include Scrum, XP, Kanban, FDD and Lean. Apart from learning to code and gaining experience in the Agile process, graduates acquire various skills including quality assurance and software security upon graduation.
Students learn how to analyse and solve clients’ problems and improve their interpersonal and intrapersonal skills, the non-technical aspect of the course.
Top performing students from each intake have the opportunity to participate in the university’s Industry-Based Learning (IBL) programme. It is a six-month programme that sees students gaining industry experience and engaging in real projects with global organisations.
Prospects
Software engineers are required by key industries and companies to sustain their growth.
Graduates can work in various fields, from healthcare to banking and tourism, with numerous opportunities for employment, as a game developer, IT consultant and planner or working in IT start-ups. Software engineers also have opportunities to work for world-class companies.
The software engineer career path suits many personalities, including those who prefer working from home to those who enjoy dealing with people.
■ For more information on the programmes available in the School of Information Technology and the School of Engineering, visit www.monash.edu.my/it and www. monash.edu.my/engineering.