Sr. Software Engineer, Apple Pay

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

Summary

Posted:
Weekly Hours: 40
Role Number:200105618
Imagine what you could do here. At Apple, great ideas have a way of becoming phenomenal products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. What We Do * Create a complex, multi-dimensional application bridging personal devices and cloud services * Envision distributed state and how to manage it across millions or hundreds of millions of devices * Negotiate and drive the realization of features from business requirements, to high level designs, to functional specifications, to actual coding implementation * Negotiate with external partners, SREs, QA, performance testing, and end-to-end testing * Coordinate with remote locations and internationally.

Key Qualifications

  • Architect and implement new features for Apple Pay
  • Write solid Java code, fitting into extensive frameworks and services, that is extremely clear, elegant, and testable
  • Design specifications and protocols to tackle novel problems
  • Support ongoing development efforts
  • Work on overall team’s efforts to fix bugs and diagnose existing issues
  • Embrace test-driven development

Description

Apple Pay brought mobile payment to millions of customers and it’s just the beginning. We are looking for engineers who are equally comfortable working at the bits and bytes level and designing state of the art objected-oriented web-services. Imagine the freedom of a startup but with the funding and focus of the most valuable company in the world. Desired Experience: - Java request handling frameworks (Tomcat, Jetty, Netty, etc.) - Relational, NoSQL, and streaming (e.g. Kafka) persistence - Caching frameworks (Memcached, Redis, etc.) - JSON, Spring dependency injection, Object-relational mappers - Threading, concurrency, scalability - Ability to use both object-oriented and functional coding techniques Great-to-have Experience: - Encryption TDES/AES, RSA/ECC, PKI - GlobalPlatform 2.2.1 - BSI Technical Guideline TR-03111 - NIST Special Publication 800-38B - EMV Tokenization - APDU/JavaCard - Asn.1 - HSM (Thales)

Education & Experience

BS degree in computer science or equivalent field plus 3-4 years software development experience or MS degree plus 1-2 years software development experience, or equivalent

Additional Requirements