Explore with us
We’re explorers, optimists, scientists, engineers, technologists, drug developers and more, working together to make a difference in peoples’ lives.
Lead Software Engineer Simulation
At AiPharma we're committed to building an outstanding culture and work environment where long-term results-oriented research can flourish.
Our interdisciplinary team combines the best techniques from deep learning, reinforcement learning and systems neuroscience to build general-purpose learning algorithms.
We have already made several high-profile breakthroughs towards building artificial general intelligence, and we have all the ingredients in place to make further significant progress over the coming years.
As an engineer in the NigoniX Simulation team, you’ll be working with AiPharma’s world-class specialists, pushing the boundaries of realistic physics simulation. You’ll be developing, supporting, and maintaining physics simulation infrastructure.
Develop advanced physics simulation infrastructure in C, C++ and Python, including numerical computation, research-friendly APIs, performance optimization, rendering and visualization's
Collaborated with a tightly integrated team to advance the capabilities of the software stack, starting as a team member and taking on increasing leadership responsibilities over 12 months.
Collaborate with multiple research groups across AiPharma and externally, including several research teams.
Track and manage an ongoing database of bugs, issues, and feature requests, with a requirement for careful, thoughtful prioritization.
Manage open-source projects with multiple contributors.
Graduate level theoretical background of numerical computation, mechanics, and geometry:
Numerical computation: Convergence and stability properties of numerical optimization routines. Good understanding of floating-point performance considerations on current CPUs.
Mechanics: Basic Lagrangian mechanics, conservation principles.
Coding experience:You must be very comfortable with C and C++.
Some familiarity with simulators: e.g. Bullet, MuJoCo, PhysX, Vortex, ODE, Havok.
Further background relevant to biological simulations:
Mechanics: Kinematics using quaternion algebra, Theory of contact and friction, Linear Complementarity Problems.
Geometry: Convexity, collision detection, ray casting, intersecting volumes, convex decomposition.
Numerical computation: Integration of Ordinary Differential Equations.
Experience with writing physics simulation code yourself (perhaps in an experimental, academic capacity), and/or familiarity with multiple articulated-body simulators.
Experience with porting numerical algorithms to GPU.
Participation in open-source projects.
Apply for this Job