đŸ‘šđŸ»â€đŸ’» postech.work

Software Development Engineer - Test

Apple ‱ 🌐 In Person ‱ đŸ’” $60,000 - $60,000

In Person Posted 1 week ago

Job Description

Are you a big-picture thinker who loves setting ambitious goals? Do you have a passion for understanding how each line of code affects all the others? In the Core Operating Systems group ensuring the OS is inseparable from each device’s identity as a whole. That’s because this group is committed to building fully integrated operating systems that combine hardware, software, and apps into a single Apple experience. Your dedication to cross-disciplinary collaboration will help develop groundbreaking technologies, such as iOS, macOS, watchOS, VisionOS and tvOS. By crafting these distinct, holistic user experiences, you’ll continue to uphold and advance the excellence people expect from Apple devices.

We are working to take the build and test process of the low-level components of iOS, macOS, watchOS, VisionOS and tvOS to the next level (think kernel and low-level libraries). We don’t have all of the answers on how to do that yet, perhaps you do? We are exploring, measuring and trying new things. We are responsible for validating nearly a quarter of all changes that go into our OS releases and affect 1 billion+ customers, so this isn’t just a theoretical exercise. We won’t be satisfied with anything less than outstanding.

Description

As a Software Developer and Test Engineer you will be impacting the software organization at Apple to ensure the internal release of iOS and macOS are reliable every day. You will be responsible for building a stable software environment for engineers to develop on and for internal users of iOS and macOS to live on. The role is essential to ensure that we continue to provide top-notch OS to various organizations within the company and eventually a healthy and stable OS release to our customers.

The responsibilities for this position include the following:

We investigate defects found in the OS submission pipeline to identify culprits

We triage issues and route them to the correct team using a variety of debug methods

We develop and improve the submission process as it relates to test/triage/debug

We develop tools and tests that aid in triaging test failures and contribute to the test infrastructure

We build software products to implement efficiencies, and to automate testing and debugging.

We provide a platform to enable our Engineering and Quality teams to deliver better products more effectively by developing orchestration to make the end-to-end process of building operating systems continuously improving We collaborate with teams of software and quality engineers

We guide the organization on process improvement initiatives

We work with the engineering and extended test teams to improve the continuous build’s regression test coverage

Preferred Qualifications

Knowledge of deep learning technologies to give computers the capability to visualize, learn and respond to complex situations is a plus

Understanding of key components of an operating system

Ability to work with the engineering team to root cause failures on short/tight cadence

Interpersonal skills: Able to relay critical information between stakeholders for rapid resolution of issues

Completes documentation and procedures for software maintenance and usability.

Unix operating system test development experience (macOS or iOS development experience is a huge plus)

Comfortable writing code and ideally have experience with TDD

Always iterating and seeking new ways to shorten the feedback cycle of build pipelines

Will work closely with engineering and QA teams, which requires very good communication and coordination skills

Proficient using Git and other version control systems

Experience with Docker and Kubernetes as well as modern configuration management tools like Salt/Ansible would be a big plus

Minimum Qualifications

Plans, designs, develops and tests software systems or applications for software enhancements and new products including cloud-based or internet-related tools.

Demonstrate proficiency with scripting languages (Python, Perl, Bash)

Experience with creating, running, and troubleshooting native builds (Objective-C, C++) if you are the right person, we don’t mind which technology you are used to, as long as you show flexibility

Experience with Docker and Kubernetes as well as modern configuration management tools like Salt/Ansible","internalDetails":null,"eeoContent":null

Get job updates in your inbox

Subscribe to our newsletter and stay updated with the best job opportunities.