Computer Science: Representative Job Roles

The following roles represent a flavour of the variety of opportunities that exist with a degree in Computer Science.

  • Application Analyst: Responsible for the administration, monitoring and maintenance of software infrastructures and applications, to ensure integrity, safety and availability of data.
  • Application Developer: Writes programs for technical, commercial and business users; usually works in a team to create a program to agreed specifications and produce detailed supporting documentation.
  • Artificial Intelligence Engineer: Develops computers that simulate human learning and reasoning ability.
  • Cloud Computing Engineer: Applies computing and software development to design ways for sharing information and resources over the internet.
  • Cyber Security Analyst: Works to protect organisations by employing a range of technologies and processes to prevent, detect and manage cyber threats.
  • Financial Computing Analyst: Accurately determines the financial risk that certain financial instruments create using various computational and mathematical methods.
  • Information Systems Manager: Works with a staff of technical specialists to provide and maintain an organisation's hardware and software technology infrastructures.
  • IT Consultant: Gives objective advice on the best use of IT to solve business problems; clarifies client requirements, defines and presents the solutions.
  • Lecturer/Teacher: Could teach computer science in secondary schools or college after taking a Postgraduate Certificate in Education (PGCE).
  • Mobile Computing and Software App Developer: Develops internet applications that run on smartphones and other mobile devices.
  • Multimedia Programmer/Computer Games Developer: Works in a team to write programs that bring together text, sound, artwork, 2D/3D modelling, animation, video and virtual reality to create a multimedia product, (eg, for websites and computer games). 
  • Network Engineer: Ensures the server and network infrastructure is maintained to maximise efficiency, involving installing and supporting new servers, hardware and software, allocating resources and providing technical support to end users.
  • Robotics Engineer: Design, construction and application of robots and computer systems for their control, sensory feedback, and information processing. 
  • Security Software Engineer: Using programming and cryptography to design security systems.
  • Social Computing Engineer: Develops new technologies to form and extend community networks.
  • Software Engineer: Researches, designs, tests, implements and maintains software systems to meet client or employer needs; uses a variety of computer programming languages and applications, working in teams with other IT professional, or alone.
  • Systems/Business Analyst: Works with a client to improve their information systems or recommend new systems; defines the problem, find a solution, costs it - produces a project brief and outlines design for a systems designer to develop.
  • Systems Designer: Designs new IT systems from a technical specification, and is responsible for installation, testing and maintenance. The job can incorporate a systems analyst or consultant role.
  • Technical Support Engineer: Monitors and maintains the computer systems and networks of an organisation, installs and configures computer systems, diagnoses hardware/software faults and solves technical problems, either over the phone or face-to-face.
  • Web Designer/Developer: Designs and codes web pages, liaises with and advises clients, creates web pages, add content and tests the finished site.