Software Developer (BRAHMA)
Description
- You enjoy building, packaging, and configuring complex software systems.
- You are fluent across modern software development and ML tooling and like collaborating with engineers, researchers, and artists.
- You care about efficiency, reliability, and clean engineering.
- Deploy ML solutions and integrate AI tooling within the VFX pipeline with minimal burden on artists and production.
- Design and build web front-end UIs (dashboards, curation tools, job control, review) that make ML/automation workflows intuitive and accessible.
- Collaborate with global stakeholders and architects to implement cost-effective data and MLOps pipelines; document methodologies.
- Build, package, and configure complex software systems across Linux.
- Improve efficiency, stability, and observability through profiling, metrics, and tracing.
- Validate work with methodical testing (unit/integration/e2e).
- Write clear technical documentation and workflow guides for artists and developers.
- Manage escalated troubleshooting and debugging for ML-driven tools and services.
- Work collaboratively under tight deadlines; mentor developers, assign tasks where appropriate, and report to the Head of ADG.
- Enforce standards via CI: formatting (e.g., black/clang-format), linting (ruff/eslint, clang-tidy), typing (Python type hints, TypeScript), and test coverage gates.
- Require code reviews for all merges; maintain modular, testable designs with clear separation of concerns and DCC-agnostic cores where applicable.
- Documented APIs (OpenAPI/Protobuf), versioned schemas, and backward-compatible changes.
- Secure-by-default practices (authn/z, secrets management), performance budgets, and telemetry by design.
- Languages: Python 3.x (tooling and ML integration), C++17 (performance-critical components), TypeScript/JavaScript (web UIs).
- Web front-end: React (or Vue), modern build tooling, REST/GraphQL clients.
- Services: FastAPI/Flask, gRPC/HTTP; containerized on Linux.
- Build/packaging: CMake; setuptools/pip/poetry; RPM/deb where appropriate.
- VCS/CI: Git; GitHub/GitLab CI or Jenkins.
- Strong programming and shell-scripting skills (Python; Bash).
- Experience building and troubleshooting non-trivial packages (C++11–17, CMake, autotools, setuptools/pip/poetry, RPM).
- Linux expertise and command-line proficiency.
- Solid grasp of systems architecture and software engineering fundamentals.
- Ability to articulate complex technology to non-experts and collaborate openly.
- Confidence in navigating ambiguity and providing pragmatic solutions.
- Proactive mindset and comfort with multiple priorities.
- Significant experience with a major package/ports system.
- Experience monitoring, collecting, and analysing diagnostics to drive resilience.
- Practical experience with Git and issue tracking systems (Jira).
- Familiarity with ops/CI/CD tooling (Elastic Stack, Graphite/Grafana/StatsD, Sensu, Jenkins/GitHub Actions).
- Understanding of sysadmin responsibilities (networking, filesystems, environment management).
- Relevant qualifications (CS/CE degree; RHCSA/RHCE, etc.).
- Demonstrable open-source contributions.
About Us
We are DNEG, one of the world’s leading visual effects and animation companies for the creation of award-winning feature film,
television, and multiplatform content. We employ more than 9,000 people
with worldwide offices and studios across North America (Los Angeles,
Montréal, Toronto, Vancouver), Europe (London), Asia (Bangalore, Mohali,
Chennai, Mumbai) and Australia (Sydney).
At DNEG, we fundamentally believe that embracing our differences is a vital component of our collective success. We are committed to creating an equitable, diverse and inclusive work environment for our global teams, where everyone feels they matter and belong. We welcome and encourage applications from all, regardless of background, experience or disability. Please let us know if you need any adjustments or support during the application process, we will do our best to accommodate your needs. We look forward to meeting you!