Apple Sr Software Engineer - Computational Geometry in Santa Clara Valley, California
Sr Software Engineer - Computational Geometry
Job Number: 57454314
Santa Clara Valley, California, United States
Posted: May. 17, 2017
Weekly Hours: 40.00
A job at Apple is unlike any other you’ve had. You’ll be challenged. You’ll be inspired. And you’ll be proud.
7+ years developing GIS, EDA/CAD, graphics, or related software
10+ years of proficiency in Java or C++.
5+ years of deep development and architecture of a geometric processing library like CGAL, JTS or similar.
3+ years of development of large scale data processing software
Deep understanding of spatial projections models and their implications on the processing of geometry.
The Maps Data team is looking for an engineer to help develop spatial data processing pipelines. This team provides end-to-end geometric solutions, from low-level algorithms to high level flows and distributed processing pipelines.
The ideal candidate will have experience with geometric algorithms, deep understanding of complexity analysis, practical large scale distributed computing and proven ability to implement robust solutions.
Design and develop advanced geometric processing libraries and functions for maps data processing.
Review and consult on geometry architecture for multiple maps data teams.
Develop specialized functionality to support maps conflation use cases.
Design and performance optimize geometric operations for distributed processing
• PhD in computer science with a focus on computational geometry, graphics or equivalent.
Significant contributions to geometric libraries such as CGAL or JTS.
Recognized expert in the field of computational geometry based on research and publication track record.
Track record of delivering production quality software in C++, Java or equivalent.
Significant experience with writing stable Boolean spatial processing operators beyond levels of stability provided by packages like JTS.
Practical experience with designing efficient distributed algorithms and applications using standard platforms (MPI, Spark, MR).