Principal Software Engineer
Location
Oregon State | United States
Job description
Principal Software Engineer
Experience with "Embedded Android development" is mandatory. The Location of the work is Minneapolis, MN (or Austin, TX secondary).
We are looking for a highly motivated, experienced and self-directed Software Engineer (principal or Senior level) to join our team in developing cutting edge cancer therapy medical devices.
You will get the chance to test your skills in many areas as you take on the challenge of implementing distributed real time control systems and graphical user interface. You will work with an innovative and creative R&D team across multiple engineering disciplines in the design and development of cutting edge cancer therapy machines.
The Principal Software Engineer will be a key technical resource. This individual will support all phases of new platform development ranging from concept and technology development through commercialization and post-market support.
The Principal Software Engineer will be responsible for helping the team design, evaluate critical system components, prototype, test and release to production embedded software applications for Microwave consoles. In additional to software development using embedded processors, RF communications, display technologies, pump and motor control this individual will support designing test techniques for the system. The Principal Software Engineer will collaborate with other engineers in creating and improving designs based on test results and optimize performance.
Key Highlights of what you will do - You’ll be controlling devices that affect patients’ lives! Design and develop embedded software deployed on different operating systems including Android, Yocto Linux and Windows.
- Must have Android embedded software development experience.
- Must have C, C++ and experience with embedded ARM processors.
- (Desired) Android application implementation
- (Desired) Yockto Linux and QT
- Work with electrical, mechanical, physics, systems, software and marketing teams to develop and refine requirements.
- Work with other engineers on the team to implement multiple sensor data acquisition, motor control and contribute to the GUI design using QT or other appropriate tools.
- Design and implement test automation software where applicable.
- Active participation in architecture, design and code reviews, unit testing, software debugging, system troubleshooting and overall resolution to ensure the quality of software implementation and the safety, performance and reliability of integrated software and hardware.
- Innovation of relevant sensing and control technologies.
- You should be comfortable working in a fast-paced environment with schedule commitments.
- Perform other related duties as assigned.
What you will have: - Bachelor’s degree or above in Software Engineering, Computer Engineering, Electrical Engineering or related field.
- Minimum 8 years relevant professional experience in developing software.
- Highly proficient in C++ programming.
- Experience working in an ISO 13845 quality management system desired, not required.
- Experience with control systems (medical experience preferred).
- Experience with DSP and Microcontroller firmware development.
- Experience with various wireless communications technologies such as Bluetooth, Wi-Fi, RFID.
- Experience with operating systems such as Android.
- Experience with cyber security.
- Ability to thrive in a team environment offering support when needed and able to negotiate and compromise as needed to support a successful fast paced program.
- Ability to investigate and solve problems independently and with the team.
- Ability to manage and prioritize workload, multi-task and manage a diverse mix of issues, responsibilities and challenges.
- Excellent written and verbal communications skills.
What will set you apart: - Experience working with ARM application processors and/or System On Modules (SOMs).
- Experience with embedded Android systems.
- Experience with software-hardware integration of electromechanical systems.
- Experience with motion control.
- Experience implementing cyber security in embedded systems.
- Experience with medical device product development.
Job tags
Salary