What are the responsibilities and job description for the Software Engineer - Embedded (BSP) position at Meta?
Summary:
Reality Labs at Meta is building products that make it easier for people to connect with the ones they love most, enjoy top notch wire-free VR, and push the future of computing platforms. We are a team of world-class experts developing and shipping products at the intersection of hardware, software and content.Reality Labs team is seeking Embedded Software Engineers with strong design and build skills, experience with low-level systems software and device driver programming and experience with shipping hardware/software products. This person will be an integral member of the team, responsible for embedded software design and optimization. This person will also be involved in developing a solid platform while working on a variety of domains to enable new experiences for augmented reality, virtual reality and social/family products.
Required Skills:
Software Engineer - Embedded (BSP) Responsibilities:
- Design and implement components at all layers of the system, e.g. kernel, synchronization primitives, resource allocators, memory management, security, I/O systems, persistence, etc.
- Design and implement drivers and services that operate efficiently in a constrained environment yet when pressed can efficiently deliver large volumes of data with low-latency and high-bandwidth.
- Own the definition of one or more work streams focused on hardware bringup, peripheral drivers and communication, silicon integration and power and performance management and optimization.
- Debug complex, system-level, multi-component issues that typically span across multiple layers from kernel to application.
- Profile performance problems and drive optimizations that span the entire software stack.
- Bring up new devices and lead debugging and performance tuning exercises that span multiple hardware/firmware/software teams.
- Understand software components from multiple partner teams, lead the integration of those components into the unified product code base, and drive their continued development.
Minimum Qualifications:
Minimum Qualifications:
- Bachelor's or Master's Degree in Computer Science, Computer Engineering, relevant technical field, or equivalent practical experience.
- 6 years' Software Engineering experience in the following: device driver development, embedded systems, or operating systems.
- 6 years' experience working on systems software in a large-scale C/C code base.
- 2 years' experience defining and driving technical work streams and providing technical leadership for software engineering teams.
- Experience with Software Development processes including: source control, bug tracking, and design documentation.
- Experience in hardware bringup using interfaces like ADC, GPIO, SPI, I2C, etc.
- Experience in one or more of the following areas: BSP/Board Support Package, Operating Systems, Android OS, RTOS, Bootloader, Power Management, Linux, Graphics and Display Drivers, MCU (Microcontroller).
- Experience developing, debugging, and shipping software products on large code bases that span platforms and tools.
Preferred Qualifications:
Preferred Qualifications:
- Deep specialized experience in two or more of the following areas: BSP/Board Support Package, Operating Systems, CoreOS, Kernel, Android Kernel, Bootloader, Power Management, RTOS, Linux, Graphics and Display Drivers, MCU (Microcontroller).
- Demonstrated experience working collaboratively in cross-functional teams.
Public Compensation:
$173,000/year to $241,000/year bonus equity benefits
Industry: Internet
Equal Opportunity:
Meta is proud to be an Equal Employment Opportunity and Affirmative Action employer. We do not discriminate based upon race, religion, color, national origin, sex (including pregnancy, childbirth, reproductive health decisions, or related medical conditions), sexual orientation, gender identity, gender expression, age, status as a protected veteran, status as an individual with a disability, genetic information, political views or activity, or other applicable legally protected characteristics. You may view our Equal Employment Opportunity notice here. We also consider qualified applicants with criminal histories, consistent with applicable federal, state and local law. We may use your information to maintain the safety and security of Meta, its employees, and others as required or permitted by law. You may view Meta's Pay Transparency Policy, Equal Employment Opportunity is the Law notice, and Notice to Applicants for Employment and Employees by clicking on their corresponding links. Additionally, Meta participates in the E-Verify program in certain locations, as required by law
Reality Labs at Meta is building products that make it easier for people to connect with the ones they love most, enjoy top notch wire-free VR, and push the future of computing platforms. We are a team of world-class experts developing and shipping products at the intersection of hardware, software and content.Reality Labs team is seeking Embedded Software Engineers with strong design and build skills, experience with low-level systems software and device driver programming and experience with shipping hardware/software products. This person will be an integral member of the team, responsible for embedded software design and optimization. This person will also be involved in developing a solid platform while working on a variety of domains to enable new experiences for augmented reality, virtual reality and social/family products.
Required Skills:
Software Engineer - Embedded (BSP) Responsibilities:
- Design and implement components at all layers of the system, e.g. kernel, synchronization primitives, resource allocators, memory management, security, I/O systems, persistence, etc.
- Design and implement drivers and services that operate efficiently in a constrained environment yet when pressed can efficiently deliver large volumes of data with low-latency and high-bandwidth.
- Own the definition of one or more work streams focused on hardware bringup, peripheral drivers and communication, silicon integration and power and performance management and optimization.
- Debug complex, system-level, multi-component issues that typically span across multiple layers from kernel to application.
- Profile performance problems and drive optimizations that span the entire software stack.
- Bring up new devices and lead debugging and performance tuning exercises that span multiple hardware/firmware/software teams.
- Understand software components from multiple partner teams, lead the integration of those components into the unified product code base, and drive their continued development.
Minimum Qualifications:
Minimum Qualifications:
- Bachelor's or Master's Degree in Computer Science, Computer Engineering, relevant technical field, or equivalent practical experience.
- 6 years' Software Engineering experience in the following: device driver development, embedded systems, or operating systems.
- 6 years' experience working on systems software in a large-scale C/C code base.
- 2 years' experience defining and driving technical work streams and providing technical leadership for software engineering teams.
- Experience with Software Development processes including: source control, bug tracking, and design documentation.
- Experience in hardware bringup using interfaces like ADC, GPIO, SPI, I2C, etc.
- Experience in one or more of the following areas: BSP/Board Support Package, Operating Systems, Android OS, RTOS, Bootloader, Power Management, Linux, Graphics and Display Drivers, MCU (Microcontroller).
- Experience developing, debugging, and shipping software products on large code bases that span platforms and tools.
Preferred Qualifications:
Preferred Qualifications:
- Deep specialized experience in two or more of the following areas: BSP/Board Support Package, Operating Systems, CoreOS, Kernel, Android Kernel, Bootloader, Power Management, RTOS, Linux, Graphics and Display Drivers, MCU (Microcontroller).
- Demonstrated experience working collaboratively in cross-functional teams.
Public Compensation:
$173,000/year to $241,000/year bonus equity benefits
Industry: Internet
Equal Opportunity:
Meta is proud to be an Equal Employment Opportunity and Affirmative Action employer. We do not discriminate based upon race, religion, color, national origin, sex (including pregnancy, childbirth, reproductive health decisions, or related medical conditions), sexual orientation, gender identity, gender expression, age, status as a protected veteran, status as an individual with a disability, genetic information, political views or activity, or other applicable legally protected characteristics. You may view our Equal Employment Opportunity notice here. We also consider qualified applicants with criminal histories, consistent with applicable federal, state and local law. We may use your information to maintain the safety and security of Meta, its employees, and others as required or permitted by law. You may view Meta's Pay Transparency Policy, Equal Employment Opportunity is the Law notice, and Notice to Applicants for Employment and Employees by clicking on their corresponding links. Additionally, Meta participates in the E-Verify program in certain locations, as required by law
Drexel University Co-op: Embedded Software Engineering
SRI -
Princeton, NJ
Drexel University Co-op: Embedded Software Engineering
SRI International -
Princeton, NJ
Calibration Engineer
Baanyan Software Services, Inc. -
Doylestown, PA