Bayesian Software Engineering
Develops modular probabilistic models and algorithms for Bayesian statistical inference and machine learning in Julia, focusing on backend implementation, scaling statistical procedures, and integrating into large software systems for finance and research applications.
About the job
Responsibilities
- Define new features or fixes, based on awareness of overall objectives and challenges
- Commit to delivering defined features or fixes end-to-end
- Define implementation strategies, and work with others to implement them
- Leverage the expertise of other team members effectively
- Write design documents for more complex problems
- Write clean and performant code
- Help other team members to deliver on their goals
Useful Experience
- Production backend software engineering
- Design and implementation of probabilistic programming language features
- Implementation of Bayesian inference methods such as MCMC, SMC or VI
- Statistical modeling of real-world scenarios
- Constrained optimization algorithms
- Functional or typed programming
Core Language
- Julia (only language used in the core of our system)
Helpful Languages
- Rust, OCaml, Clojure
- C++, Haskell
Skills
Julia, Bayesian Inference, Mcmc, Smc, Vi, Probabilistic Programming, Rust, Ocaml, Clojure, C++, Haskell, Statistical Modeling, Constrained Optimization, Functional Programming, Typed Programming
Similar jobs
Backend Engineering jobsBuild and scale Ruby on Rails backend services for rewards, incentives, and loyalty features in a high-throughput platform. The role owns complex feature delivery, contributes to architecture, mentors junior engineers, and requires 3+ years of professional software engineering experience.
Build and operate backend capabilities for a cloud identity platform, including authentication flows, APIs, and developer experiences. The role requires 3+ years of experience with high-scale production systems and RESTful API development, with Go, TypeScript, and DynamoDB as preferred skills.
Build and scale reliable research infrastructure and distributed systems for evolving AI research workflows. The role independently leads complex technical projects, makes foundational architectural decisions, and partners with researchers and engineering teams.
Build and operate Internet-scale HTTP and TLS infrastructure, migrate services to a Rust-based proxy, and improve protocol performance. The role requires systems programming experience, strong reliability and security practices, and interest in open-source standards.
Build and operate publisher-facing backend features for Instacart’s Carrot Ads platform, spanning APIs, serving, reporting, and partner tooling. The role requires 3+ years of backend experience, distributed-systems and API expertise, and operational ownership.