Software Engineer - Machine Learning Data Pipeline
Santa Clara Valley (Cupertino), California, United States
Software and Services
Imagine what you could do here. At Apple, great ideas have a way of becoming great products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. Apple’s Applied Machine Learning team has built systems for a number of large-scale data science applications. We work on many high-impact projects that serve various Apple lines of business. We use the latest in open source technology and as committers on some of these projects, we are pushing the envelope. Working with multiple lines of business, we manage many streams of Apple-scale data. We bring it all together and extract the value. We do all this with an exceptional group of software engineers, data scientists, dev-ops engineers and managers.
- The position requires a solid knowledge of secure coding practices and experience with open source technologies.
- Experience in distributed systems, design and implementation of high throughput, low latency applications.
- Extensive hands-on experience building solutions for large-scale internet infrastructure.
- Solid understanding of Spark, HDFS, Hive, ORC and Presto.
- Strong Object Oriented Programming skills and proficiency in Java.
- Deep understanding of TCP, websockets, and libraries like Netty.
- Experience developing ETL solutions for clients in different domains dealing with various types of challenging data.
- Extensive experience solving complex technical problems.
- Experience architecting distributed systems, concurrent programming, and coding data structures.
- Real passion for process improvement.
- Excellent analytical skills, critical thinking, and interpersonal skills.
- Strong ability to learn new technologies in a short time.
- Meticulous attention to detail and dedication to quality; Excellent written and oral communication skills on both technical and non-technical topics.
- Strong teamwork, leadership, and time management skills; passion for leading, mentoring and developing junior team members.
Join Apple's AML Team, as a Senior Software Engineer, to build innovative software applications. We are looking for an extraordinary engineer with a deep understanding and genuine passion for development. You should have development and implementation experience on large scale mission critical applications. You are expected to be self-motivated, dedicated, and a solution-oriented individual. The main responsibilities for this position include: - Designing innovative solutions while playing a hands-on development role to deliver products in a rapid and dynamic environment. - Strong collaboration skills. - Develop tools to monitor system health, performance, and reliability.
Education & Experience
BS in computer science with 7-10 years or MS plus 5-7 years experience or related experience.
- - Understanding of encryption algorithms and technologies.
- - UNIX Systems programming.
- - Understanding of JVM internals and garbage collection.
- - Some experience in statistics and machine learning.
- - Some working knowledge of scripting languages like Perl or Python.