Redwood City, CA, USA
6 days ago
Principal Software Developer

Design, develop, troubleshoot and debug software programs for databases, applications, tools, networks etc.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.Work is non-routine and very complex, involving the application of advanced technical/business skills in area of specialization. Leading contributor individually and as a team member, providing direction and mentoring to others. BS or MS degree or equivalent experience relevant to functional area. 5 years of software engineering or related experience.

Responsibilities displayed in the job posting

Are you interested in a dynamic working environment where you are constantly presented with new challenges where you need to devise smart solution keeping performance and functionality aspects intact? Do you enjoy fast-paced problem solving and working to improve product architecture and functionality? Would you like to see how customers use products in all sorts of unexpected ways? If so, this job could be for you! The Database Sustaining Engineering organization is considered the go-to team for all aspects of product experience at Oracle both on Cloud and on-premises environments. We're best known for diagnosis and resolution of problems in just about all of the Oracle Server Technologies product areas and doing the product enhancements related to improving resilience and diagnostics of the product. When the Oracle Support or Cloud Operations organizations need additional assistance in solving a Cloud or customer-reported product problem, they come to us to fix it at the source code level. Often the stakes can be high: a production system is down, an upgrade or new application roll-out is delayed. Oracle software powers the engines of almost all of the best known companies, so millions of dollars can be at risk if it fails. Almost all the Fortune 500 companies and major Airline reservation systems, Banking and Financial systems, Telecommunication systems, Online shopping/E-commerce, Factories/plants operations, etc. run on Oracle software, and these complex systems depend on swift resolution of problems. Our developers, many of whom have been with us for ten years or more, are able to piece together clues from the failures and come up with resolutions, thereby improving the product quality. For a member of this team, it can be exceedingly gratifying to see the immediate result of our solutions. Variety and fresh challenges are defining features of our work. This is a Customer Focused Engineering work environment and it is technically challenging and rewarding: you need to understand complex code fairly quickly. You have to be able to conceptualize the interaction of software components and products together in a stack. You need to be prepared to expect the unexpected and have a strong focus on customer satisfaction. We're looking for people who are fast learners, highly motivated, and have great communications skills. If the opportunity to resolve real-world customer problems and rework architecture and functionality in the world's most important software products looks exciting to you, then come join us. You can be guaranteed never to be bored!

This position is for Oracle RDBMS Data Layer along with Autonomous Health Improvement project of Oracle Database Development as part of Sustaining Engineering, where the focus is to improve Resilience and Diagnostics of the code and generate automated insights for faster problem resolution.

Qualifications:  BS or MS in Computer Science or an equivalent area 7 to 10+ years of software development experience Required Skills  Expert software development knowledge in C (or C++) programming language, server/systems level experience in large enterprise class software Excellent understanding of System Architecture and Implementation experience of working/released products with considerable complexity Good Operating Systems knowledge with concepts related to Processes, Memory Management (also Shared Memory), File Systems, Communications/Networking with IPC, etc. Working knowledge of Fault Tolerant systems and ability to understand exception case handling. Excellent diagnostics, debugging and troubleshooting experience on Linux/Unix environments, along with ability to identify product improvements. Working knowledge of processing large amount of product diagnostics/logs/traces to generate meaningful analytics. Knowledge of Project Management concepts/software (Jira, Sprints, etc.) and ability to multi-task and deal with shifting priorities Should have excellent written (including product documentation) and verbal (with presentation) communication skill Preferred Skills  Working experience in Database kernel Internals, esp. in Transactions Engine, Distributed DB, SQL Engine, etc. would be a big plus Working Knowledge of C Compiler, instructions optimization, etc. Development knowledge in some of these programming languages: Python, XML, JSON, Perl, shell scripting, Javascript, etc. and experience with Web/server programs in large enterprise class software Working experience in Enterprise level software in a global development environment, including knowledge of CI/CD, Jenkins, etc.  Working experience of Cloud environment and processes. Working experience in Log Analytics, Automation of developer flows, Kibana, Grafana, etc. in large product. 

Responsibilities

Implement improvements and defects resolutions along with functionality, design and architecture reviews in Database kernel stack which would help Cloud services and customers and contribute in Oracle’s growth in Database business in all forms. Work with highly talented and productive developers to complete the improvements with high quality and in time. In the process, there would be complete exposure to product development processes (understanding Oracle Database kernel code, area test infrastructure, critical design consideration), reviews with Architects and senior developers across several teams.  End to End ownership of assigned module and developing test cases for major bug fixes. Identify process improvements in automated problem identification/triage and resolution recommendation. Work in global environment and collaborate with multiple teams including presenting your work in development forums.  

Career Level - IC4

Confirm your E-mail: Send Email