Computer Programming
  • Home
    • ICT Class Website
    • Computer Science Discoveries
    • Orientation >
      • Careers in Programming >
        • Let's Get a Job in Video Gaming
      • WebQuest
    • Resources
  • Daily
  • Theory
    • Crash Course CompSci
    • Theory Topics >
      • Architecture
    • ICT Workout
  • Coding
    • Code.org >
      • Hour of Code Express
      • Beyond One Hour of Code
    • Scratch >
      • Super Scratch Programming Adventure! >
        • Scratch 1.4 Part 1
        • Scratch 1.4 Part 2
        • Scratch 1.4 Part 3
        • Scratch 1.4 Part 4
        • Scratch 1.4 Part 5 & Test
      • Scratch Projects >
        • Space Shuttle Mission
        • Scratch 2 Tutorial Video Projects
    • NC Lab >
      • Karel the Robot >
        • Karel Unit 1
        • Karel Unit 2
        • Karel Unit 3
        • Karel Unit 4
        • Karel Unit 5
        • Karel the Robot Assessment
      • Python 1 (1.1) >
        • Python 1 Unit 1
        • Python 1 Unit 2
        • Python 1 Unit 3
      • 3D Modeling (PLaSM) >
        • 3D Modeling Unit 1
        • 3D Modeling Unit 2
        • 3D Modeling Unit 3
        • 3D Modeling Unit 4
        • 3D Modeling Unit 5
        • 3D Modeling Assessment
    • CodeHS >
      • Intro to Computer Science >
        • Animation & Games
        • Basic Data Structures
      • Computing Ideas (Lovelace)
      • Intro to Python
    • CodeCombat >
      • Computer Science Levels
      • Game Development
      • Web Development
    • Game Design >
      • GameMaker >
        • Evil Clutches
        • Galactic Mail
        • Lazarus
        • Super Rainbow Reef
        • Koalabr8
        • Wingman Sam
        • Tank Wars
        • Tic-Tac-Toe
        • Pyramid Panic
        • Fighting Game
        • Misc. Games
      • ActionScript 3 >
        • Beginning AS3
        • Game Programming University >
          • Lessons 1 - 8
          • Lessons 9 - 15
  • Projects
    • Ethical Use of Technology
    • Intro to Programming
    • CTE Programming
    • Game Design - Hero's Journey
  • Finals
    • Semester 1
    • Semester 2

Careers in Programming

Let's Go!!
video game schools
Picture
In these assignments, you'll learn how the career path in Computer Programming and Computer Science can lead to rewarding and satisfying careers. You'll also study jobs that are likely to grow in the future.


What Does a Video Game Programmer Actually Do?

Quite literally, everything you see in a video game consists of 1’s and 0’s – in other words, code! After the video game designers of a project has created the game’s rules, concepts, etc., it is up to the video game programmer to create the actual game. In the same way that an architect designs a building and passes along the blueprint to a team of carpenters, so too does the video game designer do the same for the video game programmer. In a sense, video game programmers are the carpenters of the project!


Video game programmers must program everything related to how the video game operates. From programming the speed of objects in a game to the reflections from a pool of water to how a weapon swings and hits an enemy character, the video game programmer has a lot of responsibility regarding how the game actually plays.

The video game programmer is also responsible for ensuring that the code in the video game does not force the video game to crash between gameplay. It is up to the video game programmer to ensure that the game plays smoothly, continuously.

With such a huge responsibility, a team working on a video game will usually have quite a few video game programmers working on the game simultaneously. There is a lot of code that must be written and incorporated properly in order for the video game to operate properly and to also ensure that video game is released on time. Moreover, there are also many different job titles associated with video game programming as well. Let’s take a look at a few of them.

Lead Programmer

As the name implies, a lead video game programmer is essentially leads the video game programmers on a video game. While the responsibilities do vary from one video game studio to another, at its core, a lead video game programmer will be responsible for overseeing work that is being done by other computer programmers on the project. A lead video game programmer will also need to possess managerial qualities as well, as they need to ensure that their fellow video game programmer’s code is properly used, programming tasks are completed in a timely manner, etc.

AI Programmer

The way a non-playable character (NPC) moves, the tactics a computer-controlled enemy uses to attack, and even the way a ball rolls across the ground in a video game are possible thanks to an Artificial Intelligence (AI) programmer. Literally, an AI programmer’s sole job is to give a video game a brain – to ensure it feels as if it is living and breathing. An AI programmer will program code and create algorithms, program camera control in-game, and even dictate how a blade of grass on the ground moves when the wind blows on it.

An AI programmer will also control how characters in-game react to the player. If the player shoves an NPC in-game, the average player would expect them to react to the shove. Thus, that is where the AI programmer comes in – to give the NPC a ‘brain’ and program them to react naturally to the shove (or any other actions).

AI programmers must enjoying solving problems while being creative. Moreover, a knowledge of physics as well as technical writing is also preferred as well.

Engine Programmer

A video game engine programmer literally programs the foundation for which the video game is built upon. In the same way that an engine must be present for a vehicle to move, so too must a video game engine be used in order for a video game to operate. Without a video game engine, it is impossible for a video game to even boot up. In short – without a video game engine, a video game cannot exist; making the role of the video game engine programmer invaluable.

A video game engine programmer must be detail-oriented, patient, and know a wealth of computer programming languages in order to program an engine properly.

Video game programmers should also learn the following programming languages:

  • Ruby
  • C++
  • C
  • Assembly
  • Java
  • Perl
  • Lua
  • Python
A willingness to learn is also invaluable for a video game programmer as well – especially since commonly-used programming languages change on a continual basis. Moreover, becoming accustomed to learning a few computer programming languages with aid aspiring video game programmers to learn future computer programming languages easier than before. Learning a computer programming language is a lot like learning a foreign language – the more you learn and practice, the easier learning future languages become.If you have a passion for video games and love solving problems, thinking ‘outside the box,’ and being creative while always being detail-oriented, then a career as a video game programmer may just be in your future.