Software Infrastructure and Development Lead

    • Cupertino, CA

Summary

Posted: May 7, 2020

Role Number: 200169576

Apple is looking for a hardworking, dedicated, and results-oriented senior software engineer. The successful candidate will lead all aspects of the software architecture, lead software architecture reviews, prescribe and maintain various developer workflows, design and implement cloud migration for various processes, come up with data visualization and publication tools, and be the general point-person for all matters related to software development processes and practices. Join Apple and help us leave the world better than we found it!

Key Qualifications

  • 5+ years of experience in a build, infrastructure or QA environment.
  • Expert in software development practices C++/Python.
  • Demonstrated ability to build complex tooling and pipelines for continuous-integration machinery, web tools, dashboards, and build systems.
  • Ability to design and maintain custom workflows for processing data, for use on the cloud or at the desktop.
  • Ability to lead and coordinate a large number of stakeholders and e.g. developers, managements.


Description

The successful candidate will be responsible for the infrastructural needs of a team of domain-specific scientists and engineers. Duties will include (but are not limited to): - Data publication and visualization (dashboards, reports, etc.) - Migration of processing pipelines to the cloud. - Build system enhancement, debugging and maintenance, in collaboration with other engineers outside the team. - Data repository management, maintenance, improvement. - Design and evangelize new developer workflows in response to changing project needs.

Education & Experience

B.Sc. in Computer Science or allied field, or equivalent professional experience.

Additional Requirements

  • - Write documentation for existing or new processes.
  • - Ability to arrive at a plan of action in the presence of conflicting views and ambiguous requirements.
  • - Ability to understand how various parts of a large software system fit together, and the ability and inclination to disseminate this information to team members.



Back to top