Software Engineer - Core Networking

Cupertino, California, United States
Software and Services

Summary

Posted:
Role Number:200553179
The Networking team creates foundational technologies that enable Apple products to communicate with each other and the rest of the world reliably, efficiently, securely, and privately. The team achieves this through invention and implementation of new technologies, collaboration inside and outside of Apple, and standardization across the industry. You, as a talented and energetic software engineer will join our Networking Infrastructure team. The team is responsible for designing, enhancing and maintaining the core networking stack OS components used in the majority of Apple's platforms, including but not limited to macOS, iOS, iPadOS, watchOS and tvOS! Specific areas of responsibility include networking APIs, protocols, as well as performance optimizations of various networking layers. The ideal candidate should posses an excellent conceptual understanding of networking stack internals and their interactions within the Operating System, both towards applications as well as network device drivers. Good working knowledge of TCP/IP and system level software design and implementation experience is also essential. The position will require the right candidate to determine the appropriate compromise between several competing factors such as performance (throughput and latency), energy efficiency (CPU and memory usage), ease of use and security.

Description

The candidate needs to be able to work in a fast paced environment, operate gracefully under stress, handle multiple assignments in parallel, and be self driven to be effective in an environment with little overhead. The candidate also needs to show initiative, be able to take ownership of a problem area, and demonstrate an ability to understand the role of the group's technology in the larger context of the product and network environment. The position has cross-functional aspects and the candidate will need to show excellent interpersonal and communication skills.

Minimum Qualifications

  • BS in Computer Science, Electrical Engineering or equivalent networking software development experience
  • Networking system and hardware/driver development experience
  • Software design and development skills, including C and/or C++
  • Experience in high speed and highly scalable networking architecture (DPDK, RDMA, HW offload, network virtualization)

Key Qualifications

Preferred Qualifications

  • System and network troubleshooting, profiling and debugging skills
  • Excellent communication and interpersonal skills

Education & Experience

Additional Requirements

Pay & Benefits

  • Apple is an equal opportunity employer that is committed to inclusion and diversity. We take affirmative action to ensure equal opportunity for all applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or other legally protected characteristics. Learn more about your EEO rights as an applicant.