Full Stack Software Engineer

Bengaluru, Karnataka, India
Operations and Supply Chain

Summary

Posted:
Weekly Hours: 40
Role Number:200141302
Imagine what you could do here. At Apple, new ideas have a way of becoming extraordinary products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. The people here at Apple don’t just create products — they create the kind of wonder that’s revolutionized entire industries. It’s the diversity of those people and their ideas that inspires the innovation that runs through everything we do, from amazing technology to industry-leading environmental efforts. Join Apple, and help us leave the world better than we found it. Apple's Operations Software Engineering team (Ops SWE) is responsible for capturing, consolidating and tracking all manufacturing data for Apple’s products and modules worldwide. We are a multi-functional team, tackling challenging software engineering problems across a broad range of Apple manufacturing services. You'll be leading innovation by exploring, investigating, recommending, benchmarking and implementing full stack technologies for the platform. This data is used throughout the company and the product's lifecycle: from the very beginning, to validate that units being built are fully tested and of high quality before leaving the factory, all of the way through to warranty support for customers. Apple's Ops SWE team is seeking a Full-Stack Software Engineer who possesses a real passion for developing extraordinary products with a deep appreciation for user experience and problem solving.

Key Qualifications

  • Full Stack Web and Mobile Developer who possesses a passion for application design, development and testing.
  • This person should be able to work on different layers of the application and have familiarity with cloud platforms and technologies for deployment and orchestration.
  • Experience with REST web services, Microservices architecture and developing highly available and scalable applications/services
  • Experience with any JavaScript Frameworks - i.e. Angular, React/Redux, Vue etc.
  • Experience with Java Frameworks - i.e. Spring Boot etc.
  • Experience with iOS/ MacOS Frameworks - i.e Swift, Objective-C etc.
  • Deep understanding or confirmed track-record of multi-thread system software design & development
  • Experience with Containerization, Docker, and Kubernetes
  • Desirable to have experience in Python and Machine Learning
  • Experience with data stream processing, data platforms at scale and distributed systems i.e. Spark, Kafka, Hadoop is nice to have
  • Deep understanding of Test Driven Development
  • Familiar with test and deployment strategies (A/B testing, blue-green environments)
  • Possess a solid grasp of CI/CD and SDLC/TDLC concepts: code review standard methodologies, code coverage analysis, unit testing, continuous test, and delivery
  • Ability to work in a Lean/Agile environment
  • Good understanding of networking and related protocols and the fundamentals (HTTP, DNS, TLS)
  • Highly motivated, self-starter and a disciplined, go-getter

Description

Do you love the idea of solving a new business or technical problem every other day with a wide range of technologies? Join our team and be a part of a fast-paced, iterative environment with many exciting responsibilities! We are looking for highly motivated, detail oriented, technically savvy, high-energy professionals who like to re-define large data platforms. - In this role you will design and develop software architecture for large scale, multi-tier services for Apple Product Operations. - Develop rich GUI for data visualization/analytics, tools and dashboards to answer complex analytical and real-time operational questions - We seek a self starter, forward-thinking person able to capture and understand requirements, handle design and development, as well as creating unit tests, responsible for providing REST API for data access - Think through implications of choices and communicate key decision junctures driving technical design decision-making. - Understand business requirements and translate them into technical requirements - Collaborate with a diverse team of Designers, Developers, and Engineers. - Communicate and present your work in a clear and simple manner. - Balance working on variety of high profile, critical projects - Initiate and explore alternate technology and approaches to solving problems

Education & Experience

BS, MS, or PhD in Computer Science, or equivalent experience.

Additional Requirements