We are seeking talented programmers with strong computer science, math, and/or physics backgrounds for complex and challenging projects. As a Software Engineer you will be responsible for writing backend infrastructure and frontend web applications for simulation and optimization software that incorporates probabilistic models of physical systems. Project teams range from 2 to 20 people and include a mix of Research Scientists and Software Engineers. Each team member is involved in the entire problem-solving process, from initial concept through data visualization and analysis, algorithm design, exploratory prototyping, software implementation, demonstration, and deployment. Roles within a team are flexible, giving employees space to contribute to their areas of strength, and to develop new skills. The ideal candidate has experience writing well-designed, maintainable, and extensible code.