Skip to main content
Back to jobs

Développeur logiciel Python senior (outillage pour équipe IA)

External
Wabtec logoWabtec · Montréal, Canada
Full-timeOn-site2mo ago
AgileAPI DesignAzureCI/CDComputer VisionDocker
Cover LetterConnect

Prepare for this interview

Elite

AI-generated questions, company research, and talking points tailored to this role


Responsibilities

  • Build benchmarking frameworks and harnesses to measure model accuracy, latency, throughput, and resource usage across GPU/CPU targets.
  • Develop visualization and result-viewer tools to inspect predictions, overlay annotations, compare runs, and accelerate error analysis.
  • Create interactive data viewers for images/video streams and metadata (sampling, filtering, dataset slices, annotation QA).
  • Develop profiling utilities and performance dashboards (hot-path analysis, bottleneck detection, regression detection) and integrate with common profilers.
  • Create reusable Python libraries/CLIs/SDKs for running evaluations, collecting metrics, and generating standardized reports.
  • Integrate tooling with CI/CD and MLOps workflows to enable reproducible experiments, automated validations, and performance gates.
  • Bridge across stacks as needed: C++ extensions for speed, TypeScript front-ends for internal web apps, and C#/.NET adapters for platform integration.
  • Partner closely with CV engineers, MLOps, and product teams-gather requirements, iterate quickly, and provide hands-on support.
  • Maintain high engineering standards: clean APIs, tests, documentation, packaging/versioning, and sustainable ownership of the tool ecosystem.
  • Job Requirements :
  • Core Expertise
  • Senior-level software engineering experience with a strong Python background and a track record of shipping internal tools used by other engineers.
  • Fast problem-solver who can prototype, unblock teams, and deliver practical solutions under real constraints.
  • Strong fundamentals in software design, debugging, testing, and performance on Linux-based development environments.
  • Tooling & Python
  • Expert Python: packaging (pip/conda), API design, CLI tooling, typing, and test automation (pytest).
  • Experience building developer productivity tools (SDKs, command-line tools, notebooks, services, or internal web apps).
  • Working knowledge of common CV/ML libraries used by the team (NumPy, OpenCV, PyTorch/TensorFlow basics).
  • Ability to extend Python with other languages when needed (C++/pybind/ctypes), and comfort working in multi-repo codebases.
  • Performance, Profiling & Benchmarking
  • Hands-on experience building benchmarks and performance tests for compute-heavy pipelines (microbenchmarks, end-to-end benchmarks, regression tracking).
  • Comfort with profiling tools and techniques (CPU/GPU profiling, tracing, flame graphs) and turning findings into measurable improvements.
  • Understanding of hardware and deployment constraints (CPU/GPU/NPU) and how they impact latency, throughput, and memory.
  • Platforms & DevOps
  • Experience with CI/CD for software tooling (GitLab CI/GitHub Actions), and building quality gates for tests and performance.
  • Docker and containerized development; ability to package and run tools consistently across dev and build environments.
  • Familiarity with cloud environments and services used for AI workflows (e.g., Azure-based stacks) is a strong plus.
  • Collaboration & Engineering
  • Git, code reviews, and collaborative engineering practices; ability to operate across teams and interfaces.
  • Agile development mindset: incremental delivery, feedback loops, and pragmatic prioritization.
  • Strong communication skills in English for international collaboration; able to explain tools and results clearly to end users.
  • Profile
  • Bachelor's degree in Computer Science, Software Engineering or related field (or equivalent experience).
  • 5+ years of professional experience, with demonstrated ownership of tools/products used by engineering teams.
  • Comfortable moving across technologies (Python, C++, TypeScript, C#, etc.) and learning quickly when the project demands it.
  • A builder's mindset: curiosity, autonomy, and a bias for action-deliver something useful fast, then refine it to excellence.
  • ____________

Benefits

Vision insurance

Additional Information

**French description will follow** As a Senior Python Software Developer in AI team tooling, you will work with a talented, multidisciplinary team of developers to build a new modern software platform (including streaming, 2D and 3D visualization, computer vision, and AI) for a new line of visual inspection products. Your mission is to multiply the velocity of the AI/computer vision team by delivering benchmark tools, visualizers, result viewers, data viewers, and profiling utilities that make workflows faster and safer. In collaboration with the AI team, you will design and build Python-first developer tools that cover the full lifecycle-data exploration, evaluation, benchmarking, debugging, and deployment readiness. You will prototype quickly with a pragmatic 'hacker' mindset (rapid iterations, creative problem solving, end-to-end ownership), and then harden the solutions into reliable, well-tested internal products. While Python is the language of choice, you will also touch multiple technologies as needed (C++ for performance-critical components, TypeScript for UIs, C#/.NET integrations, and more) to make things work in real production environments.


Your Match

How well this role fits your profile.

Company Intel

What employees say

Worked at Wabtec? Share your experience

Interested in this role?

Apply on the company's website.

Cover LetterConnect