Meta AR/VR Job | Embedded Software Engineer
Job（岗位）: Embedded Software Engineer
Citys（岗位城市）: Remote, US | Sunnyvale, CA | Austin, TX | Burlingame, CA | Redmond, WA
Meta Reality Labs focuses on building technology to help people connect through Augmented Reality (AR) and Virtual Reality (VR). Our embedded software will enable AR and VR devices where our real and virtual world will mix and match throughout the day. We believe the way to achieve our goals is to look at the entire stack, from custom ASICs and new technologies, firmware, algorithms, OS, to user experiences.
As an Embedded Software Engineer, you will architect, design, build and test embedded firmware systems for future AR, VR, or New Technology Teams. In this role, you are expected to participate in the definition of architecture and implementation of designs in both prototype and shipping consumer products as well as demonstrate good development practices and seamless collaboration. Our teams deliver all embedded software from low-level device drivers, to computer vision, to machine learning algorithms.
Engineering for Reality Labs device systems spans multiple target classes, requiring deep collaboration across engineering disciplines (electrical, mechanical, algorithms, user experience, silicon architects, and software) and directly impacting user immersion. Our engineers quickly solve problems, generate big ideas, work in new technology areas, drive concepts into prototypes, and envision how those prototypes transition to high-volume consumer products. You will join a world-class team of experts exploring new concepts through rapid prototyping leading to shipping products.
Experience with embedded software design and programming in C/C++ for development, debugging, testing and performance analysis
4+ years of experience in embedded software development
Experience in understanding hardware, clock-level issues, bridges, delays, interrupts, clock gating, polling etc.
Experience building software for complex embedded systems or custom SoCs
Experience partnering and/or collaborating across multiple teams
B.S. degree in Computer Science or Electrical Engineering or equivalent experience
Lead Firmware Engineering activities and provide technical leadership and guidance to team members
Analyze, design, develop, and debug firmware for a wide variety of AR and VR consumer devices, including novel sensing and imaging systems, haptic devices, and audio prototypes
Collaborate closely in a team environment with silicon architects, hardware designers, OS team, and algorithm and model development teams
Support all phases of hardware development – including early architecture requirements definition for custom silicon, firmware architecture, implementation, simulation, FPGA debug, chip bring up and support systems and software teams on algorithm development on validated systems
Understand and implement power-management, boot loaders, scheduling, inter-processor communication and firmware/system interfaces on RTOS and/or bare-metal environments
Experience with compression, camera and video pipelines, or encoding technologies such as H.264
Hands-on coding experience with peripherals such as UART, SPI, CSI-2, i2c, GPIO, USB
Experience with wireless and wired communication protocols, TCP/IP, Ethernet, Bluetooth and 802.11
Experience across topics including computer graphics, computer vision, or machine learning
Experience with silicon, device manufacturing, and low-power SoCs
Experience with active power management or power optimizations
Experience with prototyping or pre-silicon environments (FPGAs, simulation, or emulation)
Experience with lab instrumentation like oscilloscope, logic/protocol analyzers for debugging embedded systems at HW level
Experience with embedded DSP, CPU, and GPU architectures
Experience developing with modern Real Time Operating Systems