Software Engineer (Embedded)

Vernon Hills (Chicago), IL

Canon Medical Research USA, Inc. (CMRU) is a multi-modality R&D organization creating next-generation medical imaging systems. It is equipped with cutting-edge instrumentation, prototyping, hardware labs and scientific computing facilities to perform research targeted to pre-clinical and clinical CT, PET, MRI, Ultrasound and X-ray systems. For those who like to develop new technologies and research new ways of using them, Canon is a rewarding place to work, due to its focus on innovation as the lifeblood of new products.

CMRU is committed to recognizing and appreciating the variety of characteristics that make individuals unique in an atmosphere that promotes work/life balance and celebrates individual and collective achievement. We are especially interested in qualified candidates who can contribute, through their experience, education, research and/or service, to the diversity and excellence of our organization and the scientific and engineering community at large.

CMRU offers a great work environment, professional development, challenging careers, and competitive compensation and benefits. We are an equal opportunity employer (EOE).


CMRU has an immediate opening for a Software Engineer (Embedded) in our CT business unit. The ideal candidate will work with a team to design and implement high-quality embedded software for large medical devices from requirements to production. The engineer is expected to participate in the designing of solutions that meet customer needs, document the design, write clear, concise code, comment code as appropriate, and create documentation outlining code functionality.


  • Analyze software requirements documentation and consult with the author as needed.
  • Formulate a software design using industry best practices and document it appropriately.
  • Implement the software design in C/C++
  • Design and execute the unit test plan to verify the coded software.
  • Contribute to the creation of software requirements and specifications.



  • B.S. or M.S. graduate in computer science or computer engineering with up to 3 years of work experience or 3+ years of C/C++ related work experience.


  • Understanding computer architecture principles.
  • Understanding multi-threaded and/or multi-processing concepts.
  • Experience in mathematics and scientific algorithm implementation and optimization helpful.
  • Education and/or experience with image processing techniques helpful.
  • Knowledge or experience in GPU programming experience helpful.
  • Understanding embedded system design with preemptive, multitasking real-time operating systems is helpful.
  • Understanding scripting languages such as Python, Bash, or PowerShell.
  • Understanding Linux operating systems and command-line interfaces.

Time and Location Commitment

  • The position is a regular, full-time and requires a commitment of 37.5 hours per week, Monday-Friday, during regular business hours.
  • The position is based in CMRU’s main office in Vernon Hills (Chicago), Illinois.
  • A hybrid work schedule will allow flexibility to work remotely from home on some days and from the office on other days, but the candidate must be able to come on-site daily based on the needs of the projects and business requirements.


  • Ability to complete domestic and occasional international travel (up to 2% of the time).
Apply for this position