Select how often (in days) to receive an alert: Create Alert
We use technology to solve problems in spaces, light, and more things to come… for our customers, our communities, and our planet. Acuity Inc. (NYSE: AYI) is a market-leading industrial technology company. We use technology to solve problems in spaces, light, and more things to come. Through our two business segments, Acuity Brands Lighting and Lighting Controls (ABL) and the Intelligent Spaces Group (ISG), we design, manufacture, and bring to market products and services that make a valuable difference in people’s lives. We are positioned at the intersection of sustainability and technology. Our businesses develop technology that helps save our customers energy and reduce their carbon emissions. We achieve growth through the development of innovative new products and services, including lighting, lighting controls, building management solutions, and location-aware applications.
Job Summary
We are seeking a Software Engineer, Robotics to join our engineering team in Zurich, Switzerland. In this role, you’ll strengthen the perception and decision-making stack behind Q-SYS VisionSuite: the software that lets cameras detect, track, and frame people in meeting spaces, and turns that awareness into real-time camera and system behavior.
This is a hands-on technical position focused on production Python and C++ development where ML models meet the running system. You’ll integrate new models into the stack, test how they behave with real cameras in real rooms, and adapt the downstream perception and decision logic to make the most of what they provide. You’ll work closely with ML Engineers, who own model benchmarking and optimization, and with senior engineers and architects, contributing independently to well-scoped designs.
This position is a hybrid position based in Zurich, Switzerland.
Key Tasks & Responsibilities (Essential Functions)
- Develop and extend the perception and decision-making stack in Python and C++ (C++17+): detection, tracking, and the logic that turns scene understanding into camera control and framing decisions.
- Integrate new ML models into the perception pipeline, including inference wiring, pre- and post-processing, and data flow between models, trackers, and downstream consumers.
- Test new ML models in the running system, measuring their effect on end-to-end behavior (tracking stability, framing quality, latency, and failure cases) in lab and real-room scenarios.
- Adapt perception and decision logic based on model outputs: tune thresholds, filtering, temporal smoothing, and state handling, and build features that take advantage of new model capabilities.
- Build and maintain test tooling, recorded datasets, and replay harnesses that make perception behavior reproducible and regressions visible.
- Implement multithreaded and performance-sensitive components, including software that interfaces with cameras and other hardware.
- Feed system-level findings back to ML Engineers (failure cases, edge conditions, and runtime requirements) to inform model selection and optimization.
- Collaborate with architects and senior engineers to design solutions, then execute independently.
- Actively participate in code reviews, providing feedback to peers and improving overall code quality.
Bachelor of Science in Computer Science or Electrical Engineering
Skills and Minimum Experience Required
- 3+ years of professional software engineering experience , including work on perception, robotics, or computer vision systems.
- Strong, hands-on experience with Python and C++ (C++17 or newer) in production environments.
- Practical experience integrating ML models into applications : running inference (e.g., PyTorch, ONNX Runtime), handling pre- and post-processing, and acting on model outputs in a live system.
- Working knowledge of computer vision and perception fundamentals , such as object detection, multi-object tracking, and camera geometry and coordinate transforms.
- Experience with multithreading, concurrency, and real-time constraints .
- Comfortable developing and debugging on Linux systems.
- A methodical approach to testing and debugging, including data-driven evaluation of system behavior.
- Preferred experience with one or more of the following:
- Tracking and state estimation techniques (e.g., Kalman filtering, data association, re-identification).
- Decision-making or control logic, such as state machines, behavior trees, or control loops.
- ROS or robotics-inspired architectures.
- PTZ cameras, video pipelines (e.g., GStreamer, FFmpeg), or AV systems.
- Real-time inference on edge or constrained hardware (e.g., TensorRT , OpenVINO).
- CI/CD pipelines, automated testing, or Docker .
Other
Your Mindset:
- System-Minded Integrator: You care about what a model’s output does to product behavior, not just its benchmark score.
- Empirical Tester: You trust measurements over intuition, build test scenarios that reflect real rooms and real people, and recognize a regression when you see one.
- Pragmatic Adapter: When a new model changes the shape, timing, or confidence of its output, you adjust tracking, filtering, and decision logic so the system behaves better, and you can explain why.
- Production-Quality Engineer: You write clean, tested, maintainable Python and C++, and treat latency and real-time constraints as requirements.
- Collaborative Executor: You work across ML, Robotics, Platform, and Quality, take a well-scoped problem from design to delivery, and surface issues early.
We value diversity and are an equal opportunity employer. All qualified applicants will be considered for employment without regards to race, color, age, gender, sexual orientation, gender identity and expression, ethnicity or national origin, disability, pregnancy, religion, covered veteran status, protected genetic information, or any other characteristic protected by law.
Accommodation for Applicants with Disabilities: As an equal opportunity employer, Acuity Inc. is committed to providing reasonable accommodations in its application process for qualified individuals with disabilities and disabled veterans. If you have difficulty using our online system due to a disability and need an accommodation, you may contact us at , select option 4. Please clearly indicate what type of accommodation you are requesting and for what requisition.
#J-18808-Ljbffr