Advice for Aspiring Game Developers
Whenever we put up a job posting, we get a handful of applications from younger fans who are aspiring game developers. They usually admit they’re not qualified, but they nonetheless write in because working on Universe Sandbox is their dream job.
While they may not have the experience we’re looking for (and some aren’t even old enough to meet the minimum employment age in the United States!), we definitely appreciate the enthusiasm. And for many of us on the team, we relate on a very personal level: we also dreamt of being video game developers when we were growing up. And it was only through some form and combination of self-teaching, mentorship, and lots of experimentation that we ended up as professional game developers working on a very cool project.
Recently, our graphics developer, Georg, put together some advice and suggestions in response to a younger applicant. But we realized there may be some nuggets of wisdom in here that others would like to see, too. So why not share it with everyone? So here they are, slightly modified to be relevant for any kind of video game programming role. If you’re more interested in game design, animation, music, production, quality assurance (QA), or any other aspect of game development, check out these suggestions anyway. The ideas can be applied to most things in life!
1. Download Unity and start working through programming tutorials. Don’t worry if you don’t understand it yet, you’ll get there.
Or choose any other game engine out there. We like Unity because it’s free for casual users but it’s still very powerful — it’s what we use for Universe Sandbox! Unity also has a bunch of really great, free tutorials on their site and elsewhere across the web, plus a big and helpful community at all skill levels.
If you’re feeling overwhelmed when you first start programming, don’t worry, that’s normal. You’re learning a whole new language!
2. Don’t give up if your code doesn’t want to cooperate all the time – nothing does, that’s part of the fun.
You’ll run into bugs, your game won’t start, you’ll bang your head on your desk, and you’ll begin explaining things to rubber ducks. Sometimes you’ll need to shave a yak. Don’t worry, all of this is also normal (…relatively). One of the best ways to learn how something works is to dive in, break it, then figure out how to fix it. And maybe go a little off the rails in the process.
3. Get inspired by your favorite games and apps. See something in a game you like? Find out if someone has written about how to develop it and see if you can recreate it.
Inspiration is a tremendously powerful motivator and driving force, and copying and recreating something is another great way to learn how something works. The best part? A lot of game developers (especially indie developers) love to share their knowledge in detailed blog posts and video devlogs. These devlogs dive into the technical weeds of projects the developers are working on, and they’re a great way to get inspired by developers you admire.
Just remember: when you’re first starting off, keep your aim narrow. Don’t set your sights on recreating a massive, AAA-style game. Instead, find one particular aspect you think is done very well or seems unique or interesting and begin researching it. Or see if your favorite indie developer or studio keeps a devlog of the projects they’ve worked on (we’ve got our own devlogs which lately have been talking about our work on the next big Universe Sandbox feature, Surface Grids, though they’re not quite as technical as others out there).
4. The community is helpful. There are no bad questions. Be kind and share your results with other students and teachers.
There are lots of people out there learning how to program and become video game developers, and everyone was once a beginner just like you. Don’t be afraid to ask for help or ask a question about how something works, even if it seems like something simple. Sometimes you’ll get an answer that explains a lot more about what’s going on than you’d realize if you had just brushed past it and continued on. As with all internet interactions, things will go more smoothly if you’re kind, you’re patient, you attempt to write clearly, and you provide context and details.
And while those who have been programming for a long time are definitely more qualified to give solid advice than someone who just wrote their first “Hello, World!” program, there doesn’t have to be a huge divide between the roles of teacher and student. Once you get your footing, it’s likely you’ll be able to help out the beginners with the very basics, even if it’s just pointing them to the resources you found helpful.
5. At some point, someone will call you a programmer. Much later, someone will pay you for that. And much later still, you’ll be working on something you love. Be patient, you’ll get there.
Hold on tight, it’s a long rollercoaster. With a little bit of patience, the excitement of seeing your skills grow and grow and using them in more and more projects will be plenty to keep you going.
6. Find others like you and do things together. Everything is better with someone to relate to. You’ll get further, faster.
Take a class, start a club, join a Discord server (and join ours while you’re at it), recruit your friends to your brand new indie game studio — do whatever it takes to find a community of people who are on the same path as you. The support and help of others who are interested in your wellbeing and success may be the exact thing you need at some point along the way to avoid giving up. Make sure to return the favor!
7. Never give up!
It’ll seem impossible at first, and then it’ll be hard later on, and then just when you think you’re progressing smoothly, you’ll run into another frustrating obstacle that makes you want to bang your head on the desk and start talking to the rubber duck again. Refer back to #5: Be patient, you’ll get there. If you’re stuck, take a break. Clear your head by doing something that’s not staring at your screen. Whether you step away from programming for an hour or a few days, it’ll help immensely.
Of course, it’s not all misery — far from it. We wouldn’t be doing it if that was the case. There are huge rewards in learning to program, like the joys of finally cracking a complex problem or creating a game with your name on it and seeing others love it as much as you do.
And if you want to take a more career-oriented stance, you can rest easy. Demand for software developers is already high and is expected to grow 21% from 2018 to 2028 in the United States, a rate much higher than in other fields. Learning to program is a safe bet on a path toward a stable, well-paying career.
We hope this helps! And maybe one day you’ll see one of our job listings and say, “I’m a perfect fit for that position.”
about 4 years ago
This is very inspiring! As someone who just started learning in C# and Unity, I thank you so much! I’ve been coding for around 3-4 years on other programs like Scratch and Roblox and now Unity is my primary engine and I don’t see any changes being made anytime soon. To those looking for a little more inspiration, here’s my point of view: coding is torture and sometimes it requires blood sweat and tears but in the end when everything starts working, it’s worth all the effort. Trust me. On an unrelated topic, Universe Sandbox totally changed the way I see the world (figuratively and literally) in space and what coding can make. Thank you so much!