Apple Software Engineer - Messaging Services (Video and/or VoIP applications) in Santa Clara Valley, California
Software Engineer - Messaging Services (Video and/or VoIP applications)
Job Number: 113133750
Santa Clara Valley, California, United States
Weekly Hours: 40.00
We are an exciting and fast-paced server engineering team that is responsible for two of Apple’s most popular and highly visible services — FaceTime and iMessage. Our work is prominently displayed on the home screen of every new iPhone and iPad. We create experiences that touch the hearts of millions of people.
We are a small team, but we are highly visible due to the nature of services we offer, and their importance to our customers. We are looking for an extremely capable software engineer to join our team. You will be responsible for designing, developing, maintaining and monitoring large scale distributed cloud messaging services that have a very high level of reliability and availability. The systems you build will support a very high throughput at super low latencies.
You will have the opportunity to explore and contribute to a wide range of technologies.
2 - 5 years of experience developing server software in Java, C, C++ or C#.
Experience in building real time communication systems.
Experience with network protocols, storage systems, security algorithms, and Unix system internals.
Experience designing and developing large distributed systems and maintaining them in production.
Solid understanding of realtime and multi-thread programming concepts.
Independent, driven, motivated and passionate about the products we work on.* Proven, practical experience with at least two of the following:
- ICE, TURN, STUN, SIP, RTP, SRTP
- Video and/or VoIP applications
- Developing application level networking technologies and protocols
- Asynchronous I/O programming
Work and contribute towards the engineering of Real-time communication platforms. The ideal candidate has a solid background on network protocols, understands client-server architectures and distributed systems. You will build the server stacks for iMessage, FaceTime, Push Notifications and help us grow this platform to support several new services in the future. You'll design system architectures, specify custom network protocols, and implement high performance code. You'll also develop scalability strategies for applications that support hundreds of millions of users. Because we are a small team with high visibility, the opportunities for you to make an impact are boundless. If you are a person that can seize these opportunities and run with them, you will enjoy working here.
The ideal candidate should be:
extremely motivated and driven
should feel a personal stake in the services we are responsible for
be able to juggle multiple priorities and manage uncertainty
You should have excellent communication skills and the ability to build strong relationships with the people you work with.
You should be prepared to deliver high quality results, and your success will be measured by the quality, size and timeliness of your deliverables.
BS or MS or Phd in Computer Science or equivalent industry experience