Manager, Software Engineering, Facebook Reality Labs - Operating Systems
- Woodinville, WA
Facebook's mission is to give people the power to build community and bring the world closer together. Through our family of apps and services, we're building a different kind of company that connects billions of people around the world, gives them ways to share what matters most to them, and helps bring people closer together. 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 empower people around the world to build community and connect in meaningful ways. Together, we can help people build stronger communities - we're just getting started.
The Facebook Reality Labs organization's mission is to give people the tools to feel connected anytime, anywhere. We create new, category-defining consumer hardware and software that are immersive, social, and increase the depth of people's connections. The team is a diverse group of problem solvers, inventors, and proven visionaries who are relentless about transforming everyday occurrences into rich experiences that have the potential to improve the way billions of people live.
The ideal candidate has proven design and build skills, passion for low-level systems software and device driver programming, hands-on experience working on Operating Systems at the lower layers from firmware to BSP, and experience with shipping hardware/software products. You are the kind of leader who has expertise building and managing high performance teams creating high reliable, robust, and performant systems software.
You have hands-on experience leading teams bringing up new hardware and software systems and have significant experience debugging and repairing complex, multi-component system level issues using a variety of OS and bus level debugging tools, e.g. USB/Firewire/Ethernet protocol analyzers, kernel debuggers, OS event tracing infrastructure, etc.
- Manage a team of software engineers that builds the low level OS stack for Facebook's AR/VR device family.
- Build and lead team designing, implementing, debugging complex, system-level, multi-component issues that typically span across multiple layers from kernel to application.
- Manage engineers and help them develop their careers, assigning them to projects tailored to their skill levels, long-term skill development, personalities, and work styles.
- Communicate and collaborate effectively with cross-functional hardware and software engineering teams.
- Champion engineering and operational excellence, establishing metrics and process for regular assessment and improvement.
- Set clear expectations and create a positive work environment based on accountability, in collaboration with the engineering and management teams.
- Work closely with dedicated recruiting staff to expand the team, including sourcing candidates, interviewing candidates, participating in conferences/events, and on-boarding new employees.
- Build and lead team designing and implementing device and bus drivers that operate efficiently in a constrained environment yet when pressed can efficiently deliver large volumes of data with low-latency and high-bandwidth.
- Understand software components from multiple partner teams, lead the integration of those components into the unified product code base, and drive their continued development.
- 5+ years of experience in managing engineering teams including hiring/termination and performance management.
- 5+ years of work experience architecting, developing, and launching software products and/or services.
- 5+ years of experience with Linux, Android, open-source software, or mobile SoCs.
- Experience shipping consumer products.
- Proven track record of building and supporting cross-functional teams.
- Experience supporting, coaching, mentoring, and developing engineers.
- Demonstrated experience working collaboratively in cross-functional teams.
- Experience developing, debugging, and shipping software products on large code bases that span platforms and tools.
- Experience in managing managers.
- Experience with low-latency, bandwidth, streaming hardware devices, e.g. video cameras, graphics cards, etc.
- Experience developing software for consumer electronics devices.
- Experience in one or more of the following: Android Kernel/Framework experience, linux kernel, ARM Platforms, power management, on-device firmware (MCU or DSP), device bring up and bootloaders, User Space/Core Services, BSP, Networking, Storage, Wireless, Security, Graphics, Audio.
- Experience working on multiple classes of drivers e.g., bus, block, wireless, display drivers.
Back to top