High Performance Low Level Programmer in Cryptography
Apple
Software Engineering
Cupertino, CA, USA
USD 143,100-264,200 / year + Equity
Posted on Feb 26, 2025
Summary
Posted:
Weekly Hours: 40
Role Number:200592522
The Vector and Numerics Group is tasked with designing, enhancing and improving various subsystems running on iOS, macOS, watchOs and tvOS. Most of this support is encapsulated in the Accelerate framework, a well used library serving many technologies. The group is looking for an exceptional high performance programmer in cryptography to complement the team and make a difference. As a member of our fast paced group, you will have the unique opportunity to delight and inspire millions of Apple’s customers every day. You will work in a cross functional team which is implementing innovative and state of the art cryptographic routines to support the necessary computation for such things as machine learning and vision algorithms. Push the state of the art in low level computation and drive them towards energy efficient and high performance implementations by tightly integrating software and hardware.
Description
The successful candidate will have excellent understanding and knowledge of low level cryptographic algorithms and how to map them to a CPU micro architecture of NEON on ARM from a vector programming perspective. Team members are engaged in the design and optimization of low level computational support for machine learning and computational vision such as 2D Multi-layered convolution, LSTM in hand writing recognition, FFT and DFT for audio codecs, speech synthesis and encryption to mention a few technologies. Understanding and working knowledge of cryptographic algorithms such as AES and SHA is a desirable attribute. Being able to craft the fastest and the most energy efficient routines for a particular CPU core is a plus. Low level high performance programming experience is a must for this position. Being comfortable in vector assembly and low level C is a requirement. The ideal candidate would be at ease in developing both innovative and robust CPU core level algorithms derived from a particular technology’s need in a tight deadline .
Minimum Qualifications
- 5+ years low level algorithmic development in cryptography.
- Detailed knowledge of vector Instruction Set Architectures (ISA) of ARM.
- Strong understanding of computational efficiency.
- Excellent coding skills in ASM and C.
Key Qualifications
Preferred Qualifications
- Strong verbal and written communication skills.
- Ability to manage multiple tasks and self-prioritize.
- Ability to work with cross functional teams in compression related components.
Education & Experience
Additional Requirements
Pay & Benefits
Apple is an equal opportunity employer that is committed to inclusion and diversity. We take affirmative action to ensure equal opportunity for all applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or other legally protected characteristics. Learn more about your EEO rights as an applicant.