Facebook Automation Software Engineer in Menlo Park, California


As an Automation Software Engineer, you will design and deploy system level and tester level software systems and algorithms used to manufacture Oculus products in volume. You will work with domain experts in computer vision, optics, and research scientists to integrate calibration and testing algorithms into a high volume manufacturing environment. You should be adept at foreseeing potential system level outages, hardware issues and common use scenarios that would cause your software to fail, and design mitigation paths, redundancy, and error handling appropriately. You need to have technical understanding of implementing algorithms using nonlinear optimization, interfacing your software to real world sensors such as cameras, IMUs and motion systems, while gathering multiple streams of data in real time. An ideal candidate will have a passion for virtual reality, and developing software systems and services required to bring new products to market.

Required Skills:

  1. Design and implement core software features

  2. Work with other people and teams to integrate and develop test and calibration algorithms into a production environment

  3. Prototype new concepts. Develop concepts into production systems

  4. Write software on diverse code bases on windows/linux/embedded platforms

  5. Implement network based distributed services. (Knowledge of networking/network stacks, and ability to develop software implementing data exchange over tcp/http/tls working as a distributed system)

  6. Implement software optimization techniques to speed bulk data collection, image/data processing, and nonlinear solvers

  7. Develop multi thread/multi core applications using primitives and existing frameworks

  8. Interface your software with databases and other services to gather metrics

  9. Identify required tests and calibrations from a system level design, and implement against these while working with a cross-functional team comprising IT, operations EE, FW and hardware design groups to integrate your requirements into the product and manufacturing system

Minimum Qualifications:

  1. BS or higher in electrical engineering, computer engineering, or computer science

  2. 5+ Years of experience developing software with python/c++ or other languages

  3. Experience with encryption standards: AES, TLS, public/private key cryptography

  4. Experience applying linear algebra and descent based optimization

  5. Experience applying statistics to manufacturing processes

  6. Travel: 20% APAC, 10% domestic

Preferred Qualifications:

  1. Understanding of computer vision, coordinate systems, DSP algorithms, firmware

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.