Sr Software Engineer, Applied Machine Learning - Apple
- Data Analytics
- Data Engineer
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.
- Strong Object Oriented Programming skills and proficiency in languages like Java/C++.
- Experience in distributed systems, design and implementation of high throughput, low latency applications.
- Solid CS background, concurrent programming, and data structures.
- Solid understanding in NoSQL technologies like Cassandra.
- Solid understanding and working knowledge on Hadoop.
- Deep understanding of TCP, websockets, and libraries like Netty.
- Excellent problem solving skills, critical thinking, and communication skills.
- Strong ability to learn new technologies in a short time.
Join Apple's Applied Machine Learning Team, as a Senior Software Engineer, to help build innovative software applications. Candidates should have development and implementation experience on large scale mission critical applications. The main responsibilities for this position include:
Architecting innovative solutions while playing a hands-on development role to deliver products in a rapid and dynamic environment.
Be involved in challenging and fast paced projects supporting Apple's business by delivering innovative solutions to given challenges. Develop tools to monitor system health, performance, and reliability.
The candidate is expected to be self-motivated, pro-active, and a solution-oriented individual.
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.