Oracle Database Appliance (ODA) is Oracle's integrated database platform that combines compute, storage, networking, and database software into a single engineered system, simplifying the deployment and management of mission-critical enterprise databases while delivering high availability, reliability, and cost efficiency.
The Database Test Development team is looking for a Principal Data Systems Software Engineer to develop automated functional tests, test frameworks, and automation for Oracle Database Appliance (ODA). The role requires strong programming and debugging skills, a solid understanding of Oracle Database concepts, and familiarity with Python, C, and preferably SQL.
This is a hands-on software engineering role requiring strong problem-solving skills and technical ownership of complex database functional testing areas. You will design, develop, and maintain automated tests and supporting software to configure database environments, execute workloads, simulate failures, and validate database functionality, high availability, patching, upgrades, and recovery.
You will be expected to drive improvements in automated functional test coverage, identify coverage gaps, and develop scalable, reusable test frameworks that improve testing efficiency and product quality. You will work closely with feature developers to understand technical designs, identify potential issues early, and translate product requirements and customer-reported defects into comprehensive, repeatable regression tests.
The role also requires close collaboration across development, infrastructure, release management, and other engineering teams to resolve complex technical issues, improve test infrastructure and automation, and ensure timely validation of software and hardware releases. You will contribute to test strategies, drive root-cause analysis of failures, and proactively identify opportunities to improve test effectiveness, release readiness, and overall product reliability.
Internal Responsibilities
Key Responsibilities
- Design, develop, and maintain automated functional tests, test frameworks, and supporting software to validate ODA product and various features.
- Drive automated test coverage by identifying functional gaps, developing comprehensive test scenarios, and building reusable automation to improve test effectiveness and efficiency.
- Develop test programs that configure database environments, execute workloads, inject failures, and automatically verify results across different ODA configurations.
- Design and develop automated tools, frameworks, and innovative software solutions to solve complex technical problems, streamline test development and execution, improve debugging and diagnostics, and enhance engineering productivity.
- Validate database provisioning, configuration, patching, upgrades, high availability, failover, recovery, and other critical database lifecycle operations.
- Work closely with feature developers to review functional and design specifications, understand implementation details, identify potential issues early, and develop effective test strategies.
- Investigate complex test failures, debug software and infrastructure issues, perform root-cause analysis, and collaborate with development teams to resolve product defects.
- Analyze customer-reported issues and translate real-world deployment scenarios and defects into automated regression tests to prevent recurrence.
- Collaborate across development, infrastructure, release management, and other engineering teams to resolve technical dependencies, improve test infrastructure, and ensure comprehensive validation and release readiness.
- Improve test frameworks, automation, and engineering practices to increase reliability, maintainability, scalability, and overall product quality.
- Lead and drive test development activities, collaborating closely with geographically distributed test development, product development, and infrastructure teams across time zones to define effective test strategies, coordinate testing efforts, and deliver innovative automation solutions that improve test coverage, efficiency, and product quality.
- Provide technical guidance, participate in code reviews, and mentor less experienced engineers while promoting sound software engineering practices.
Core Responsibilities
Planning & Execution:
Manages and coordinates moderately complex tasks, monitoring timelines and deliverables to ensure timely completion and adherence to requirements for a moderately sized project or initiative.
Efficiently delegates, monitors, and prioritizes work across multiple projects, providing technical oversight and adjusting plans to address shifts in resources or timelines.
Collaboration & Partnership:
Collaborates across the organization to align on expectations and achieve shared objectives.
Leverages understanding of business leaders, stakeholders, and/or customers to ensure proposed solutions meet their needs.
Supports inclusivity by actively seeking and listening to diverse perspectives, ensuring others feel heard and respected.
Problem Solving:
Identifies and addresses moderately complex issues by analyzing a wide range of data and/or information to identify solutions in accordance with standard practices.
Proactively escalates unresolved or critical issues with a thorough assessment and suggests potential solutions.
Reviews, contributes to, and documents problem solving strategies.
Continuous Learning:
Pursues learning opportunities to expand knowledge and skills and/or tools in new areas and stays abreast of the latest industry trends and best practices.
Proactively seeks and leverages ongoing feedback and training to improve skills.
Coaches and mentors junior team members, fostering continuous learning and knowledge sharing within and across teams.
Continuous Improvement:
Develops ideas, recommends updates, and/or collaborates on the implementation of process improvements to increase the efficiency and effectiveness of processes, protocols, and workflows across teams, and evaluates the impact on key stakeholders.
Solicits feedback from others on ideas for alternative approaches and methods for continued improvement.
Performance and Development:
External Responsibilities
Key Responsibilities
- Design, develop, and maintain automated functional tests, test frameworks, and supporting software to validate ODA product and various features.
- Drive automated test coverage by identifying functional gaps, developing comprehensive test scenarios, and building reusable automation to improve test effectiveness and efficiency.
- Develop test programs that configure database environments, execute workloads, inject failures, and automatically verify results across different ODA configurations.
- Design and develop automated tools, frameworks, and innovative software solutions to solve complex technical problems, streamline test development and execution, improve debugging and diagnostics, and enhance engineering productivity.
- Validate database provisioning, configuration, patching, upgrades, high availability, failover, recovery, and other critical database lifecycle operations.
- Work closely with feature developers to review functional and design specifications, understand implementation details, identify potential issues early, and develop effective test strategies.
- Investigate complex test failures, debug software and infrastructure issues, perform root-cause analysis, and collaborate with development teams to resolve product defects.
- Analyze customer-reported issues and translate real-world deployment scenarios and defects into automated regression tests to prevent recurrence.
- Collaborate across development, infrastructure, release management, and other engineering teams to resolve technical dependencies, improve test infrastructure, and ensure comprehensive validation and release readiness.
- Improve test frameworks, automation, and engineering practices to increase reliability, maintainability, scalability, and overall product quality.
- Lead and drive test development activities, collaborating closely with geographically distributed test development, product development, and infrastructure teams across time zones to define effective test strategies, coordinate testing efforts, and deliver innovative automation solutions that improve test coverage, efficiency, and product quality.
- Provide technical guidance, participate in code reviews, and mentor less experienced engineers while promoting sound software engineering practices.
Core Responsibilities
Planning & Execution:
Manages and coordinates moderately complex tasks, monitoring timelines and deliverables to ensure timely completion and adherence to requirements for a moderately sized project or initiative.
Efficiently delegates, monitors, and prioritizes work across multiple projects, providing technical oversight and adjusting plans to address shifts in resources or timelines.
Collaboration & Partnership:
Collaborates across the organization to align on expectations and achieve shared objectives.
Leverages understanding of business leaders, stakeholders, and/or customers to ensure proposed solutions meet their needs.
Supports inclusivity by actively seeking and listening to diverse perspectives, ensuring others feel heard and respected.
Problem Solving:
Identifies and addresses moderately complex issues by analyzing a wide range of data and/or information to identify solutions in accordance with standard practices.
Proactively escalates unresolved or critical issues with a thorough assessment and suggests potential solutions.
Reviews, contributes to, and documents problem solving strategies.
Continuous Learning:
Pursues learning opportunities to expand knowledge and skills and/or tools in new areas and stays abreast of the latest industry trends and best practices.
Proactively seeks and leverages ongoing feedback and training to improve skills.
Coaches and mentors junior team members, fostering continuous learning and knowledge sharing within and across teams.
Continuous Improvement:
Develops ideas, recommends updates, and/or collaborates on the implementation of process improvements to increase the efficiency and effectiveness of processes, protocols, and workflows across teams, and evaluates the impact on key stakeholders.
Solicits feedback from others on ideas for alternative approaches and methods for continued improvement.
Performance and Development: