Job Description
About the Team:
Are you curious about what makes technology tick? Do you dream of designing cutting-edge systems that power the world’s leading database software? If so, Oracle’s Virtual Operating System (VOS) team is the place for you. We are a group of passionate engineers who strive to deliver a portable, high-performance platform for the Oracle Database, ensuring it runs efficiently across a diverse range of hardware and software environments.
The Inter Process Communication (IPC) Group
We build the foundations that enable Oracle’s flagship products, such as Oracle RAC and Exadata, to scale and perform exceptionally well. From process management to remote direct memory access, we create the infrastructure that powers Oracle’s database solutions, ensuring they are optimized for speed, efficiency, scalability, availability, diagnosability and reliability.
What We’re Working On:
- Distributed Synchronization: Developing a highly efficient, low-latency synchronization mechanism for a cluster environment, leveraging RDMA and atomic operations.
- Real-time Database Health Advisor: Building a system that utilizes Kafka to stream database events to applications like Neo4j, providing real-time insights.
- Key-Value Storage Engine: Enhancing Kafka’s performance by integrating popular KV stores (RocksDB, Redis, Kvrocks) and adding unique features like size-based compaction.
- In-Memory Embedded KV Store: Crafting a fast, reliable, and replicable KV store for use by Kafka and other clients, ensuring data is readily accessible.
- RDMA-aware Fault Tolerance: Employing consensus protocols like RAFT to build a robust, distributed fault tolerance service across clusters, including Kubernetes.
- Advanced Replication Services: Developing a replication facility for database clients, utilizing consensus protocols (RAFT, Paxos) and transport protocols (TCP, UDP, RDMA) for optimal performance.
- Next-Gen Data Transfer: Integrating Apache Flight and gRPC to enable optimized data transfer into the Oracle Database via the Arrow format, supporting Apache Flight SQL clients.
- Shared-Nothing Cluster Model: Creating a flexible cluster model that supports Kubernetes, Zookeeper, or RAFT, enabling seamless data reconciliation and broadcast within the database.
Responsibilities:
As a member of the software engineering division, you will take an active role in the definition and evolution of standard practices and procedures. You will be responsible for defining and developing software for tasks associated with the developing, designing and debugging of software applications or operating systems.