Enterprise Application / Platform Software Engineer
Santa Clara Valley (Cupertino), California, United States
Software and Services
Imagine what you we could do together. At Apple, new ideas have a way of becoming excellent products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. The Identity Management Services team at Apple is a high-performance server engineering team responsible for building large-scale systems that supports Apple’s customer facing services such as iCloud, iTunes, Messages, FaceTime, Online store and others. We are in search of a brilliant software engineer who is self-driven and has deep understanding and experience in design and development of complex, highly available and scalable systems. You should have a real passion for software engineering, be innovative and possess strong analytical and interpersonal skills.
- Strong Computer Science fundamentals, software design and programming skills.
- Experience in enterprise application design and development of systems using Java/J2EE technology, Single-SignOn, SQL, XML in Linux/Unix environment.
- Direct experience with design/development of highly available, distributed and scalable applications.
- Proven experience in Java, J2EE, XML/JSON, OOD, related development tools and technologies.
- Experience in configuration, tuning, deployment of Application / Web servers such as JBoss, Apache, Tomcat etc,.
- Experience in source code management tools like git / SVN.
- Experience in relational, no-SQL Databases, other form of persistence mechanisms and distributed caches.
- Experience with relational database models
- Demonstrate innovative and creative thinking capabilities and also have sharp troubleshooting skills.
- Experience in developing multi threaded programs is required
- Sound knowledge in operating systems concepts is required
This is an individual contributor role and requires owning the design and hands-on development of software systems to support existing and new features. Additional duties include architecting and developing systems that are very efficient, secure, highly available, highly scalable, distributed, supportable with good diagnostic and monitoring capabilities. Responsibilities Develop detailed designs and deliver highly scalable and optimized systems. Write efficient, easy to maintain software that are of high quality Maintain and improve existing applications in response to business needs. Collaborate closely with members of other teams throughout the software release cycle Assist in resolving application support issues.
Education & Experience
Bachelors degree(B.S) or Masters (M.S) in Computer Science, Engineering or related field with 2 years experience
- Experience in C/C++, PKI Service, SSL, application performance turning
- Hands-on experience in Oracle database performance turning, optimization
- Experience in Identity Management & Security is a huge plus (authentication, authorization, provisioning, etc.).
- Exposure to Project Management skills and tools.