Software Engineer

Apple Inc.
Charing Cross, United Kingdom
7 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English

Job location

Charing Cross, United Kingdom

Tech stack

Webdriver
C
Java
API
Automation of Tests
Bash
C++
Cloud Computing
Continuous Integration
Software Debugging
Distributed Systems
Firmware
Protocol Buffers
Python
Network Protocols
Objective-C
Cloud Services
Ansible
Scala
Software Engineering
Web Services
Kubernetes
gRPC
Xctest
Docker
Go

Job description

We're looking for a driven but adaptable developer, working primarily in Go, with some Swift, and dipping into other languages like Python or Bash as necessary, to help build a powerful platform that enables internal engineers to deliver incredible experiences to end-customers.

Our team's device cloud offers thousands of real and virtual Apple devices spanning hundreds of different hardware configurations, for use as remote development devices from desk and for automated testing in CI. Leveraging our device-centric API, engineers can use devices for purposes such as low-level hardware bring-up using custom firmware and kernels, validating ML model performance on released hardware, all the way to automating the UI with XCTest to validate Apple's cloud services.

Join us to solve problems spanning maintaining a highly available fleet of thousands of Apple devices, constructing complex overlay networks and even SoC or USB debugging, all with the quality expected of Apple - to make this platform just work, like magic, every time!, Apple's device cloud team has an immediate opening for a software engineer working primarily in Go who will:

Collaborate across functions to maintain a fleet of Apple devices numbering in the thousands Improve the functionality, observability, scalability, availability, usability, security, and performance of our services & infrastructure Adapt cloud technologies and industry best practices to solve challenges unique to Apple workloads Triage, investigate, and remediate production issues

Requirements

Do you have experience in gRPC?, Languages: Golang, Swift, C, C++, Objective-C, Python, Java, Scala, shell RPC libraries and protocols: protobuf, gRPC Cloud technologies: Kubernetes, Docker, CI/CD, Envoy proxy Automation technologies: Ansible, Pkl, WebDriver Experience with IoT or other embedded development, In depth of experience in software development and a passion for software engineering Experience designing or working with web services (HTTP+JSON, gRPC, etc.) An understanding of Networks and Networking Protocols Experience with, or interest in, Go Troubleshooting distributed systems and networking issues

About the company

Imagine what we could do together. At Apple, new ideas have a way of becoming phenomenal products, services, and customer experiences very quickly.

Apply for this position