Cloud Messaging Services-SW Engineer

Santa Clara Valley (Cupertino), California, United States
Software and Services


Weekly Hours: 40
Role Number:200152994
We are a highly collaborative team, doing work that is extraordinarily impactful and meaningful. We touch hundreds of millions of users across a billion devices around the world enabling them to connect and share their lives securely and privately. Our internet-scale distributed systems enable real-time experiences with very low latency and very high availability. We built brand new experiences on this platform like Group FaceTime, Business Chat, and Watch Walkie-Talkie over the past year. And we continue to push the boundaries by evolving iMessage, FaceTime, and Push Notifications for the next billion devices. This is a platform that solves a large breadth of challenges across identity, messaging, queueing, presence, routing, relays, developer APIs, and much more. Does this interest your creative and development chops? If so, come join our Cloud Messaging Platform Engineering team! Our work is complex, challenging and highly visible. We are a small team but large in impact!

Key Qualifications

  • 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.
  • Deep understanding of realtime and multi-thread programming concepts.
  • Independent, driven, motivated and passionate about the products we work on.
  • Developing application level networking technologies and protocols Asynchronous I/O programming.


You will work and contribute towards the engineering of Cloud Messaging Platform. You have a proven 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. You should be: deeply motivated, driven and should feel a personal stake in the services we are responsible for. Be able to juggle multiple priorities and handle 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 work you're doing. We're looking for a talented and passionate person to join this amazing team, if you feel this is you, we'd love to hear from you.

Education & Experience

Bachelor's degree / PhD in computer science or equivalent.

Additional Requirements