Welcome from the Head of Department

Welcome from the Head of
Department
The Department of Computer Science at the
University of Auckland is the largest and most
diversified Computer Science department in New
Zealand. The department has a strong research
focus, with more than 40 academic staff actively
undertaking research, much of it in collaboration
with international researchers and local and
international industry. We have the most PBRF
“A” rated researchers in Computer Science of any
tertiary institution in the country and have been
ranked 38th in the world in the prestigious QS
university rankings. We boast strong research
expertise in the areas of algorithmic information
theory, artificial intelligence, combinatorics, data
communications and networks, distributed
computing, graphics, computer vision, logic,
knowledge-based systems, robotics, software
engineering, software security, theory of
computation, visual programming, Human
Computer Interaction, databases and computer
science education. This means our degree
programmes are leading edge, our graduates are
well prepared for the challenges of the dynamic
and fast growing software industry and are very
much in demand by industry employers.
We offer a very broad range of courses spanning
almost all aspects of Computer Science. This
handbook describes the courses covered by the
department, together with information to assist
you in planning your degree programme.
All the best for your study in 2014.
Professor Robert Amor
Head of Department
What is Computer Science?
Computers are everywhere, and influence many
aspects of society, from the enormous impact of
computer games, social networking, email and
the web, through airline ticket booking and
navigation systems to banking. There is an
expectation that these technologies will behave
safely, reliably and responsibly. As a result, the
need for Computer Science graduates has
increased dramatically, leading to a skills
shortage across the IT sector.
The skills of logical thinking, problem solving,
abstraction and systematic analysis acquired
through the study of Computer Science are highly
transferable to other disciplines and greatly in
2
| 2014 Computer Science
demand. As technology improves and becomes
an integral part of our society, it shapes and
defines the way we live. An understanding of
computers prepares us for a modern, web based
and mobile society, and allows us to cope with
the rapid changes in technology.
Computer Science study includes the following
broad topics:
•How computers and computer systems work –
architecture, systems software, programming
languages, data communications, networks,
security and robotics
•How computers manage information –
algorithms, data structures, databases and
data management
•Applications of computers in society - artificial
intelligence, human computer interaction, the
internet, computer graphics and computer
vision
•The limits of computers – computability and
complexity theory.
Careers in Computer
Science
While businesses have made extensive use of
computers for many years, there are now
significant uses of computer technology in many
other industries, such as manufacturing,
transport, communication, health care and
entertainment. In particular, the internet and
mobile devices are changing the way we
communicate and the way in which business is
done. Almost all companies today make use of
computer technology and require professional
staff with computer expertise to develop and
maintain the systems they use. Software
development, a focus of studies in Computer
Science, plays a major role in a wide range of
businesses and industries.
Because Computer Science teaches you how to
solve problems using a computer, graduates can
find work in many fields. Graduates can get jobs
designing and implementing software. This can
include work involving web development,
interface design, security issues, and mobile
computing. They also find work devising
innovative ways to use computers or developing
effective ways to solve computing problems.
Computer Science graduates can also be involved
in planning and managing the technology
infrastructure of companies and other large
organisations.
There is a continuing shortage of skilled
computing specialists in New Zealand at the
moment. Here are some examples of the variety
of computing occupations that are available in
today’s job marketplace: •Internet/Multimedia Developer
•Telecommunications Specialist
•Database Developer
•Security Architect
•Network Architect
•Network Support •Software Architect
•Software Developer
•Business Analyst
•Software Engineer
•Systems Architect
•Systems Administrator
•Technical Consultant
•Website Developer
Even professions that are not directly involved in
information technology need IT specialists.
Banking, engineering, biology, health care,
teaching, entertainment - there’s scarcely an
industry left nowadays that has not assimilated
some level of computing technology. And they all
need people with computing skills to keep them
up to date. No matter where your interests lie,
computing knowledge will always be an
advantage.
2014 Computer Science |
3
What can you do with a
Computer Science degree?
George Ianovski
George Ianovski is the first student at the
University of Auckland to be awarded a Master
of Science in Logic and Computation. Logic and
Computation is a field that combines ideas and
techniques from Computer Science, Mathematics
and Philosophy. It investigates the laws and
methods of reasoning with symbolic
representations - examining the structure, design
and limitations of symbolic representations and
procedures in human thought and computer
software.
When George began his studies, he says “I didn’t
have a clear idea of what I wanted to study when
I entered university, and a degree in Logic and
Computation allowed me to dabble in a number
of different fields.” He also encourages others to
venture into the sphere – “Don’t let the
abstractness scare you off. There is reason to this
madness, and it all comes together in the end.”
George chose the University of Auckland because
of the open environment, which made it easy to
meet people from other disciplines and explore
the problems they study. He is presently reading
for a Doctor of Philosophy in Computer Science at
the University of Oxford in England. He studies
the way logical and computational techniques
can be used to study game theory, and
conversely the way game theoretical techniques
can lead to a better understanding of logic and
computation. George often takes advantage of
the proximity of Europe to travel. A conference in
Switzerland can lead to skiing in the Alps or
exploring the castle Chillon. George sorely misses
the amazing coffee at the Orbit Café on the
University of Auckland city campus.
YuFeng Deng
YuFeng Deng is a software developer for M-COM
(now part of Fiserv). He designs and develops
software and maintains his expertise in software
technology, tools and techniques in order to
support other staff members. This collaboration
ensures the success of M-COM’s mobile banking
software projects. “In M-COM, I have the
opportunity to keep in touch with various new
technologies. I have participated in quite a few
projects and done some platform, web and
mobile work. I have gained a lot of skills. These
include CSS, JavaScript, Objective-C, Xcode
Interface Builder, C#, Java and so on. It’s great
that I can do what I want to do, and learn what I
want to know.
” YuFeng admits that he would
never had been able to do this job without the
knowledge he gained at the University of
Auckland.
YuFeng graduated from the University of
Auckland in 2009 with a Bachelor of Technology
in Information Technology. “Unlike most students,
I chose to study Computer Science without
considering my career future. I chose it simply
because I like computer technology. Fortunately, it
was one of the wisest choices in my life.
”
YuFeng encourages others to follow in his
footsteps, saying “Computer Science is fun. When
4
| 2014 Computer Science
solve real-world problems; in my case, problems
that can actually save lives since I’m working in
the healthcare domain.”
you play Angry Birds or Temple Run on your
mobile devices, you feel happy. But I believe that
the authors are happier. You can spend the whole
night renaming the millions of songs on your hard
drive - I have done that by running my own
written script in a few minutes.
Computer Science
is useful for your life and for your career. Check
the job websites and find out how many jobs are
available.
”
Thusitha Mabotuwana
Thusitha completed his PhD with us in 2010. He
works for Philips Research in New York as a
Clinical Informatics Research Scientist. His job
involves working closely with clinicians to
understand their routine workflow and developing
new and innovative software-based solutions that
can help improve the workflow efficiency. He
routinely develops research prototypes (primarily
using .NET technology) that are then
demonstrated to clinicians to get their feedback.
Once the prototypes reach a certain level of
maturity, typically after multiple iterations, the
software development teams take over and
integrate the research prototypes into product
platforms that are eventually sold to thousands of
users. Thusitha enjoys his job, saying “The best
part is having the freedom to explore new ideas
and applying what I learnt back in University to
“ I have always been an analytical person and
loved to understand things instead of simply
memorizing. As a result, I chose to take
Engineering instead of trying to get into a field
such as Medicine. During my undergraduate
studies in Computer Systems Engineering at the
University of Auckland, we had the opportunity to
take a few Computer Science electives and I
absolutely loved these classes. I developed a
passion for developing software systems and
wanted to further my studies in an area where I
could apply technology to solve real-world
problems. Computer Science was the perfect
place for this and I enrolled in a PhD where I
could pursue my passion of solving challenging
real-world problems while also having the
opportunity to delve deeper into understanding
the finer technical details. “
Thusitha champions the study of Computer
Science, saying that “If you like working with
computers and want to create new technology
that can have a positive influence/impact in
others’ lives, Computer Science will be a great
choice. It’ll be a great stepping stone that can
open up many opportunities for you in the future,
so follow your passion, and aim high.”
2014 Computer Science |
5