Sr. Software Engineer, Apple Media Products
Santa Clara Valley (Cupertino), California, United States
Software and Services
The iTunes Store is looking for a software engineer to help build creative features that will delight millions of customers around the world.
- Expert knowledge of developing and scaling Java web applications with very stringent latency requirements.
- Strong object oriented design and analysis skills coupled with a deep understanding of data structures and algorithms.
- Experience with Apache Solr / Apache Lucene. Experience in designing and implementing RESTful APIs.
- Experience working with object relational databases like Hibernate, Enterprise Objects Framework etc.
- Exceptional debugging, critical thinking, and interpersonal skills.
- Knowledge of JVM based languages like Clojure is a plus. Experience with one or more of the NoSQL solutions (Memcached / Redis / Voldemort / Cassandra / MongoDB etc.) is a plus.
- Experience writing effective unit and integration tests.
You will be part of the server team that powers various features within the Apple client applications - iTunes, App Store, iBooks, Podcast, Apple Music etc. You will be working cross functionally with various teams across Apple to deliver some really exciting features to our customers. Thinking about web service performance is a constant thing for us and we are searching for someone like-minded. If you are used to thinking about performance in terms of median, 95th percentile and 99th percentile, then we are looking for you! You would be someone who is not afraid to question assumptions, is a great teammate under tight deadlines and seeks problems with elegant technical solutions.
Education & Experience
BS or MS in Computer Science. 5 years professional software engineering experience preferred.
- Build large scale web-based projects and features, ensuring robust & maintainable solutions are implemented with special attention to performance and usability details. Effectively demonstrate feature prototypes to executives. Develop, advocate for, and build consensus on, coding standard methodologies. Ability to effectively work with multi-functional teams to understand requirements and engineer highly performant implementations. Experience with crafting web applications that scale to millions of requests per second is highly preferred.