Software Engineer

Santa Clara Valley (Cupertino), California, United States
Hardware

Summary

Posted:
Weekly Hours: 40
Role Number:200161348
The Apple Ecosystem Tools team is looking for a Software Engineer to join us in building protocol analyzers and tools for a wide variety of communication protocols, including HomeKit, CarPlay, AirPlay 2, GymKit, and more! We develop macOS and iOS apps used by Apple engineers and third party manufacturers to debug and certify their devices and accessories. We work closely with the development of these protocol specifications as well as their certification procedures.

Key Qualifications

  • Proficiency in Swift/Objective-C or C/C++
  • Practical experience in native application development
  • Strong interest in software architecture and design patterns
  • Experience creating user interfaces is desire
  • Excellent communication skills are a requirement due to the high level of interaction with cross-functional engineering teams

Description

Our software enables Apple to create robust feature-rich protocols that evolve constantly. Our tools perform a wide variety of functions, including: parsing protocol data, validating communication requirements, simulating traffic, automated testing, negative testing, and more. Most of this functionality is driven with a UI-rich app. You will work with a diverse array of cross-functional team members within Apple. Your dedication to this cross-disciplinary collaboration will help develop groundbreaking technologies and experiences that span across all the hardwares made by Apple’s partners around the globe, as well as impacting Apple devices and software!

Education & Experience

BS or MS in Computer Science, Computer Engineering or equivalent

Additional Requirements

  • Nice to have:
  • - Knowledge of technologies and protocols (including USB, Wi-Fi, Bluetooth, TCP, UDP, HTTP)
  • - Knowledge of Apple frameworks and commonly used design patterns
  • - Experience with AppKit/UIKit, git, asynchronous programming, unit testing