In the follow-up to the first part of our recent Inside Crytek Interview, Junior Programmer on the CryENGINE® 3, Michiel Meesters, answers your questions about his day-to-day work.
How can a programmer show his work in a portfolio? Show the source code? What does your portfolio look like?
The best thing is to show projects. Show games you have contributed to or interesting simulations you have done. The easiest thing is to create a video of it so it can be reviewed quickly. Some people like to put some code snippets to show their coding style or to show off how clean they code. I didn’t do this as the coding style will most likely be different from company to company. Some companies might request a code sample from you specifically, so it is wise to have something ready for that. For my portfolio, I posted small projects I did for university, like audio, graphics etc., and a few game projects I did for school or for a previous company as an intern. Make sure the portfolio is clean and can be reviewed quickly. Companies get loads of applicants and need to be able to get a quick and good impression of your resume and work.
Can you describe your normal day from start to finish? What do you do and what are your working hours?
Days vary a lot depending on the tasks I am working on. Usually I get into the office, get my PC and everything running. First I check if I have any urgent mails concerning bugs or tasks. If so, I will deal with them first before continuing what I was working on. The rest of the day depends mostly on the task. Work varies from doing bug fixes, providing support to licensees, implementing new features and debugging for PC and various consoles. The work provides a very broad task list which never gets boring. Every day you will interact with your team to discuss problems and features or with licensees that you need to support. Therefore, part of having a productive day is also making sure you can do chunks of work. So I will work on some small bugs in the morning and on a big feature in the afternoon or on a feature for one console in the morning and the other in the afternoon, I try not to mix too many tasks at the same time. My days always end at different times as well since I don’t want to leave in the middle of a bug fix, so I always try to tie things up before going, or at least leave it in a state I can easily pick up from in the morning.
How does the salary compare to the rest of the software development industry in Germany?
The salary depends on your experience and position within the company, but I think it is comparable to other companies for game programmers and software developers. I have worked in three different countries, and the salary differences are not that big from what I’ve seen. I suggest you find a place you would like to work at and worry about the salary later.
What is the main difference between Junior/Normal/Senior programmers?
The main difference would be, as you would expect, experience and responsibilities. In very basic terms, Junior is your normal entry level on which you will gain experience in the industry but also with the product you work on. When you move up to “normal” or “regular” it means you have some experience (usually about 2 years) and also that you can work on your own. Senior means you also are able to supervise other programmers and take decisions for the product, this means helping them with problems and answering questions etc.
What is your educational background? How important is experience in the games industry compared to normal software development?
I have done a Bachelor in Software engineering and I have studied Game Programming for about two years. I think in any field experience plays a big part. Working in different companies, with different people and on different products (games, mods or engines) will greatly improve your skill set and will allow you to work quicker, more efficiently and you will be better at working in different teams. Of course education is necessary and a good base, but in my opinion you will learn the most by getting experience and actually doing a job you enjoy.
Are any of your colleagues studying part time? How does Crytek support this?
No, all colleagues are working full-time here. Crytek does have interns, who are still students but they also work full-time for 6 or 12 months. I have done part-time software development, and even been a part-time intern at a smaller game studio and I would not recommend it. At the times you are not in the company you lose valuable progress information and people cannot count on you since you are away for 50% of the time. This means less interaction with your team and less time to spend on a task. I would suggest doing an internship, or wait till you are done with your studies to join a company, unless you want to start one on your own and spend a lot of free time on it of course.
Thanks for sending in your questions! Stay tuned for the next Inside Crytek article.
that is really useful, interesting and informative