Facebook Network Software Engineer (RTC Team) in Seattle, Washington


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.


We are the team that builds the Real-Time media stack for low-latency media connections at global scale. Do you want to build new features and improve existing products that connect people in real-time via Messenger, Facebook, Oculus, and more? Want to solve unique, large scale, highly complex technical problems? Facebook is looking for a hands on Software Engineering Lead with mobile networking experience. The candidate should have experience with lossy and unreliable networks, cellular and wifi stacks, bandwidth estimation and optimization, writing and debugging C/C++ code. This engineer will be personally responsible for the networking stack in a real-time communication engine, which includes real-time bandwidth estimation, buffering, and QoS across various devices and networks. This engineer will additionally support and optimize the real-time transport between two peer devices, single devices for media streaming to very large groups, and participating devices in a group video chat. Challenges this engineer will face include instantly estimating changes in bandwidth (below round trip latencies), buffering QoS to support real-time transmission of media while providing a more reliable stream for broadcasting, and supporting group video chats between multiple participants without degrading bitrates due to a single participant's slow connection. This position is full-time and based in our Seattle, WA office.

Required Skills:

  1. Identify areas of improvement for the real-time network transport on mobile devices.

  2. Design and conduct in field experiments with networking changes.

  3. Design and code reviews.

  4. Guide team to success.

Minimum Qualifications:

  1. Bachelor's Degree in Computer Science or related field (or equivalent experience)

  2. 2+ years of experience in SSL, TCP, UDP, RTP/RTCP, C++, Java, Linux, iOS/Android

  3. 2+ years of experience developing and debugging system level services in C, C++, Python, or Java, particularly on Linux and mobile devices (iOS and Android)

  4. 2+ years of experience with one or more of: telemetry data, filesystems, concurrency, multithreading, server architectures, distributed systems

  5. Experience developing, debugging, field testing, and crowd sourcing telemetry data for networking protocols

Preferred Qualifications:

  1. Data analysis background

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.