Advertisement

A Short Interview for Programmers for a School Research Paper

Started by November 05, 2013 09:30 PM
1 comment, last by Aluthreney 11 years ago

I have been given the task of writing a short research paper on the field of work that I want to go into. My research paper also has to include an interview(s) with an individual(s) in the field I am researching, and so I decided to post some relevant questions here. This inquiry is for video game programmers who have had experience in working for a large company or as an indie developer. The answers you write down will be included in the research paper. If you are comfortable in doing so, please include your real name. If you are not comfortable sharing your real name, I will use your username on gamedev.net to associate your answers with you. You can reply to this post, or send me a PM(private message).

~Thank you.

1. How many years have you worked in game development?
2. What is/was a typical day at your job, pertaining to your work as a programmer?
3. What was expected of you as a programmer?
4. Were there any skills and/or tasks that were required of you that might not usually be expected from a programmer? If so, what were they?
5. What advice would you give to someone who is working towards getting into this field?
6. What challenges were most difficult of overcome while working on a project as a programmer?

- Aluthreney

Aluthreney -- the King of sheep.

1. 7 Years

2. As an indie developer, my day usually began with me getting out of bed at around 15:00. I'd go upstairs, eat breakfast, and spend my time reading e-mails or socialising on some network platform(s) (tumblr, youtube, facebook, forums) with my laptop while I ate. I really started working at around 17:00. Most of my work was done in isolation in my room. I enjoy listening to trance and other forms of smooth music while working. The project had two programmers working on it (including me), and it was mainly coordinated over skype and e-mails. I'd simply work on the more pressing matters, as stated in our issue tracker, and so did he.

Once in a while, we'd meet up in real life and usually sketch down designs and other things on paper together, just to make sure we're on the same page.

I'd work until about 04:00-05:00 in the morning, and would then fall unconscious onto my bed, which was conveniently located right next to my computer.

Working at a company was basically the same. You were also mainly working on your part in isolation, however the working times in which you could work were more sanely adjusted (08:30 to about 17:00). Obviously, the project was far more structured and maintained, but the experience for me wasn't all too different than the one I knew as an indie developer (there was, unfortunately, no bed located in the company right next to my workstation).

3. This is a pretty broad question with a broad answer. The main expectations of a programmer are:

  • Be good at the primary programming language being used
  • Have a broad knowledge of programming concepts, and when to apply what technique
  • Have basic knowledge of all tools being used to make the game you're working on

A programmer is obviously expected to be good at the primary language being used to develop a game (in the case of my indie game: C++, in the case of the company project: C), but I spent a lot of time also working with:

  • Shaders for both DirectX and OpenGL (HLSL, GLSL), and how to set up the rendering pipeline correctly so they can be used in-game. The tool I used for prototyping shaders was RenderMonkey.
  • The horrors of our build system (CMake)
  • Scripting with Lua
  • Various bash scripts

And that's just the programming part. With my indie project, when working together with artists, I was also required to know about 3D model conversion (obviously), image manipulation, sound manipulation, etc. At one point I even had to continue work on the rigging and animation of a model because an artist jumped ship. So I have moderate knowledge of Gimp, AC3D, Blender, T.Ed, CharacterFX, Fragmotion, Audacity, and Inkscape.

Again, at the company this was pretty much all taken care of so I could focus on actually programming stuff.

4. Re-inventing the wheel seems to be something companies love to do. A lot. To this day, I still do not understand why I worked on a custom in-game scripting language which came with its own bytecode compiler, and couldn't just use lua. I tried arguing the case, but at the time didn't have enough credibility to be listened to by enough people.

5. Program. All the time. Work on small projects, learn new concepts, push yourself. Reading other people's code and contributing in other projects helps a great deal as well. Also read a lot of books about the subject, and try to participate in programming groups and on forums.

6. Motivation. There are things that just have to be done, but you lack all motivation to do so. I found strolling around outside for a few minutes every two hours or so to clear my mind helped a lot.

"I would try to find halo source code by bungie best fps engine ever created, u see why call of duty loses speed due to its detail." -- GettingNifty
Advertisement

@TheComet - Thank you very much for your answers; I really appreciate your participation. biggrin.png

More responses are still welcome!

Aluthreney -- the King of sheep.

This topic is closed to new replies.

Advertisement