Performance Engineer, Apple Pay
Santa Clara Valley (Cupertino), California, United States
Software and Services
Apple Pay is growing! Envision what you could do here. At Apple, new ideas have a way of becoming excellent products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. The Apple Pay organization strives to build payment solutions that are easy to use, secure, and a private way to pay on iPhone, iPad, Apple Watch, and Mac. You’ll be joining a team of extraordinary engineers and interacting every single day with teams that span across Apple including iOS software and hardware engineering, iCloud engineering, iTunes engineering, and our network and banking partners. Apple Pay Server engineering is looking for an excellent Performance Engineer with hands-on experience in “Data Services”. We are always looking for ways to creatively scale and improve the performance of our services that power our apps. The ideal candidate will have an in-depth understanding on the key technologies and architectures involving data storage, querying, searching, processing, messaging and streaming. You will be self-driven, able to constantly research, and challenge and propose solutions that can help us scale across multiple geographies, data-centers and millions of users.
- 10+ years experience in performance testing, tuning, and building solutions for scalability.
- 5+ years experience with relational databases and NoSQL stores.
- Strong understanding of distributed systems and their key aspects around reliability, scalability, replication, consistency, locking, etc.
- Working knowledge of InMemory Key-Value Stores, Stream processing (Spark or similar), Search (Elastic or similar) and Messaging (Kafka or similar) is helpful.
- Comprehensive understanding of multi-tier architectures with a track record of troubleshooting at all layers including application, middleware, operating systems, network and storage.
- Expert at implementing load generation, test automation and performance monitoring frameworks.
- Strong teammate with high level of commitment and excellent communication skills.
- Highly passionate to play with open-source software and make them scale in highly-secure environments.
- Good understanding of security fundamentals; authentication, authorization, cryptography, etc.
The job responsibilities are as follows: - Provide technical leadership and strategic direction to the engineering team by influencing design decisions and provide feedback during code-reviews. - Actively participate in cross-functional meetings to communicate status, highlight risks and offer mitigation strategies. - Analyze performance results and metrics to identify bottlenecks and opportunities for optimizations. - Conduct feasibility studies for new technologies/architectures and benchmark by prototyping. - Work with Infrastructure and SRE team to root cause live production problems. - Evangelize performance engineering best practices across Apple services. - Mentor junior performance engineers in the team.
Education & Experience
BS, MS, or PhD in Computer Science or equivalent industry experience.