Unknown Company

Embedded Software Engineer

sunnyvale, ca • Posted 2 days ago
Onsite Full Time Telecommunication & Information Technology

Job Description

Primary Function of Position

The Ion™ endoluminal system is Intuitive's robotic platform designed for minimally invasive biopsy in the peripheral lung, with the goal of improving early lung cancer diagnosis.

This position is part of the New Product Development Platform Software team and will focus on developing embedded application software, middleware, and system services that enable applications and subsystems across the robotic platform.

The engineer will work with software, systems, hardware, and test teams to design, implement, integrate, and debug reliable software for a heterogeneous embedded computing platform incorporating CPUs, GPUs, FPGAs, and other specialized hardware. The successful candidate should have strong C/C++ application development skills, an understanding of software architecture and data management, and an interest in building reusable platform services and APIs.

Essential Job Duties

Middleware & Application Software Development

  • Design, implement, test, and maintain C/C++ applications and middleware running on embedded Linux platforms.

  • Develop reusable system services, libraries, and APIs used by multiple applications and subsystems.

  • Develop software for configuration, preferences, persistent system data, diagnostics, and system management.

  • Design and implement software for structured data storage and retrieval.

  • Develop multi-threaded applications and software using inter-process communication mechanisms.

  • Integrate application and middleware software across heterogeneous computing elements, including CPUs, GPUs, FPGAs, and other specialized processors.

  • Develop and maintain software interfaces between applications, platform services, and hardware-accelerated components.

  • Extend existing software frameworks to support new product features and system capabilities.

  • Participate in API, interface, and software design reviews.

Software Integration & Debugging

  • Debug issues across application, middleware, operating system, and hardware interfaces.

  • Investigate software defects and perform root-cause analysis.

  • Diagnose issues involving interactions between CPU-hosted software and GPU-, FPGA-, or hardware-accelerated components.

  • Use Linux debugging and diagnostic tools such as gdb, logs, tracing tools, and command-line utilities.

  • Work with other software functions, EE, and FPGA engineers to understand interfaces and troubleshoot integration issues.

  • Support software integration, verification, validation, and product bring-up activities.

Software Quality & Reliability

  • Develop maintainable, modular, and testable software.

  • Write unit and integration tests for new software components.

  • Design software with robustness, fault handling, data integrity, and serviceability in mind.

  • Participate in code reviews and contribute to team coding and design practices.

  • Support CI/CD and automated software testing.

  • undefined

#J-18808-Ljbffr

Embedded Software Engineer in sunnyvale at Unknown Company

This position is listed as full time and onsite.

Back to Job Search