This position has been filled. If this sounds like the perfect job for you, though, please reach out. We are always looking for more help from the right candidates. 

Giant Army is looking for a simulation developer to help in our continued development on Universe Sandbox ², a space and gravity simulator with a 94% positive rating on Steam.

You will work with scientists and developers to improve and create geophysical and astrophysical simulation code. This code must smoothly integrate with the other systems in Universe Sandbox ², including running in real-time under computational restraints.

Above all you must be an experienced C# programmer (ideally with Unity experience). You do not need to be a subject-matter expert, but you must be a collaborative worker who is curious about science, and you must have a broad toolkit of numerical techniques.

We hope you join us in making something incredible that’s never been done before.

64965164eb4040ed43c35c75550bd29f46a73748

Your Role

  • Build on, improve and optimize, and create new geophysical and astrophysical simulation codes which talk to all the other pieces of the simulation
  • Work with scientists to define a problem and iteratively determine the best numerical solution that meets computational constraints
  • Work with developers to integrate with other systems and the graphical display smoothly
  • Quickly prototype and estimate computational costs
  • Help change the way the world perceives our universe and fragile planet

Ideal Candidate

  • Is a self-driven and talented programmer with experience applying/integrating numerical models in a compiled language using modern developer best-practices
  • Writes clean code that is comprehensible to teammates
  • Loves physics simulations and fantastical what-if scenarios: what-if.xkcd.com (note citation #6 on 148)
  • Is excited about developing a tool that allows users to experiment with simulations, pushing the boundaries of what has been done in real time for public consumption

Mandatory Qualifications

  • (Strong C# && Unity Engine experience) || (Experience with an entity component model && object-oriented programming)
  • Experience with developing simulations
  • Familiar with version control, some kind of task-management system, unit tests, code reviews, and so forth
  • Familiar with a broad toolkit of numerical techniques
  • Works collaboratively
  • Curious about science
  • Enjoys a challenging problem

Preferred Qualifications

  • M.S. in relevant field (e.g. applied math, computer science)
  • Ability to meet in person at least once a week in Seattle, WA, United States, but will consider outstanding candidates from anywhere in the world

Partial List of Simulation Improvements

  • Improving the climate simulation (calculating temperature, pressure, greenhouse effect, user adjustable materials, dust from impacts affecting the temperature)
  • Improving asteroid collisions (heating, impact size, velocities of fragments)
  • Adding atmospheric drag (based on the properties of the body and the atmosphere, with correct heating of the body and material loss from the friction and heat)
  • Improving our material system (metallic hydrogen in gas giants, simulating subsurface oceans on moons)
  • Improving supernova and stellar evolution (and making that all work smoothly together)
  • Improved transitions of bodies as their properties change (add hydrogen to a rocky body to make it become a gas giant, keep adding to turn it into a star)
  • This position is (largely) not oriented toward improving the following:
    • N-body
    • Relativity
    • Fluid dynamics

More Information

You don’t need to be a subject-matter expert in any area of geophysical sciences or astronomy, but you must be curious about science, and love the idea of working with scientists who would lay out a computational problem that you could help solve and implement. Everything must run in real time; computational efficiency is key. Sometimes the level of complexity that we can represent is a continual negotiation depending on the efficiencies that prove possible. Which is why this work is incredibly important for making Universe Sandbox more awesome.

There is an element of iteration with the scientists and developers. We may start from a wish-list or pseudocode that is too computationally expensive, and iterate from there, coming up with new ideas for which simple models of the physical process to suggest next. Your job in this iteration is to quickly prototype, if needed, and provide estimates for whether the current idea has yet achieved feasibility.

Besides the scientists who want to compute things in real time, the graphics programmer is concerned with displaying them smoothly, so you also need to iterate on the output and its interface with the graphical display. And because it’s a sandbox on a broad scale, everything must integrate well with existing systems. Models of specific processes do not exist in isolation of the influence of the rest of the simulation; everything must work together and be designed with this in mind.

This is very much a collaborative position, and so the ability to work well in a team is an important qualification. You must be good at working with other people’s code, and you need to be able to take direction from the creator of Universe Sandbox on design constraints, from the scientists on physical realism, and work with the systems architect to make it all operate smoothly with the core simulation and gravity integration that is already in place. You may work with the numerical physics programmer responsible for the gravity integration on problems like threading and other computational optimizations for the software at large.

Portfolio-wise, visualizations are appreciated. Visualizations of simulations that did not run in real time may impress us, but in this position everything must run in real time, so things that do will impress us more, perhaps in the form of runnable code (e.g. an executable).

Company Overview

Giant Army is the company behind Universe Sandbox, a space simulator that’s sold hundreds of thousands of copies on Steam. Our headquarters are in Seattle, Washington, USA, with team members in Arizona, Missouri, Germany, and Denmark.

Team members enjoy a flexible, collaborative environment. We pursue the features that get us excited about science. We do the work so that we can share that with others. We’re also committed to creating an accessible experience that can’t be found elsewhere.

Science is for everyone, and we welcome all qualified applicants.

Product Overview

Universe Sandbox ² is our core product that lets the user explore and learn about our amazing universe and fragile planet while creating and destroying on a scale they’ve never before imagined. It’s more than a game; it’s a way of experiencing and learning about reality in a way that’s never been done before. Early alpha access now available for Windows, Mac, and Linux.

How to Apply

This position has been filled. If this sounds like the perfect job for you, though, please reach out. We are always looking for more help from the right candidates. 

Email us: jobs at universesandbox.com

In the email please include:

  • Relevant email subject
  • Link to or copy of your resume or CV
  • Relevant code sample/s
  • Link to examples of your work, including visualizations of numerical simulations
  • Answers to these two questions:
    • What is the most appealing part of this opportunity?
    • What feature would you be most interested in adding or helping make better?
  • Where you originally heard about this job posting