Jump to content
  • Advertisement
  • 01/21/15 01:51 AM
    Sign in to follow this  

    4 Simple Things I Learned About the Industry as a Beginner

    Career Development

    Laszlo Fuleki

    For the last year or so I have been working professionally at a AAA mobile game studio. This year has been a huge eye opener for me. Although this article is really short and concise, I`d really like to share these (although seemingly minor) tips for anyone who is thinking about joining, or perhaps has already joined and starting in the professional game development industry. All my teen years I had only one dream, to become a professional game developer, and it has finally happened. I was most excited, but as it turns out, I was not ready. At the time of this post, I`m still a student, hopefully getting my bachelors degree in 2016. Juggling between school and a corporate job (because it is a corporation, after all) has been really damaging to my grades, to my social life, but hey, I knew what I signed up for. In the meantime I met lots of really cool and talented people, from whom I have learned tons. Not necessarily programming skills (although I did manage to pick up quite a few tricks there as well), but how to behave in such an environment, how to handle stress, how to speak with non-technical people about technical things. These turned out to be essential skills, in some cases way more important than the technical skills that you have to have in order to be successful at your job. Now, don't misunderstand me, the fact that I wasn't ready doesn't mean I got fired, in fact I really enjoyed and loved the environment of pro game development, but I simply couldn't spend so much time anymore, it has started to become a health issue. I got a new job, still programming, although not game development. A lot more laid back, in a totally different industry though. I plan to return to the game development area as soon as possible. So, in summary, I'd like to present a few main points of interest for those who are new to the industry, or are maybe contemplating becoming game developers in a professional area.

    1. It's not what you've been doing so far

    So far you've been pretty much doing what projects you wanted, how you wanted them. It will not be the case anymore. There are deadlines, there are expectations to be met, there is profit that needs to be earned. Don't forget that after all, it is a business. You will probably do tasks which you are interested in and you love them, but you will also do tedious, even boring ones.

    2. Your impact will not be as great as it has been before

    Ever implemented a whole game? Perhaps whole systems? Yeah, it's different here. You will probably only get to work with parts of systems, or maybe just tweaking them, fixing bugs (especially as a beginner). These games are way bigger than what we're used to as hobbyist game developers, you have to adapt to the situation. Most of the people working on a project specialize in some area (networking, graphics, etc.). Also, I figured that lots of the people in the team - including myself, I always went with rendering engines, that's what my thing is :D - have never done a full game by themselves (and that is okay).

    3. You WILL have to learn to talk properly with managers/leads, designers, artists

    If you're working alone, you're a one man team and you're the god of your projects. In a professional environment talking to non-technical people about technical things may very well make the difference between you getting to the next level, or getting fired. It is an essential skill that can be easily learned through experience. In the beginning however, keep your head low.

    4. You WILL have to put in extra effort

    If you're working on your own hobby project, if a system gets done 2 days later than you originally wanted it to, it's not a big deal. However, in this environment, it could set back the whole team. There will be days when you will have to work overtime, for the sake of the project and your team. Essentially, I could boil all this down to two words : COMMUNICATION and TEAMWORK. If you really enjoy developing games, go for the professional environment, however if you're not sure about it, avoid it. All of the people manage to be successful here by loving what they do. Love it or quit it. 14 Jan 2015: Initial release



      Report Article
    Sign in to follow this  


    User Feedback


    This is the case with any tech industry.  Game Development is no different when doing it for corporate.  You have deadlines, you have responsibilities, you have coworkers.  I'm really not that surprised at any of this as this is what real life is like for a lot of us out there.

    Share this comment


    Link to comment
    Share on other sites

    This is the case with any tech industry.  Game Development is no different when doing it for corporate.  You have deadlines, you have responsibilities, you have coworkers.  I'm really not that surprised at any of this as this is what real life is like for a lot of us out there.

     

    Yes, and this takes those general ideas and applies them to a specific environment, which may help some whom may not yet have experienced them to conceptualize them better.

    Share this comment


    Link to comment
    Share on other sites

    Also, do not think the industry is more friendly than others.

     

    It may look like everything is cool and relax but it is just an appearance.

    Your colleagues and bosses will act as friends but in the end it is a business and once you are gone, it is all gone, you are just a connection on LinkedIn.

    Even more with your bosses, they may have investors on their backs so you are just a mean to an end. Nothing else.

     

    My advice, do your things, smile a little, go home, repeat next day.

    Share this comment


    Link to comment
    Share on other sites

    Why I am becoming a mechanic. I know that this kind of environment is not for me...I worked as a professional software developer for over a year and knew it wasn't for me. I like to keep it as a hobby plus I still do freelance.

     

    I don't do this stuff because I want to be the robot that sits in his desk all day...I want my projects to really mean something to me.

     

    Also sucks when you are programming all day and go home and don't feel like programming anymore :( It's so much nicer to work on cars and come home and be able to do my software stuff to relax.

    Share this comment


    Link to comment
    Share on other sites

    I enjoyed this article, interesting stuff. Agree with the comments, there are many comparisons in my non-game programming job.

    Share this comment


    Link to comment
    Share on other sites

    I'm a student like you too going to get my B.Tech Computer Science degree in 3 years. Thanks for the tips, friend.

    Share this comment


    Link to comment
    Share on other sites

    Why I am becoming a mechanic. I know that this kind of environment is not for me...I worked as a professional software developer for over a year and knew it wasn't for me. I like to keep it as a hobby plus I still do freelance.

     

    I don't do this stuff because I want to be the robot that sits in his desk all day...I want my projects to really mean something to me.

     

    Also sucks when you are programming all day and go home and don't feel like programming anymore sad.png It's so much nicer to work on cars and come home and be able to do my software stuff to relax.

     

    Obviously as a green you're gonna do robot work, but if you really want to get into the projects, just be good at what you do, and improve on what you can. With time and experience you get to have a much bigger word.

    Share this comment


    Link to comment
    Share on other sites

    I have to say that the tips here are absolutely dead on for just about every software company I've ever worked for.  

     

    - You are not writing code for "you", but for a company that delivers a product.  

     

    - Your job is not about your need to write code or create, those needs are secondary to the company getting out a product, the team working together to deliver that, and you contributing to that success.

     

    - Technology is easy, people are hard.  This is so hard to see when all you have to do is "write code".  People are not logical.  People are people. Learning to deal with them is not just about your job, it is about life. 

     

    - The success or failure of your project will rely 10% on technology and 90% on the management and interpersonal relationships of your team.  One militantly bad player or one bad manager can really sink the ship.

     

    - This is not specific to gaming or even software. 

     

     

    As to the "crushing hours and lack of personal life" thing...

     

    I've worked for companies where "crunch time" only came a couple times a year.  I've worked for some where it was all the time.  I prefer the former (as most sane people should).  Regardless of how it got that way or why it is that way, writing code is not an assembly line process and small mistakes creep in when minds are not well rested.  On the other hand, when you run out of good options (as in places to work), all you are left with is bad ones.

    Share this comment


    Link to comment
    Share on other sites

    COMMUNICATION and TEAMWORK

     

    This is really the key for any job. You can be the master of your field but if you can't talk or get along with coworkers you are worthless to the company. A lot of tech people don't get this. They figure because they are experts in their field that's all that's needed and that's what is most important and that's just not true. 

    Share this comment


    Link to comment
    Share on other sites

    This is why I gave up on the industry a few years back. I don't work well with others so I'll stay to being nothing more than a hobbyist. You add in the controversy going on in the industry right now and not the kind of thing I'd want to throw myself into.

    Share this comment


    Link to comment
    Share on other sites

    It applies to any other tech industry. I think you have just found grown up life with responsibilities on the personal and working fields.

     

    I have left the industry after 15 years. I grew tired of it, mostly because of being underpaid and because of a crunch which was happening more than just few times a year. Hell, sometimes it felt as if it was part of my contract to stay long overtime. I still work on games but only in my own time. My daily job is more a hardware related rather than software. Also pays lot better and maintains better life/work balance. It took me 15 years to realize how broken the industry is.

     

    From what you wrote, I think teamwork and proper management ( also self-management ) are keys to success. The company is a huge machine with many gears. To keep it running it's necessary to make sure all gears work fine. Not all gears are equal though. Finding yourself inside of that machine is essential if you want to be able to do your job. This is another thing. You have to do your job, not do what you want. The lower position, the less you have to say and the final call will always come from leaders of team or department. I've seen people leaving the companies because of this lack of freedom. Obviously sometimes you clearly see, the decisions are being made wrong but since you're powerless to change things - you grow frustrated ;) I could tell lot about frustration in the game industry smile.png

     

    As for beginners I would give one advice - know your value. I think this is one of the reasons why the industry is so broken, why crunch is known as something normal ( and believe me - it isn't! ), developers don't even ask about paid overtime ( good if they get days in lieu ), and they do more than expected without any reward, especially financial. Before you have any responsibilities other than just yourself it may be tempting to agree to anything. Just for a sake of working on the big titles you're gonna agree to really bad conditions of your contract, because simply it's cool to have own name in the ending credits smile.png In the long run though, the name in the final credits will not pay your bills, will not give you more time to spend with your family etc. Employers see this situation as something normal ( and again - it is not! ). I'm not saying all companies are like that, but majority of I worked for didn't leave good impression. Don't get me wrong, I'm not blaming anybody, but it's good if even beginner could see himself/herself in 5-10 years from now and make expectations that would not leave industry broken. From the point of view of the engine programmer the games industry is the lowest paid I've ever experienced.

     

    So make dreams come true, but for the right pay ;)

    Share this comment


    Link to comment
    Share on other sites

    Hello all,

     

    Here is my take : I've been in the game's industry for nearly 3 years now, and previously worked for a year on mobile Apps (multimedia and productivity) - I agree with 1 & 3, but am not so sure about 2 & 4.

     

    The expression "having an impact" may be interpreted differently, based on how you view your job and your work. From a point of view of the number of characters in the code base that will be a result of you physically pressing keys on your keyboard, then no... This is a specialist world, and specialists will get to work on their areas of expertise and there is a good reason for that : no one wants a cowboy programmer going in and hacking in features in systems he/she is not familiar with - this is bad for the business and for the other programmers who have to mop up behind.

     

    On the other hand, you will and should have an (positive) impact on your team and work colleagues - having an impact is about sharing ideas and contributing to the company in a personal and professional way : you get to suggest technical solution, help build and shape the future of the company, make friends, strap yourself to the code wolf of the company and pick his brains until you are ready to take his place.

     

    I cannot really say I have experienced any overtime, not forced at least. My job is my passion, so there has been times where I have personally decided to stay in the office a little bit longer to finish something off. I have never been forced to stay, or been asked to work overtime unpaid. Maybe I have been lucky with my work places?

     

    I would add to 3 that it isn't a good idea to keep your head low - on the contrary as a beginner you should constantly be talking to people and striving to learn anything you can from the best. Forget about your personal ego, all these cool games you've made and/or rendering features you've implemented during your years at uni/college - you will soon find out that there is a trick to the trade and it is very much an organic way of working as opposed to text book academia stuff you are taught in your studies.

     

    Two points I will add to the list:

     

    30% of your time writing up emails, 50% having discussions and attending meeting and only 20% actually writing code. For good reasons, if you lock yourself in a room and have to hammer down at your keyboard writing code from 9 in the morning until 5.30 closing time, then there is something seriously wrong with your work methods & it is likely to harm you, both mentally and physically.

     

    You will learn to despise technical debt. Bugs are bad, missing features annoying, but technical debt is the root of all evil - be ready to deal with those, having to juggle between spending days re-factoring entire systems or succumbing to the workaround that has been in the code-base for years, de-cyphering code that has been modified by a gazillion programmers getting worse with every iteration, and crying in a corner when the only person who knows how the system works has moved to another company and now owns a yacht.

    Share this comment


    Link to comment
    Share on other sites

    One thing that I have learned to do to help me "dumb down" bits of code was practice doing it with my homework assignments.  As I worked on it I would either explain what bits of code did in simple terms to a friend that knows nothing about programming or, and I know it kinda sounds crazy but I have heard of other programmers doing this too, I would grab an action figure or rubber duckie or something along those lines and explain it to that.  The thought being: if I can't explain it in simple terms, then I don't actually know what is going on or understand it, and this is a check to help me find what is wrong in a bit of code that I'm having trouble getting to work.

    Share this comment


    Link to comment
    Share on other sites


    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!