How to work more efficiently and develop games faster

About

GamedevStation is the one-stop shop for upskilling in games online.

Pretty much every game dev sometimes (or often) struggles with getting their work done on time and ensuring they are working as efficiently as possible. In this guide, you’ll find a few rules to boost efficiency and help you develop the ability to stick to any deadline.

Are the senior devs way faster than you? Do they seem to have some supernatural power that enables them to just click around and finish whatever they are working on fast, and well done? Spoiler: they’re not supernatural. They don’t have a higher APM or the ability to think faster than you, but they do have time and experience under their belt. And with these components come well-refined techniques for working efficiently.

If you’re fairly new in the game dev field, we’re here to help. Below we have listed a bunch of rules, which you can apply to your work in order to get a headstart towards seniority and ensure you’re right on schedule. You’ll find more resources on this topic (which have inspired and helped us write this article) listed at the bottom. 

Planning isn’t about constraining your creativity; it’s about creating a roadmap for your vision to thrive. Kickstart with a solid plan. A general saying in the industry at that you should take your estimated time and double it up. This especially applies if you’re new in game dev, or if you’re in a project with tasks that are new to you, which by the way happens all the time. Game development is a field of constant exploration and being forced to face things you don’t yet know is an everyday occurrence.

By expecting things to consume more of your time than you think they should, you’re ensuring that you’re giving yourself enough space to face any new challenges you might encounter.

Planning to be early is another good way of making sure your time scope is enough. If you’re aiming to finish just on deadline you’re doing yourself a massive disservice, trying to mentally avoid the inevitable – all the things that can (and probably will) take longer than you think they should. Do so, and you will end up late. 

Always plan to finish any project earlier than you have to. The worst thing that could possibly happen is that you end up with more time to refine and make your work even better.

If you don’t have a target, deadline, or goal, you will likely achieve less than you’re capable of, so if you didn’t receive a deadline, give yourself one. Having a specific target will help you focus on what’s actually important. It will give you a better foundation for prioritizing what you should be doing and what shouldn’t be your priority. If you can’t hit your deadline or meet your target – awesome! This gives you an opportunity to reflect on why. 

Targeting and self-reflection will help you learn about who you are as a developer, what your strengths are, and what you should be working on improving.

This is a trap that’s easily fallen into when you’re new in game development. Instead of taking a step back first, thinking about how to prioritize and approach a project, you head into it with the idea that it has to be a certain scope. You might be thinking that your level needs to be 15 minutes long or that you need X features. The scope can be a part of the quality, but quality often can be achieved in other ways too.

A good mindset on this matter is thinking about how to achieve mindful decisions and aim to make as much as possible, with as little as possible.

If you’re asked for a time estimate for a certain project, don’t oversell by promising less time than you actually think it will take you. Instead, undersell and say it will take you 10 days when your estimate would actually be 8. By doing so you enable yourself to become someone who always delivers on time and whose work is always well done.

Undersell your time estimate will leave room and space to overdeliver. Rushing things will never be your road to quality.

If you want to be more efficient, you’ll have to ensure you’re doing it well and in the right order. Write clean code and test what’s most important and uncertain first. If you don’t, they could mean huge trouble and time consumption later on in the process. When you test the most difficult and complex aspects of whatever you’re working on first, you’ll have the possibility to correct and adjust along the way.

Have you worked on other projects and features before that came out great? Always try to save and reuse good general code in order to speed your work up without losing out on quality. Creating your own library of templates for different types of projects could be a helpful thing to do.

Whatever you’re working on, there will always be stuff that you really enjoy doing and stuff that you don’t particularly like working on. Although, all of them will likely be equally important when you’re trying to finish and ship. Therefore it’s very important that you don’t let yourself get too carried away with the fun parts and neglect the (also important) less enjoyable tasks. 

Your first draft will not be good enough. At least if you’re a creative person trying to put out good work. Whenever you’re done with your first version, take the opportunity to look at and review it, acknowledge what could have been done better, what can be improved, or what new ideas you could implement. Try to finish your first draft early in the process to give you time for reflection and improvement.

Just getting something out there could be done fairly fast, but getting something good out there will inevitably take longer.

No matter your work setting, be realistic about what your work hours actually translate into, and how much of your time is actually productive. Keep in mind that some of your time each workday goes to lunch, meetings, and chatting with colleagues. You don’t have 8 hours of productive work time. Besides, some of the time left for productivity will have to be used for thinking, researching, and correcting mistakes. When making time estimates, 5 days doesn’t translate into 40 productive hours – keep that in mind.

When it comes to the scope, as well as your process – stay away from things you don’t actually need to be doing. Focus on critical features and tasks first, don’t let yourself get lost in the depth of trivial details. Fancy drawings of your level in your planning process or over-engineering solutions probably aren’t necessary or even meaningful. Be mindful of the decisions you make, do what you need to, and stay focused on what’s important.

More experienced people generally do this by default, because they’ve learned with time what’s not worth spending time on – and you can do this too, by making active and thought-through choices.

To practice and refine your ability to work efficiently, participating in game jams may be a good idea. They often have tight time limits and will allow you to practice the art of getting things out the door quicker. Many claim that practice and experience are the main thing to build up your speed and learn to work more efficiently.

Steve Lee: How to actually get game dev done on time
Reddit: How to develop faster
Reddit: Tips for making games faster (rapid development and publishing)?

Discover more from GamedevStation

Subscribe now to keep reading and get access to the full archive.

Continue reading