Facebook Software Engineer, HW System in Menlo Park, California

Intro:

Facebook's mission is to give people the power to share, and make the world more open and connected. Through our growing family of apps and services, we're building a different kind of company that helps billions of people around the world connect and share what matters most to them. Whether we're creating new products or helping a small business expand its reach, people at Facebook are builders at heart. Our global teams are constantly iterating, solving problems, and working together to make the world more open and accessible. Connecting the world takes every one of us—and we're just getting started.

Summary:

Facebook is seeking a Software Engineer to join our Infrastructure design team. This person will be an integral member of the team, responsible for owning the embedded software design and optimization for new server hardware topologies. This person will also be responsible for design and implementation of domain specific compilers, targeting range of cutting edge Facebook application domains and collaborating with diverse teams within the company. This role requires strong communication skills, as well as comprehensive troubleshooting and analytical skills. This position is full-time and located in our Menlo Park office.

Required Skills:

  1. Create and maintain system software stack including device drivers, firmware and middleware to interface with the hardware

  2. Work with team to bring up new hardware and test functionality

  3. Work with team on test suites for production and validation to stress software release for reliability stability

  4. Compiler design and implementation for domain specific languages and programming models

  5. Offload programming models and compilers (eg., GPU or Xeon Phi)

  6. Code generation and optimization for heterogeneous environments

Minimum Qualifications:

  1. BS in Computer Science or Electrical Engineering

  2. Experience with optimizing compiler: Code optimizations and generation, Data flow analysis & Parallel Programming Models, Languages and Runtime Systems

  3. Experience in coding with C/C++

  4. Experience with Linux kernel and device driver model

  5. Experience with designing and building hardware-software interfaces

  6. Experience with x86/ARM architectures

Preferred Qualifications:

  1. Experience with latest server architecture and components

  2. Experience and understanding ML algorithms and frameworks

Industry: Internet

Equal Opportunity: As part of our dedication to the diversity of our workforce, Facebook is committed to Equal Employment Opportunity without regard for race, color, national origin, ethnicity, gender, protected veteran status, disability, sexual orientation, gender identity, or religion. We are also committed to providing reasonable accommodations for qualified individuals with disabilities and disabled veterans in our job application procedures. 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.