Bengaluru, Karnataka, India
Software and Services
People at Apple don’t just build products — they craft the kind of experience that has revolutionised entire industries. The diverse collection of our people and their ideas encourage innovation in everything we do. Imagine what you could do here! Join Apple, and help us leave the world better than we found it. At Apple, new ideas have a way of becoming extraordinary products, services, and customer experiences very quickly. Every single day, people do amazing things at Apple. Appleʼs Applied Machine Learning Search team builds a unified search platform to power various search for many lines of businesses. This team powers Search for apple.com (http://apple.com/), support.apple.com (http://support.apple.com/), apple store app and support app. This search impacts millions of customer in a day and handles many million search request a day. Our footprint is present in 100+ different countries in 40 different language and works on highly scalable information retrieval solutions.
- 5+ years of experience working in Java and web-services
- Proven skills in designing scalable, highly available distributed systems which can handle high data volumes.
- Strong understanding of software engineering principles and fundamentals including data structures and algorithms.
- Solid understanding of concurrency and multi-threading, multiple design patterns and debugging and analytical methodologies
- Extensive experience in building, maintaining and enhancing RESTful web services in Spring boot
- Hands-on experience with NoSql databases and Big-Data processing system
- Hands-on experience on Solr with relevance tuning of Search Results.
- Hands-on experience building Suggestion functionality of Search Engine.
- Self directed, self motivated and detail oriented with ability to come up with good design proposals and thorough analysis of production issues.
- Excellent written and oral communication skills on both technical and non-technical topic.
You are expected to be self-motivated, dedicated, and a solution oriented individual. The main responsibilities for this position include: - Leading effort to build large scale, distributed and highly available system and pipelines. - Design and develop solution using Java tech stack. - Work with multi-functional teams to drive requirements. - Design and implement as per secure guidelines - Work with QA to identify issues and fix it.
Education & Experience
BS in Computer Science or equivalent
- Other aspects of the job include mentoring junior developers, working with the team manager and PM in estimating scope and team capacity, responding to urgent requests from executives or business needs, and maintaining the stability and high reliability of our systems.