Apple Postgres team develops and operates a highly reliable, cloud relational databases service that serves all of Apple. We’re looking for curious, enthusiastic and collaborative developers with an extraordinary degree of care and rigor in engineering who can contribute to all major components of PostgreSQL, including query execution, storage, replication, high-availability, scaling, administration, new feature development and all other aspects of the database.
Requirements
- Fundamentals of system-level hardware and networking components (storage devices and controllers, network interfaces) in server class systems.
- Operating systems concepts (process scheduling, disk and network I/O, performance).
- Understanding of database concepts (relational algebra, query optimization, consistency models, isolation levels, crash and recovery semantics).
- Advanced concepts such as failure detection, load balancing, request pipelining and operational semantics of high-throughput systems
- High level of proficiency in C, C++, Rust
- Advanced understanding of data structures and algorithms in storage and indexing, coding in C, C++
- Knowledge of the internals of relational databases such as PostgreSQL (or MySQL, MariaDB)
Responsibilities
- develop and contribute to PostgreSQL, the world’s most popular open source relational database
- develop and operate Apple’s cloud-based relational databases service hosting PostgreSQL databases that power some of Apple’s most important workloads in Services, Manufacturing, AIML and many more
- push the limits of open-source PostgreSQL in order to offer enterprise-class performance, availability and durability to our customers, as well as to ensure reliable administration
- contribute to all major components of PostgreSQL, including query execution, storage, replication, high-availability, scaling, administration, new feature development and all other aspects of the database
- Performance engineering, understanding of advanced testing methodologies, familiarity with debugging and profiling tools
- coding in C, C++
- developing database systems, storage engines, distributed systems
Other
- excellent communication and the ability to partner closely with our Database Engineering and SRE teams, and a high degree of customer focus when engaging with internal customers.
- The ability to work effectively with colleagues based in other locations is also essential, as well as the ability to help mentor junior engineers.
- BS in Computer Science/related fields with 5+ years of relevant experience
- MS in Computer Science/related fields with 8+ years of relevant experience
- Experience developing software in open source communities