Software Engineer - HD Maps
Santa Clara Valley (Cupertino), California, United States
Software and Services
In this role you will be responsible for a combination of analysis, modeling, and building production services for internal use. You will work in a multi-functional team requiring creative problem solving and you’ll get to put these ideas into practice.
- You have algorithm design and complexity analysis
- You are experienced designing for latency, crafting for throughput
- You posses distributed systems concepts experience (CAP, “Fallacies of Distributed Computing,” etc)
- Interface design (software APIs, etc)
We’re seeking candidates who are confident in moving forward executing their own ideas but humble enough to view their own work with balanced scrutiny. Willingness to give and receive feedback is required for success. An ideal candidate is a strong software engineer who is equally comfortable working through statistical modeling exercises and communicating their work with the wider team.
Education & Experience
- BS/MS CS or equivalent experience
- - Understanding of basic statistics and modeling - Parallel computing (java.util.concurrent, CSP, etc) - Networking fundamentals (HTTP/HTTPS, TCP, UDP) - Compute fundamentals (concurrency models, distributed single-threaded versus coordinated multithreaded scheduling, synchronous and asynchronous IO) - Storage fundamentals (disk types and drive layouts, random and sequential IO, compaction) EXPERIENCE WITH OR STRONG DESIRE TO LEARN: - Modern Java (Java 8, streams, closures, try-with-resources, annotations, etc) - Dynamic scripting languages for quick analysis (bash, awk, sed, Python, etc) - Apache projects like Spark, HDFS, Hadoop, etc - Relational databases such as PostgreSQL - Presentation quality data visualization We don’t expect you’re an expert in everything described above, but we do hope you have strong experience in a few areas, and enough curiosity + desire to become skilled in others. If this position sounds like a good match for your interests and skills, please consider applying. You’ve found a unique team and a place to make a significant impact on Apple’s future.