Job Information
Oracle Software Developer 4 in BENGALURU, India
Job Description
Design, develop, troPrincipal Software Developer – Oracle Database Team
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 within VOS is at the forefront of distributed communication and computing. 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.
What We're Looking For:
We are seeking an experienced and passionate Principal Software Developer to join our dynamic team. The ideal candidate will have a strong background in systems programming and a desire to delve into the depths of operating systems, hardware, and compilers. They will collaborate closely with both internal teams and external vendors to gather requirements, design innovative solutions, and develop high-performance database modules.
Qualifications:
• BE / B Tech / MCA / M Tech / ME with 5-20 years of relevant experience
• A deep understanding of systems programming and application development
• Proficiency in C (C++ is Optional and not mandatory)
• Excellent problem-solving and debugging abilities
• Quick learning capabilities and sound judgment
Preferred Qualifications:
• Coursework in Computer Networks, Operating Systems, Computer Architecture, Algorithms, Distributed Systems, and Database Management
• Knowledge of networking protocols (TCP, UDP, IP, RDMA, RoCE, etc.) and distributed programming models (PGAS, MPI, OpenMP)
• Experience with Apache Kafka, Arrow Flight, and consensus protocols (RAFT, Paxos)
• Familiarity with Kubernetes, Neo4j, Elasticsearch, gRPC, Protobuf, and KV stores (Redis, RocksDB, Kvrocks)
If you are excited about the opportunity to work on challenging projects, collaborate with brilliant minds, and push the boundaries of database technology, we want to hear from you!
Career Level - IC4
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.
About Us
As a world leader in cloud solutions, Oracle uses tomorrow’s technology to tackle today’s problems. True innovation starts with diverse perspectives and various abilities and backgrounds.
When everyone’s voice is heard, we’re inspired to go beyond what’s been done before. It’s why we’re committed to expanding our inclusive workforce that promotes diverse insights and perspectives.
We’ve partnered with industry-leaders in almost every sector—and continue to thrive after 40+ years of change by operating with integrity.
Oracle careers open the door to global opportunities where work-life balance flourishes. We offer a highly competitive suite of employee benefits designed on the principles of parity and consistency. We put our people first with flexible medical, life insurance and retirement options. We also encourage employees to give back to their communities through our volunteer programs.
We’re committed to including people with disabilities at all stages of the employment process. If you require accessibility assistance or accommodation for a disability at any point, let us know by calling +1 888 404 2494, option one.
Disclaimer:
Oracle is an Equal Employment Opportunity Employer*. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, national origin, sexual orientation, gender identity, disability and protected veterans’ status, or any other characteristic protected by law. Oracle will consider for employment qualified applicants with arrest and conviction records pursuant to applicable law.
* Which includes being a United States Affirmative Action Employer