Facebook Reference C-Model Developer in Menlo Park, California


Facebook Reality Labs (FRL) is the world leader in the design of virtual and augmented reality systems. Come work alongside expert engineers and research scientists to create the technology that makes VR and AR pervasive and universal. Join the adventure of a lifetime as we make science fiction real and change the world.

We are seeking a Reference C-Model Developer to support system-level modeling of dedicated hardware accelerators (HWA) used inside low-per SoC. The successful candidate will be part of a team that includes algorithm, software, firmware, RTL and DV experts. The ideal candidate will understand algorithms and low-level RTL/firmware development process for custom HWA.

This is a full-time position based in either our Redmond, WA or Menlo Park, CA offices.

Required Skills:

  1. Work with IP Architect to delineate and develop bit-accurate models for algorithms that will get implemented in hardware (RTL)

  2. Start with existing algorithmic code in C/C++/MATLAB and implement SystemC or C models

  3. Support use of these SystemC and C models for architectural modeling and tradeoff analysis

  4. Aid RTL developers with micro-architecture and design

  5. Debug RTL and firmware implementations with DV engineer before chip tapeout

  6. Feedback hardware understanding and improvements to the algorithm designers

  7. Support multiple phases of SoC development – including algorithm refinement, co-design of hardware/firmware, RTL simulation, FPGA debug, chip bring up and support systems and software teams on algorithm development on validated systems

Minimum Qualifications:

  1. B.S. degree in Computer Science or a related field, or equivalent experience

  2. 3+ years of hands-on low-level programming experience including bit-level manipulation of data

  3. Knowledge of how hardware works including block-level interfaces and hardware control registers, on-chips vs. off-chip buffers

  4. Knowledge of how float and fixed point number systems work as well as converting float-point algorithms to fixed-point

  5. Software design and programming experience in C for development, debugging, testing and performance analysis

  6. Experience in Silicon design process/workflow including porting algorithms to behavioral and functional code for custom hardware accelerators

  7. Experience supporting digital design and verification efforts

  8. Experience crossing multi-disciplinary boundaries to drive optimal system solutions

Preferred Qualifications:

  1. 5+ years of experience with algorithm implementations in C++

  2. Knowledge of video, computer vision and image processing including image file formats, meta data and related techniques for processing

  3. RTL simulation experience with SystemC and SystemVerilog testbenches

  4. Hands-on experience with OpenCV, OpenVX, FastCV

  5. Experience drafting, manipulating and maintaining scripts – Python or similar (Perl, bash/awk, Tcl)

  6. Experience with EDA design tools and instruction set simulators

Industry: Internet

Equal Opportunity: Facebook is proud to be an Equal Opportunity and Affirmative Action employer. We do not discriminate based upon race, religion, color, national origin, sex (including pregnancy, childbirth, or related medical conditions), sexual orientation, gender, gender identity, gender expression, transgender status, sexual stereotypes, age, status as a protected veteran, status as an individual with a disability, or other applicable legally protected characteristics. We also consider qualified applicants with criminal histories, consistent with applicable federal, state and local law. If you need assistance or an accommodation due to a disability, you may contact us at accommodations-ext@fb.com or you may call us at +1 650-308-7837.