Sr. SW Engineer Apple Cloud Services - Big Data
Santa Clara Valley (Cupertino) , California , United States
Software and Services
Posted: May 8, 2020
Weekly Hours: 40
Role Number: 200169610
Do you enjoy solving sophisticated challenges? Are you an inventive self-starter who takes pride in seeing ideas come to life on a global scale? We are developing a big-data platform using creative algorithms to process petabytes of data with very low latency. We're looking for engineers with a flair for crafting big-data platforms to join Apple Cloud Services (ACS) Data Analytics team to build a scalable platform that can be used across Apple. As part of Apple Cloud Services you will design, develop, and deploy high-performance systems that power Apple every single day. This enormous scale brings challenges that require extraordinarily creative problem solving! By focusing on and respecting the customer's needs, you'll be responsible for helping us build the technology that works for so many customers around the world!
- - 6+ years of experience with Java or Scala and desire to seek sophisticated challenges
- - In-depth knowledge of data structures, algorithms, design patterns, enterprise architecture and software engineering principles
- - Strong object oriented programming and design skills with good understanding of functional programming paradigm
- - In-depth understanding of Concurrency, Multithreading, Java Collections Framework, reflection, Java IO & NIO and lambdas
- - Expertise in Java Frameworks and systems like Spring Framework, spring-mvc, spring-data, JPA, jUnit, Log4J/SL4J, SOLR/Elastic, Splunk, Maven, Gradle etc.
- - Significant experience developing and implementing high volume low latency secure RESTful web services with knowledge of application vulnerabilities such as Cross Site Scripting (XSS), Cross Site Request Forgery (CSRF) etc.
- - Knowledge of non blocking server side packages and implementations like Netty and Servlet3 specification
- - Experience with Caching systems such as Redis, Memcached etc.
- - Experience in performance tuning of the applications including JVM tuning, memory profiling.
- - Experience with Containerization, Container Orchestration and CI/CD
- - Experience with Relational and NoSQL Databases like PostgreSQL, Cassandra etc.
- - Familiarity with HTML5, CSS3, ES6 and client side frameworks/libraries such as React will be added advantage
- - Detailed understanding of Software Development Lifecycle, Scrum and Agile methodologies
- - Good communication and personal skills: ability to interact and work well with members of other functional groups in a project team and a strong sense of project ownership
- - A learning attitude to continuously improve self, team, and the organization
- - Deeply concerned about perfection and quality
This role requires working closely with multi-functional teams to optimally lead all aspects of the complex interdependencies inherent to the project. You should be equally comfortable starting from scratch with a new application as well as diving into an existing project to make it better. This role will develop products that are highly scalable, highly available and fully fault tolerant.
Education & Experience
- Bachelors degree in CS or equivalent - Masters or PHD in Computer Science/Engineering is a plus Apple is an Equal Opportunity Employer that is committed to inclusion and diversity. We also take affirmative action to offer employment and advancement opportunities to all applicants, including minorities, women, protected veterans, and individuals with disabilities. Apple will not discriminate or retaliate against applicants who inquire about, disclose, or discuss their compensation or that of other applicants.