We are looking for an experienced Senior Software Engineer with a strong background in C programming, data structures, algorithms, and system-level programming. The ideal candidate will have hands-on experience in debugging on Linux platforms, working with multi-threaded applications, and solving complex engineering problems, particularly within the realms of storage systems..
Key Responsibilities
- Design & Development. Develop high-performance, scalable software with a strong focus on database internals, leveraging C programming and system-level programming expertise.
- Troubleshooting & Debugging. Use your deep knowledge of C and Linux internals to troubleshoot, debug, and resolve complex issues. Investigate and root-cause complex defects in Oracle products.
- Code Analysis. Quickly understand and navigate someone else’s code and contribute to optimizing and refactoring it for better performance and maintainability.
- System-Level Programming. Work on system-level code, with a focus on multi-threading, OS internals, and memory management in Linux-based environments.
- Performance Improvement. Identify bottlenecks, optimize performance, and resolve resource contention within the system or database engines.
- Storage Expertise. Contribute to Oracle’s storage systems and make critical improvements to storage internals that affect overall database operations.
- Collaborative Engineering. Work effectively in cross-functional teams and communicate clearly with other engineers, product teams, and stakeholders.
- Customer Satisfaction. Develop solutions with a focus on customer satisfaction, ensuring product quality and stability.
Required Skills
- C Programming. Expertise in C programming with deep knowledge of the Standard Template Library (STL), Templates, Design Patterns, and memory management.
- Data Structures & Algorithms. Strong understanding of data structures (e.g., Trees, Graphs, Hashmaps) and algorithms (e.g., Sorting, Searching, Optimization) to solve complex engineering problems.
- System-Level Programming. Extensive experience in multi-threaded programming and system-level programming on Linux.
- OS Internals. In-depth understanding of OS internals, including IPC (Inter-process Communication), process management, memory management, and scheduling.
- Debugging. Experience with Linux debugging tools like GDB, Valgrind, and GCC to troubleshoot issues, locate memory leaks, and fix performance issues.
- Storage Systems. Practical experience working with storage technologies and database internals.
- Rapid Learning. Ability to quickly pick up new technologies and expand breadth beyond core expertise.
- Problem-Solving & Troubleshooting. Strong analytical skills to identify and solve deep technical issues in complex products.
- Excellent Team Player. Demonstrated ability to collaborate effectively with other engineers, managers, and cross-functional teams.
- Customer-Centric Focus. Prioritize customer satisfaction in all phases of development and ensure the delivery of robust solutions.
- Multi-tasking & Adaptability. Ability to handle changing priorities and manage multiple tasks simultaneously in a fast-paced environment.
Desired Experience
- Experience Range. 4-9 years of relevant experience in software engineering with a strong focus on C programming, database internals, and system-level development.
- Storage Systems. Familiarity with storage architecture and data management within large-scale systems.
- Multithreading. Practical experience with multi-threading and concurrent programming paradigms.
- Linux/Unix. Advanced proficiency with Linux/Unix-based operating systems, including kernel-level knowledge and experience.
Why Oracle?
- Innovation at Scale. Work on highly complex and scalable systems with opportunities to make an impact in the enterprise technology space.
- Career Growth. Leverage Oracle’s global platform for professional development, continuous learning, and career advancement.
- Collaborative Culture. Be part of a dynamic, diverse team with a focus on excellence, collaboration, and personal growth.
- Impactful Work. Influence the future of Oracle products and solutions, solving real-world problems that impact millions of customers globally.
This is an exciting opportunity for experienced C developers and system engineers to advance their careers while working on cutting-edge technologies at Oracle. If you’re passionate about debugging, storage systems, and Linux internals, and you thrive in a challenging and collaborative environment, this role offers the chance to make a significant impact at one of the world’s largest enterprise technology companies.