Job Description
Give hope. Give health. Make your mark in the fight against cancer.
At Accuray, we make a direct and powerful impact on the lives of cancer patients every day — helping them live longer, better lives. But our commitment to innovation offers a truly unique opportunity: the chance to change the fight against cancer — helping to develop, introduce and support new treatment delivery systems and software that will give new hope and new health to cancer patients and cancer survivors around the world.
Accuray develops, manufactures and sells radiotherapy systems for alternative cancer treatments. Our radiation therapy for cancer makes treatment shorter, safer, personalized and more effective, ultimately enabling patients to live longer, better lives.
Job Description
Summary:
The Motion Controls & Robotics Software Engineer is responsible for the research, planning, design, implementation, and verification of software that controls critical electro-mechanical and robotic motion mechanisms contributing to the function and performance of Accuray’s radiation therapy products. This is a software-forward motion control role for candidates with demonstrated experience developing software that interfaces with physical hardware. The role also assists with defining high-level architecture and detailed hardware implementation of these motion devices, leveraging a cross-functional skillset across Software, Mechanical, Electrical, and Systems Engineering to solve complex engineering problems.
Essential duties and responsibilities:
Product Development
Object-oriented software development and hands-on hardware integration for Accuray’s control systems, including robotic manipulators, precision positioning systems, thermal and pneumatic control systems. Detailed analysis reports (design reviews, control system models, DFMEA, etc.), debugging, reliability cycling, system integration, and formal software/hardware testing are key components of the development activities.
Researches, analyzes, plans and implements the control system design in accordance with product requirements as established from various sources including marketing, manufacturing, reliability, and customer specification documents. Drives distillation of system level requirements into sub-system and component level requirements.
Develops and executes comprehensive test plans, including manual, automated, unit, integration, and system-level tests, to rigorously verify developed software and hardware against defined requirements and specifications.
Hands-on, data driven problem solving – commonly working directly with motion hardware to move development efforts forward. Assists with hardware prototype builds and troubleshooting as needed.
Documents, implements and tests applicable design requirements for production. This includes supporting transfer of relevant design output documents, recommended assembly and test instructions, and service troubleshooting support.
Collaborates closely and frequently with Embedded Software Engineering, Mechanical Engineering, Electrical Engineering, Systems Engineering, and test teams throughout the software development and product development lifecycle.
Provides subject matter expert input and guidance for field service escalations into engineering.
Supports the Mechanical Systems Manager in establishing or updating project and departmental deliverables.
LEADERSHIP
Provides technical leadership, leads by example, and mentors other employees within Project teams and Product Development.
May serve as the lead Engineer on projects, and coordinate the work of other engineers, technicians, or contributors.
Assures that quality processes are followed on projects and within the Mechanical Systems group.
Contributes to the development or improvement of processes.
SAFETY AND QUALITY
Ensures safety and quality considerations and requirements are proactively addressed and implemented in product design.
Address and manage in a timely fashion safety and quality issues raised by customers or staff.
Supports Accuray’s Quality System and Safety and Health Program by following procedures and mentoring others.
Qualifications:
a. Required
Education: Bachelor’s degree in Computer Science, Software Engineering, Robotics Engineering, Mechatronics, Engineering Physics, Mechanical Engineering, or a closely related technical field, with coursework or experience in software development for physical systems.
Professional software experience: Minimum of 4 years of professional software development experience working directly with electro-mechanical, robotic, or motion control systems. Candidates should have taken software from a functional prototype or lab state to reliable customer-ready operation, with attention to memory safety, robustness, maintainability, deployment, updates, monitoring, and field/debug diagnostics. Experience should include hands-on environments where software meets hardware, close collaboration with mechanical, electrical, and embedded engineers, and the ability to critically verify AI-assisted code.
Cross-disciplinary engineering knowledge: Working knowledge of Mechanical, Electrical, and Software Engineering design principles, including how software interfaces with sensors, actuators, motor controllers, and other electro-mechanical components.
Object-oriented software development: Demonstrated proficiency designing and implementing object-oriented software in C++ and/or Python, including class design, interfaces/abstractions, modular code structure, debugging, and unit/integration testing.
Software development practices: Experience using professional software development practices such as version control, code review, issue tracking, build/release workflows, and automated testing.
Production launch experience: Track record of on-time, high-quality production launches of released software and associated electro-mechanical components.
Communication: Excellent verbal and written communication skills. Able to effectively present technical concepts to individuals that are not subject matter experts and assist as needed.
b. Preferred or Desired
Advanced degree in Computer Science, Software Engineering, Robotics, Controls Engineering, Mechatronics, Engineering Physics, Mechanical Engineering, or a closely related technical field.
At least 8 years of design and development experience in a highly regulated, safety-critical industry.
Demonstrated ability to test and verify developed hardware and software against requirements.
Ability to develop system-level requirements for motion control systems, and effectively integrate both individual components into a system and sub-systems into a larger system.
Extensive experience working with automated or robotic systems and their components (motor controllers, drive electronics, sensors, etc.), including low-level firmware, mid-level software interfaces/device drivers, APIs, and robot controls middleware.
Experience developing robotics, motion control, or embedded software in regulated, safety-critical, or high-reliability environments.
Experience programming digital motion controllers, including configuration and utilization of digital I/O for motion control applications.
Self-starter who works independently to solve problems, manage workload, and resolve roadblocks, collaborating with peers and management as appropriate.
Experience in strategic infrastructure planning, developing roadmaps to achieve long-term objectives, and successfully implementing those plans.
Demonstrated experience developing, building, debugging, or deploying software in Linux-based environments.
Exposure to 3D CAD modeling software (SolidWorks preferred) and virtualization tools for robotics applications.
Exposure to Real-Time Operating Systems (RTOS) and parallel computing concepts.
Proficiency with linear algebra, rigid transformations, coordinate frames, and/or robotics software for serial-link manipulators.
Proficiency in working with databases, including querying, data manipulation, and schema design.
Strong foundational knowledge in control theory combined with hands-on experience developing data-driven control strategies.
Comfortable using AI-assisted tools to enhance productivity, accelerate problem solving, and strengthen software development workflows while maintaining engineering judgment, verification discipline, and ownership of the final work product.
Understands fundamental machine learning and reinforcement learning concepts and their potential utility in advancing robotic capabilities.
Formal product reliability qualification and testing background.
#LI-BB1
To qualify for this position, candidates must be able to furnish proof that they are authorized to work in the country they are applying on a permanent basis without sponsorship.
EEO Statement
At Accuray, our commitment to patient-first outcomes drives an inclusive and collaborative work environment where the best ideas rise to the top — and everyone works to push them further. We value diversity in both the professional and personal backgrounds of our employees, as this variety adds rich energy to every team, every project and every work day. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity or national origin – including individuals with disabilities and veterans.