Senior Embedded Software Engineer

About the Employer

Magic Leap is an eclectic group of people who share a magical vision of the future. And we’re growing.

Our mission is to harmonize people and technology to create a better, more unified world. Our vision is to amplify the best parts of you and to advance the human spirit.

Job Description

Magic Leap is seeking an embedded software engineer with experience working on Linux-based embedded platforms. They will also be comfortable developing kernel modules and device drivers and working directly in the kernel.

We’re building the next generation spatial computing platform, and need engineers who are willing to dive in and help us create the best product possible. If you are the successful candidate, you will get to work on a system that requires strict timing tolerances under heavy loads, novel approaches to displaying content, and much more. You will get to make tough technical decisions that help shape the direction of our product.

Qualifications

Required:

  • 5+ years of experience in embedded software development
  • Strong knowledge of embedded Linux development
  • Fluent in the C language, proficient in C++
  • Experience with embedded development tools and processes
  • Familiarity with Linux performance, memory utilization, and extensible architectures
  • Experience in architecting drivers for peripherals over various interfaces, including I2C, SPI, USB, and PCI-E
  • Experience in designing and implementing asynchronous or concurrent multithreaded systems
  • Must understand common protocols for communication with hardware and other software modules, such as TCP/IP, I2C, PCI, ring buffers, and cross-core interrupts
  • Must be a good communicator and self-motivated to complete projects, and enjoy HW/SW debugging

Preferred:

  • Experience with RTOS
  • A basic understanding of the HW/SW requirements of machine vision
  • Experience in a high-volume production environment
  • Experience with using JTAG debuggers, logic analyzers, and other debuggers
  • Experience with commonly-used mobile operating systems (i.e. Android or iOS)
  • Ability to work directly with the hardware team for device bring-up and debugging a plus
  • Experience with interprocess communications

Education

  • BA/BS is required
  • MS or higher is preferred

Additional Information

  • All your information will be kept confidential according to Equal Employment Opportunities guidelines.