Enterprise Application / Platform Software Engineer
Austin, Texas, United States
Software and Services
We live in a mobile and device driven world where knowledge of the physical world around us is needed. We rely on this knowledge to get around, to learn about our environment and to enable spectacular new features for custom applications. Apple is meeting those needs as robustly and as creatively as possible and is interested in people who want to help meet that commitment. The success we are striving will be the result of very skilled people working in an environment which cultivates creativity, partnership, and thinking of old problems in new ways. If this sounds like the kind of environment that you find intriguing, then let's talk. These elements come together to make Apple an amazing environment for motivated people to do the greatest work of their lives. You will become part of a team that is developing perfection, creativity and innovation as we enable the design of the next generation of revolutionary Apple products. The Client & Collaboration Services team ensures Apple’s employees are productive, efficient and secure. We are looking for a Web User Interface Engineer to lead our Front-End development for our web applications, 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 forward-thinking software engineer who is motivated and has deep understanding and experience in design and development of complex, highly available and scalable systems.
- 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.
- 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.
- Experience in relational, no-SQL Databases, other form of persistence mechanisms and distributed caches.
- Experience with relational database models
- Significant experience developing and implementing, and maintaining high volume web applications, developing secure web applications, and web services.
- Experience with one or more front-end frameworks such as React or AngularJS.
- Expertise in building highly available production services, including deployment automation, infrastructure-as-code, monitoring, and scaling.
- Good understanding of containers, build systems, and infrastructure automation.
- Experience designing, building, and maintaining RESTful APIs
- Strong curiosity and a willingness to learn and talk about emerging technologies along with a positive and enthusiastic engagement style.
- Sound knowledge in operating systems concepts is required
- Experience in designing and handling systems with high performance, scalability and availability. Experience implementing solutions with a solid focus on performance, security, reliability and internal tool integrations.
- You will work in multi-functional teams to define, schedule, track and communicate status of all work taking place within those teams.
- Demonstrate innovative and creative thinking capabilities and also have sharp troubleshooting skills.
This is an individual contributor role and requires being responsible for 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. You should have the ability to handle conflicting project demands and thrive in a fast-paced environment. You should enjoy challenging and innovative projects and thrive in a fast-paced environment where accountability is paramount. This job requires superb communication skills to work cross functionally with other organizations within and outside of Apple as well as presentation skills and attention to detail.
Education & Experience
Bachelor's degree(B.S) or Masters (M.S) in Computer Science, Engineering or related field with 2 years experience