

Hey everyone! For this month’s Company Spotlight, we’re giving a big shoutout to our Tech Department. They are the awesome folks who keep everything running behind the scenes. From making sure our games run smoothly to providing support for our remote workspaces, they empower us to work smoothly everyday!
Please introduce yourself and your role in the Technology Department.
- My name is Dave Roxas, and I’m a Senior Game Engineer at DWA.
- Hello! My name is Justin. I’m responsible for a department of programmers as the Head of Central Technology in Dusk Wave Arts. I assume the typical duties of a department head – picking who works on what, spending the department’s budget, maintaining the sanity of the department’s members, and working with other departments to bring our creative projects to life. Being a team of programmers, my department makes and maintains software. However, while we’re definitely concerned about developing video games and our comics platform, another part of our job is to help fill some of the other department’s needs in terms of R&D and tool development.
What excites you the most about being part of the Technology Department at Dusk Wave Arts?
- Dave: The everyday challenges that need to be solved. Also, it’s fulfilling to help the other department to make their workflow more efficient and easier
- Justin: One of our responsibilities is the company’s technology roadmap – it’s a long term plan for what tools to develop or invest in, and what skills to hone in our people (in terms of tech). This ultimately affects our growth and what kind of projects we’ll be working on. I think that’s pretty neat. Other than that, I like my team. I’m fortunate to have people who are super capable, honest, and are enjoyable to work with.
How do you balance creativity and technical limits when working on a game/project?
- Dave: We ALWAYS communicate even in the smallest detail of what we want and what we can create for a certain amount of time. We engineers will prove detailed information about our current resources and limitations that is understandable by everyone on the team.
- Justin: There’s a lot more creative freedom when there’s less of a pre-existing product to work with, so I believe that iteration is key. Early on, it’s good to prototype ideas as cheaply and quickly as possible, get some people to play with your prototype, then either iterate or pivot the prototype based on the feedback you get. As more decisions are made, you get more constraints – while this means you have less freedom, it’s likely that there will still be enough wiggle room to iterate on anything that needs improvement.
What’s an aspect of programming a game that you feel isn’t appreciated as much but is important nonetheless?
- Dave: Having coding standards and good code maintenance. Writing code with no decent standards will lead to a more difficult process later on in the development cycle. This will cause more issues and debugging down the line, stretching the development time.
- Justin: There are times when programmers and designers “cheat” on the player’s behalf. For example, in platformer games, there’s a common feature called “coyote time” – it’s a very short period where players are allowed to jump even after they’re run off of a platform. There’s also a thing called “input buffering” where the game remembers the player’s input for a few frames – this allows players to perform a sequence of actions “perfectly” even though they were off by a few frames. Some random number generators are not as random as the player would think – sometimes, programmers and designers go out of their way to make things less than truly random, because we want the player to have a good time. If we tell you that something good can happen 50% of the time, the player will expect to have roughly 5 good results out of 10 attempts – this won’t reliably happen with a non-tweaked random number generator. That said, instead of thinking of them as “cheats”, I think it’s better for them to be recognized as classic accessibility features in video games.
What’s a recent project you worked on, and how did your team’s collaboration impacted the output?
- Dave: We recently released Barheim! Our team did our very best to make sure that Barheim will be as enjoyable as possible. Each and every one on the team contributed to the project with passion and creativity!
- Justin: The Technology team is fairly new, but prior to its founding, most of its members comprised what was called the Engineering team. The last big project of that Engineering team was Barheim which we had to make within just a year. Typically, with a small team working on longer projects, you would want a lot of flexibility – any programmer should be able to work on any task, so you would take pains to make sure that everyone gets familiar with as many systems as possible. However, with Barheim’s time limit, we wanted to go as fast as possible. This meant that each of our programmers had to focus on their own problem domains – if you made a system, you’re typically the person who would maintain and update it. To offset the risks of this approach, we wrote automated tests for each system in our game, and ran all of our changes through both QA and design for checking. This worked well for us, and our game was shipped on time!
Are there particular moments in this recent project, shaped by team input, that you’re especially proud of?
- Dave: When the Barheim launched! We managed to release a game that has been in the works for only a year!
- Justin: The Engineering team provided a lot of support to the other departments, which was necessary to help the other departments integrate content as quickly and painlessly as possible. We got some props for this during the project post-mortem, which was very nice!
What advice would you give to aspiring Game Engineers and Tech Developers, especially about teamwork?
- Dave: Keep moving forward! No matter how hard it gets. Learn new stuff. Create small enjoyable games and be a better developer!
- Justin: From the perspective of someone who has mostly been in small teams: empower your teammates! Development teams for games and other interactive media are typically cross-discipline – you’ll work with game designers, artists, writers, sound designers/engineers and producers. Pave the path for your teammates to make as much of the game/product as they can without intervention from programmers – this can involve the creation or procurement of tools, documentation and processes that will allow them to make changes to your product directly. There are benefits to this: there won’t be a middleman between the product and their expertise, and you can focus on work that only you as a programmer can do. Bonus tip: When providing instructions, be visual! Make annotated screenshots that are easy to follow. Make screen recordings where you explain how to do things.
What’s something that’s invisible when it works but breaks the whole (Gaming) experience when it doesn’t?
- Dave: The small details in the game. It adds to the atmosphere of the game. When a game doesn’t have that, it turns into a boring and simple piece of software.
- Justin: When software works the way it’s expected to, the user won’t give a thought to the craft involved in making it. However, the moment a bug surfaces, accusations of “spaghetti code” are promptly flung at the developers of a game. This is funny because as long as the software is working correctly and performing okay, the user won’t care if the entire codebase is held together by noodles and tomato paste.
In one sentence, what makes your work and the Technology Department’s work at Dusk Wave Arts special?
- Dave: We make other department’s work easier. So they can do their work more efficiently and more enjoyable.
- Justin: Barheim was built, stable and performant by a fully-remote team within a year on a four-day workweek without crunch!
In your time at DWA, what’s your favorite story so far?
- Dave: The first Christmas party I attended in DWA, we played some kind of impostor board game. We almost won but we couldn’t figure out who the impostor was. Long story short, we actually trusted the impostor and he managed to win. It was our former art director. Even our now Studio Director (former producer that time) Mars, was so baffled we went home still thinking about it. It was so crazy at the time.
- Justin: Our founder has been on a quest to have a sunset photo with everyone on the team in it. With the team working remotely from different countries, we rarely get the opportunity to come together. On the rare occasions when most of us get to meet up, we would visit popular sunset vistas to try and take the sunset photo. The perfect sunset photo eludes us to this day.
Huge thanks to our Technology Department for keeping us online, in sync, and bug-free, everyday! We couldn’t do it without you!