Software Engineer, Model Engineering (Contract)
Improbable has created SpatialOS: a networking solution combining low latency, tools for faster iteration, and a ready-to-go architecture capable of supporting innovative games.
Now the Improbable Defence division, building on the backbone of SpatialOS, has combined world class scientific modelling, market leading AI, mission specific user interfaces and a uniquely flexible and secure deployment model to create a powerful simulation platform tailored to the needs of the military.
Our mission? To enable the most realistic and effective military simulations ever experienced, making defence users more effective on operations and decreasing the cost of military preparedness.
...is to build scientific models that support our entire product offering and facilitate next generation decision support. We are a friendly, relaxed & inclusive team with an ambition to take agent-based modelling to the next level. Unlike many teams, we are a mix of applied scientists and software engineers working very collaboratively both internally and with our Defence customers.
We build software models of social systems as goal-oriented actors operating on imperfect information, “digitally twin” physical environments and infrastructure, and obsess with modularity to recast complex systems as combinations of simpler systems. Our applied scientists seek to balance cutting-edge research with pragmatism and creativity when designing new models. We touch on a range of interesting topics such as probabilistic programming and reinforcement learning to name just two.
***This is an initial 6 month contract to join an existing team & project***
- You will work broadly; conceptualising a system and writing a design document, building software to convert that into a prototype model (we are language agnostic, and usually work in Python and C++) and you will help educate others on your approach.
- Your role will combine literature reviews, conceptual modelling & software engineering to create scientifically defensible models that underpin our product offering
- Building software pipelines to extract and integrate data from various sources, making it available to simulation engines and user interfaces.
- You will be building socio-technical models of real-world phenomena that allow our customers to better understand how individuals interact with physical, political, information and other systems.
- Your work will help military tacticians understand situations and plan more effectively, ultimately helping add to the stability and security of the world.
If you identify with the following, we'd love to chat:
- You are an experienced software engineer with fluency in at least one relevant OO or functional programming language and the openness to learn and adapt to a variety of languages. We currently use Python and C++ a lot as well as many of the related tools and libraries.
- You support and have a clear appreciation of the modern software engineering workflow & delivery mechanisms.
- You are enthusiastic about continuously improving and rapidly developing new competencies.
- You are able to effectively communicate with clients in person, in writing and with visualisation.
- You have an interest in machine learning engineering (e.g. agent-based modelling, discrete-event simulation, system dynamics, bayesian networks, probabilistic programming, machine learning).
While we think the above experience could be important, we’re keen to hear from people that believe they have valuable experience to bring to the role.
The best ideas are often the least expected and require new ways of thinking; that’s why our teams at Improbable are made up of an incredible range of talented people. Improbable is proud to be an equal opportunity employer. We do not discriminate based on race, ethnicity, colour, ancestry, national origin, religion, sex, sexual orientation, gender identity, age, disability, veteran status, genetic information, marital status or any other legally protected status.