You and the process

With a person
Anna, in-house recruiter
9 years hiring engineers
30 minutes with a real recruiter
They read your CV with you, on a call, and say where the offers are being lost.
Didn’t find what you were looking for? Tell us what to build
Intuitive

Embedded Software Engineer

  • Office
  • 6+ years

Salary

Not stated

Similar roles pay $155K - 240K a year · our estimate

AI summary

For members

The whole posting in a few lines. Sign up to read it here and on every role you open.

Sign Up to Read

Description

The Ion endoluminal system is a robotic platform for minimally invasive biopsy in the peripheral lung, aimed at earlier lung cancer diagnosis.

The role sits in the New Product Development Platform Software team and centres on embedded application software, middleware, and system services used across the robotic platform.

You will work with software, systems, hardware, and test teams to design, build, integrate, and debug dependable software for an embedded computing platform that combines CPUs, GPUs, FPGAs, and other specialised hardware. Strong C/C++ application skills, an understanding of software architecture and data management, and interest in reusable platform services and APIs are essential.

Responsibilities

  • Design, implement, test, and maintain C/C++ applications and middleware on embedded Linux.
  • Build reusable system services, libraries, and APIs that several applications and subsystems share.
  • Write software for configuration, preferences, persistent system data, diagnostics, and system management.
  • Design and implement structured data storage and retrieval.
  • Build multi-threaded applications and inter-process communication.
  • Integrate application and middleware software across CPUs, GPUs, FPGAs, and other specialised processors.
  • Create and maintain interfaces between applications, platform services, and hardware-accelerated components.
  • Extend existing software frameworks to support new product features and system capabilities.
  • Take part in API, interface, and software design reviews.
  • Debug problems across application, middleware, operating system, and hardware interfaces, and carry out root-cause analysis of software defects.
  • Diagnose faults where CPU software interacts with GPU, FPGA, or other hardware-accelerated components.
  • Use Linux tools such as gdb, logs, tracing tools, and command-line utilities to find problems.
  • Work with software, EE, and FPGA engineers to understand interfaces and resolve integration issues.
  • Support software integration, verification, validation, and product bring-up.
  • Write modular, testable, maintainable software that handles faults, protects data integrity, and is easy to service.
  • Write unit and integration tests for new components.
  • Take part in code reviews and help shape team coding and design practices.
  • Support CI/CD and automated software testing.

Requirements

  • Strong C or C++ skills (C++11 or later) with experience shipping production software.
  • Experience building applications or middleware on Linux or another POSIX-based operating system.
  • Understanding of object-oriented design, modular architecture, and API design.
  • Experience with multi-threaded software and concurrency.
  • Understanding of inter-process communication and client/server architectures.
  • Experience designing or building software that manages persistent application or system data.
  • Understanding of data modelling, schemas, transactions, concurrency, and data integrity.
  • Experience debugging application and system software with Linux development tools.
  • Familiarity with networking concepts and protocols such as TCP/IP.
  • Ability to work with software interfaces across heterogeneous systems that include CPUs and hardware accelerators.
  • Experience with configuration management, code reviews, and unit and integration testing.
  • Working knowledge of Python or shell scripting for development, testing, or automation.
  • Strong written and verbal communication, and the ability to work well in a cross-functional team.
  • Bachelor's degree with 6+ years of industry experience, or Master's degree with 4+ years of industry experience, in Computer Science, Computer Engineering, or a related engineering field.
  • 4+ years of hands-on experience developing and supporting embedded systems in production.
  • Preferred: experience developing middleware, platform services, or reusable software frameworks.
  • Preferred: experience with software for heterogeneous platforms involving CPUs, GPUs, FPGAs, DSPs, or other accelerators.
  • Preferred: experience integrating software with GPU-accelerated or FPGA-based subsystems.
  • Preferred: experience with embedded or local data persistence such as SQLite.
  • Preferred: experience developing configuration, preferences, or system-state management services.
  • Preferred: experience with IPC technologies such as sockets, shared memory, message queues, or RPC frameworks.
  • Preferred: familiarity with serialisation technologies such as protobuf or JSON.
  • Preferred: experience developing embedded Linux applications.
  • Preferred: familiarity with systemd or similar Linux service-management frameworks.
  • Preferred: experience with asynchronous or event-driven architectures.
  • Preferred: familiarity with Yocto/OpenEmbedded or embedded Linux build environments.
  • Preferred: experience with medical devices, robotics, automotive, industrial automation, or other complex embedded systems.
  • Preferred: experience in regulated, safety-critical, or mission-critical product development.

Conditions

Proof of current vaccination against certain diseases, including COVID-19, may be required by the company or its customers. Requirements can differ by role.

Export controls: some roles may be subject to U.S. Export Administration Regulations for prospective employees who are nationals of embargoed or sanctioned countries. Where that applies, offers depend on an approved export license and/or a Technology Control Plan being in place before the start date. Licensing can take 3 to 6+ months, and a Technology Control Plan typically adds 2 weeks to hiring.

Qualified applicants with arrest and conviction records are considered in line with fair chance laws.

Preference is given to qualified candidates who do not live, or plan to live, in Alabama, Arkansas, Delaware, Florida, Indiana, Iowa, Louisiana, Maryland, Mississippi, Missouri, Oklahoma, Pennsylvania, South Carolina, or Tennessee.

The role may be filled at a different job level than listed, depending on business need and the selected candidate's experience, knowledge, and skills.

Pay is set mainly by the job level at which the role is filled and the candidate's qualifications, as permitted by law.

Where you’d work

From the office

About the company

Intuitive

  • Industry: HealthTech

Office in Sunnyvale, United States

Also hiring in Madrid, Spain, Germany, CA, United States and 6 more places

19 of their 98 open roles are remote

Your chances

Worth a look before you spend an evening tailoring a CV for it.

  • 19 checks run
  • 3 red flags

Still hiring?

13 checks

2 red flags

How crowded?

6 checks

1 red flag

Fits Me

How well does this role fit you?

Answer a few questions or drop your CV, and every role gets a fit score with the reasons, this one first.

  • Your field
  • Level
  • Stack
  • Work model
  • Salary floor
  • Must-haves
Details11 facts · Role, Location, Compensation, Employment, Company
Tech stack
  • Python
  • C++
  • Linux
  • CI/CD
Type
Full-time
Industry
HealthTech
Specialty
Backend
Region
United States
Pay period
Annual
Show 5 more factsShow less

Role

Category
Development
Specialty
Backend
Experience
6+ years
Tech stack
  • Python
  • C++
  • Linux
  • CI/CD

Location

Work model
Office
Region
United States
Office
  • Sunnyvale, United States

Compensation

Salary
Salary by agreement
Pay period
Annual

Employment

Type
Full-time

Company

Industry
HealthTech

Something wrong with this vacancy?

Similar vacancies

Share this vacancy

What's wrong with it?

The employer never sees who reported.

Reason