Software Development Engineer

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

Summary

Posted:
Role Number:200201657
Are you passionate about applying your deep understanding of C/C++/Java, Internet-scale distributed systems, and database technologies in creative ways? We at Apple’s iCloud Mail team are searching for an excellent Software Engineer. Our team is responsible for building cutting-edge infrastructure that supports our production mail service used by millions of users sending billions of messages on a daily basis. This is a highly-visible position that will leverage your skills on the design, implementation, testing, and deployment of the software for our mail infrastructure.

Key Qualifications

  • Strong hands-on experience with C, C++, or Java
  • Strong hands-on experience with debugging and analyzing crashes or core dumps
  • Strong knowledge or strong desire to work on cloud infrastructure
  • Practical experience with architecture and design of cloud-scale distributed systems
  • Familiarity with modern server scaling technologies on Linux (e.g., async, non-blocking I/O, multi-threading)
  • Practical experience designing, building and maintaining large-scale, high-performance systems and frameworks
  • Love for same-team and cross-functional collaboration
  • Secondary scripting language experience
  • Ability to wear multiple hats; possession of do-whatever-it-takes ability and attitude
  • Practical experience with RESTful APIs

Description

Consider joining a small team writing the software which provides mail services to iCloud customers. As a key member on our team, you are responsible for maintaining our technology stack and for crafting new functionality. You are an extremely capable engineer who has a strong background in building high-performance, scalable and extensible systems. Your flexibility is essential to delivering creative features on time with excellent quality, such as the willingness to learn about the system by fixing bugs. You love collaborating within the team and with cross-functional engineering teams. In addition to crafting efficient, testable, easy-to-maintain code, you recognize the importance of writing functional specifications and design documents. Quality is number one in your mind, and you thrive on building comprehensive unit and end-to-end tests, not only for features you build but also for existing features that need more testing.

Education & Experience

BS or MS in Computer Science or equivalent.

Additional Requirements

  • Excellent collaborative skills
  • Outstanding written and verbal communication skills
  • Strong attention to detail
  • Comfortable working in a loosely structured organization
  • Highly professional, with the ability to deliver solid work on tight schedule
  • Understanding of SQL and NoSQL systems a plus
  • Understanding of isolation and consistency models in distributed systems a plus
  • Understanding of internet mail systems a plus