This position will report to the Manager, Control Systems Software Engineering.
- Analyze high-level requirements, translate them into detailed software requirements and feasible design solutions.
- Develop software from concept to finish while following software development processes.
- Design of experiments for testing new concepts, create methods for testing requirements, and assist with design transfer activities for production and field support.
- Develop system level understanding of Viewray system components as well as hands-on knowledge of various workflows
- Develop an architecture level view and provide technical leadership for one or more subsystems
- Analyze system behavior issues, identify root cause and propose effective solutions
- Document various aspects of the design including risk assessment, requirements, various design outputs, verification as well as relevant manufacturing procedures.
- Be part of various core program teams and represent the embedded software team for specific projects.
The Value you Will Bring
Why you'll see yourself here
At ViewRay, our teammates can challenge your mind and capture your hearts, by changing the standard of care in radiation therapy.
- Minimum BS, MS or equivalent experience in software or related discipline
- Minimum 6 years of software engineering experience with strong emphasis on embedded software control of hardware subsystems in a formal product development environment from concept through release.
- Some development experience within highly regulated industry is desired
- Proficient in C, C++ (required)
- Experienced at data and signal processing (required_
- Able to quickly grasp user level or system requirements and translate into subsystem requirements and designs
- Strong understanding of Multithreaded Environment.
- Experience with embedded Linux operating system-based development
- Experience in multimachine systems and communication protocol development
- Test plan development and execution
Based on technologies being used on the system, below are some of the specialized areas of the control systems, where some familiarity or experience will be helpful, but not essential:
- Exposure to scripting languages and toolset such as Python and QT
- Experience with working on/around FPGA, SDK, system on chip, driver development, etc.
- Familiarity with VxWorks.
- Familiarity with cybersecurity
- Strong communication skills, Time management skills, accountability
- Demonstrated experience in teamwork, documentation
- Ability to influence others and work effectively as part of the diverse team including physicists, scientists, and engineers in a fast-paced environment and with multiple projects
- Ability to plan, track and manage work to schedule