Software Engineering Systems

About the position

This role is responsible for maintaining the Managed Configuration Technology, which is the basis for enterprises and educational institutions to remotely handle their Apple devices via profiles, MDM, Classroom, or Screen Time. The position involves responsibility for new restrictions added to the technology, allowing enterprises more control over new features in Apple's software. The role requires collaboration with cross-functional partners to ensure correct implementation of new restrictions. Key technologies include Objective C, libdispatch, XPC, and MDM. The role also involves designing frameworks for developers to build apps that compete with Screen Time while maintaining user privacy, adding new settings, and ensuring they are respected by the device. Additionally, the role provides support to team members on API aspects, including designing and implementing the enrollment flow in Family Controls. Extensive testing through unit and functional tests, as well as manual testing, is required. Mentorship to new hires is also part of the responsibilities. The position is 40 hours/week.

Responsibilities

  • Maintain the Managed Configuration Technology.
  • Be responsible for new restrictions added to the technology.
  • Collaborate with cross-functional partners to ensure new restrictions are correctly implemented.
  • Code in Objective C with technologies such as libdispatch, XPC, and MDM.
  • Conduct extensive testing through the creation of unit tests and/or manual testing.
  • Design frameworks which empower developers to build apps to compete with Screen Time, while maintaining user's privacy.
  • Add new settings and ensure these are respected by the device by partnering with cross functional teams.
  • Provide support to fellow team members in the other aspects of the API, including designing and implementing the current enrollment flow in Family Controls.
  • Conduct extensive testing through the creation of unit and functional tests as well as manual testing.
  • Provide mentorship to new hires as needed.

Requirements

  • Bachelor’s degree or foreign equivalent in Mechatronic Engineering or related field and 1 year of experience in the job offered or related occupation.
  • Utilizing object-oriented language such as Objective C, Swift or equivalent towards development of production quality application
  • Experience in Xcode with ability to code, debug, test, and deploy projects
  • Designing frameworks or modules with clean interfaces to interact with other subsystems, and/or external input and output
  • Utilizing source control systems to maintain code including GitHub to commit, merge, or rebase
  • Utilizing techniques of unit and functional testing with frameworks such as XCTest and PyTest
  • Experience with writing multithreaded programming code utilizing safe design patterns
  • Experience with writing low level code involving memory management within memory constrained environments
  • Utilizing Swift and Objective C writing multi-platform (iOS and macOS) applications
  • Experience in writing technical documentation and reports for project clients and stakeholders
  • Utilizing Unix commands to work with Unix OS constructs to run scripts for testing and environment set up
  • Manage interdependence with other teams to keep projects on schedule

Nice-to-haves

  • N/A

Benefits

  • Comprehensive medical and dental coverage
  • Retirement benefits
  • A range of discounted products and free services
  • Reimbursement for certain educational expenses — including tuition
  • Discretionary bonuses or commission payments
  • Relocation assistance
  • Apple shareholder through participation in Apple’s discretionary employee stock programs
  • Discretionary restricted stock unit awards
  • Purchase Apple stock at a discount if voluntarily participating in Apple’s Employee Stock Purchase Plan
Back to blog

Common Interview Questions And Answers

1. HOW DO YOU PLAN YOUR DAY?

This is what this question poses: When do you focus and start working seriously? What are the hours you work optimally? Are you a night owl? A morning bird? Remote teams can be made up of people working on different shifts and around the world, so you won't necessarily be stuck in the 9-5 schedule if it's not for you...

2. HOW DO YOU USE THE DIFFERENT COMMUNICATION TOOLS IN DIFFERENT SITUATIONS?

When you're working on a remote team, there's no way to chat in the hallway between meetings or catch up on the latest project during an office carpool. Therefore, virtual communication will be absolutely essential to get your work done...

3. WHAT IS "WORKING REMOTE" REALLY FOR YOU?

Many people want to work remotely because of the flexibility it allows. You can work anywhere and at any time of the day...

4. WHAT DO YOU NEED IN YOUR PHYSICAL WORKSPACE TO SUCCEED IN YOUR WORK?

With this question, companies are looking to see what equipment they may need to provide you with and to verify how aware you are of what remote working could mean for you physically and logistically...

5. HOW DO YOU PROCESS INFORMATION?

Several years ago, I was working in a team to plan a big event. My supervisor made us all work as a team before the big day. One of our activities has been to find out how each of us processes information...

6. HOW DO YOU MANAGE THE CALENDAR AND THE PROGRAM? WHICH APPLICATIONS / SYSTEM DO YOU USE?

Or you may receive even more specific questions, such as: What's on your calendar? Do you plan blocks of time to do certain types of work? Do you have an open calendar that everyone can see?...

7. HOW DO YOU ORGANIZE FILES, LINKS, AND TABS ON YOUR COMPUTER?

Just like your schedule, how you track files and other information is very important. After all, everything is digital!...

8. HOW TO PRIORITIZE WORK?

The day I watched Marie Forleo's film separating the important from the urgent, my life changed. Not all remote jobs start fast, but most of them are...

9. HOW DO YOU PREPARE FOR A MEETING AND PREPARE A MEETING? WHAT DO YOU SEE HAPPENING DURING THE MEETING?

Just as communication is essential when working remotely, so is organization. Because you won't have those opportunities in the elevator or a casual conversation in the lunchroom, you should take advantage of the little time you have in a video or phone conference...

10. HOW DO YOU USE TECHNOLOGY ON A DAILY BASIS, IN YOUR WORK AND FOR YOUR PLEASURE?

This is a great question because it shows your comfort level with technology, which is very important for a remote worker because you will be working with technology over time...