Software Engineer

Santa Clara Valley (Cupertino), California, United States
Software and Services

Summary

Posted:
Weekly Hours: 40
Role Number:200149124
Imagine what you could do here! At Apple phenomenal ideas have a way of becoming great products, services, and customer experiences very quickly. Bring passion and dedication to your job, and there's no telling what you could accomplish! The Carrier Services team is the server engineering team focused on integrating Apple Retail Stores and Online with the wireless carriers for seemless iPhone provisioning and activation. Utilizing the latest technologies including gRPC, Spring Reactor, Cassandra and Kafka, we seek to provide a highly-scalable platform for our clients, and Apple-class customer experience. We are looking for a Software Engineer to improve our application services and API technology.

Key Qualifications

  • Extensive experience in enterprise systems, software design and development of large-scale applications using Java and Java EE technologies.
  • Deep understanding of Object Oriented and SOA design concepts
  • Experience developing and delivering RESTful application services and APIs from a Java based platform.
  • Able to analyze business requirements and architect efficient solutions.
  • In-depth knowledge of technologies such as Web Services, XML, JSON, HTTP, SSL, TCP/IP, Caching
  • Working knowledge of concurrency, scalability and fault tolerant designs. Expertise in multi-tiered application development, and familiarity with developing large scale and volume based applications.
  • Solid understanding of data modeling and database systems including Oracle, NOSQL, etc.
  • Proficient in XML, JSON and REST services.
  • Solid understanding of source control software (Git).
  • Experience with web technologies (HTML, CSS, JavaScript, ReactJS) is a plus.
  • Solid understanding of the full software development lifecycle.

Description

This is a hands-on role in the development of software systems to support existing and new product features. It is an extraordinary opportunity for an experienced and results-oriented person who enjoys working with multi-functional teams. You will make critical architectural decisions affecting application design. You will recommend and deploy tools and processes to enable rapid application design, development, testing and deployment.

Education & Experience

BS in Computer Science or equivalent

Additional Requirements