Owns feature areas with measurable business impact. Designs application services and schemas spanning Online Transaction Processing and Online Analytical Processing, JSON, spatial, and graph data models. Leads debugging across services and database layers; optimizes query and API performance to meet service-level agreements. Drives automated testing coverage and performance baselines; collaborates with product management and user experience to run experiments and analyze adoption and retention.
Solve complex problems related to infrastructure cloud services and build automation to prevent problem recurrence. Design, develop, and deploy software to improve the availability, scalability, and efficiency of Oracle products and services. Design and develop designs, architectures, standards, and methods for large-scale distributed systems. Facilitate service capacity planning and demand forecasting, software performance analysis, and system tuning.
Oracle Exadata Database team is building a new cloud native, Autonomous, multi-tenant, database optimized, smart storage cloud service. This service is expected to scale across thousands of tenants. It is based on the successful Exadata platform. This cost effective storage solution is engineered for highest performance and availability to run variety of workloads. We are hiring senior developers for this exciting team to build the service to power Autonomous database offerings in Oracle Cloud and Cloud at customer.
We offer unique opportunities for smart, hands-on engineers with the expertise and passion to solve difficult problems in distributed highly available services and virtualized infrastructure. As part of the Oracle Database Exadata team, you will be continually challenged and have an opportunity to contribute. The role provides a mixture of production ownership and development. You will solve challenging technical problems, identify improvements and work on implementing your recommendations.
Required Qualifications
- 10+ years of hands on experience in software development, including design, implementation, debugging, and support, building distributed, scalable system software and/or Services preferably in the cloud
- BS or MS degree in Computer Science, or equivalent experience
- Proficient with programming languages Java/Python; and scripting languages (Shell, Perl and Python)
- Deep understanding of distributed systems and web services technology
- Experienced in crafting, building and debugging large scale distributed systems
- Strong at applying data structures, algorithms, and object oriented design, to solve challenging problems
- Track record of building and delivering mission critical, 24x7 production software systems
- Familiar with micro-services based software architecture and the evolving tools in the space like nomad/k8s
- Experience with container run time (Docker, LXC/LXD)
- Knowledge of professional software engineering practices & best practices for full software development life cycle, including coding standards, code reviews, source control management, build processes, testing and operations
- Strong desire to build, sense of ownership, urgency, and drive.
- Systematic problem solving approach, combined with a strong sense of ownership and drive.
- Experience in communicating with users, other technical teams, and senior management to collect requirements, describe software product features, product strategy and influence outcomes in technical decision-making
- Solid understanding of performance and efficiency with a strong customer focus
- Demonstrated ability to mentor other software developers in all aspects of their engineering skillsets
- Possess strong verbal and written communication skills
Key Responsibilities
Data Systems Software Development
- Own a feature area’s data model across Online Transaction Processing/Online Analytical Processing, JSON, spatial, or graph.
- Define performance budgets and enforce query patterns that meet latency targets at scale.
- Partner with product management to design experiments that drive adoption, conversion, and retention; analyze results to inform roadmap.
- Architects existing and complex new services.
Software Development and Coding – Design, Testing, and Optimization
- Designs software solutions and analyzes and identifies requirements to achieve business and operational goals, sharing results with manager upon completion.
- Adheres to and improves execution of all phases of the software development lifecycle; provides guidance and coaching to engineers to drive improvements.
- Utilizes advanced knowledge to develop and guide new software features and enhancements leading design specifications, ensuring accessibility, and develops documents to clarify software design and code.
- Leads code reviews in multiple areas to help drive improvements.
- Conducts debugging and troubleshooting to identify and fix complex software issues.
- Develops fixes for identified issues.
- Implements comprehensive software testing (e.g., functional and non-functional testing), quality assurance processes, software error logging, monitoring, and observability for effective debugging, sharing work with manager and/or lead upon completion.
- Conducts performance profiling and optimization of coding, building scalable solutions, and anticipating and resolving potential outcomes.
- Troubleshoots and resolves complex issues related to application programming interface (API) functionality and integration.
- Implements complex API versioning, lifecycle, and interoperability strategies.
Software Architecture – Software System Structural Design
- Implements and contributes to developing software, systems, and services, ensuring review by manager and/or senior technical leaders upon completion. Recommends project or design scope.
- Provides technical guidance and coaching to less experienced developers in existing software architecture.
- Contributes to periodic reviews and ensures adherence to architectural standards.
- Collaborates with stakeholders and networks externally to ensure work aligns with software architecture.
- Implements complex performance optimization and scalability strategies in software design.
- Occasionally conducts technology research and evaluation for potential architectural changes that may have an impact on results for the team.
Issue/Defect Collaboration – Software Products Support
- Collaborates with stakeholders to understand customer issues and align solutions.
- May provide advanced technical guidance and support to customers regarding customer-reported issues.
- Advocates for customers' interests and suggests product enhancements based on feedback.
- Provides input to ensure customer satisfaction through timely resolution of issues and effective communication.
- Identifies and implements customer issue and/or defect handling and training processes.
- Investigates and troubleshoots complex and broad reaching/scoped maintenance issues to ensure customer agreement on short- and long-term solutions (e.g., future enhancements).
Practices and Standards Compliance – Security and Compliance
- Collaborates with the team and externally to follow development practices and coding standards, providing coaching to less experienced team members.
- Participates in peer review processes, provides technical leadership, and ensures code quality and adherence to broad acceptance criteria during development, independently.
- Demonstrates and shares advanced knowledge of industry best practices and applies them to software development processes.
- Implements complex secure coding practices to prevent security vulnerabilities.
Development Operations – System Maintenance
Performs periodic maintenance and testing operations for systems that require upgrading or patching (e.g., for critical vulnerabilities), sharing results with manager upon completion.
Drives improvements, ensures automation, testing, and debugging of systems to ensure service/product availability, health, support, and reliability.
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
Contributes to the talent development pipeline by participating in candidate interviews, assessing candidates, and providing hiring recommendations.
Minimum Job Qualifications
Education and/or Experience
11 years of experience in software development
OR
Bachelor's of Technology (B.Tech) Degree in Computer Science, Computer Engineering, Software Engineering, Electrical/Electronics Engineering, Computer Information Systems, Information Systems, Information Technology, Telecommunications, Mathematics, Physics, or related field AND 7 years of experience in software development
OR
Bachelor's Degree in Computer Science, Computer Engineering, Software Engineering, Electrical/Electronics Engineering, Computer Information Systems, Information Systems, Information Technology, Telecommunications, Mathematics, Physics, or related field AND 7 years of experience in software development
OR
Master's of Technology (M.Tech) Degree in Computer Science, Computer Engineering, Software Engineering, Electrical/Electronics Engineering, Computer Information Systems, Information Systems, Information Technology, Telecommunications, Mathematics, Physics, or related field AND 5 years of experience in software development
OR
Master's Degree in Computer Science, Computer Engineering, Software Engineering, Electrical/Electronics Engineering, Computer Information Systems, Information Systems, Information Technology, Telecommunications, Mathematics, Physics, or related field AND 5 years of experience in software development
OR
Doctorate in Computer Science, Computer Engineering, Software Engineering, Electrical/Electronics Engineering, Computer Information Systems, Information Systems, Information Technology, Telecommunications, Mathematics, Physics, or related field AND 3 year of experience in software development.
Job Skills
- Same skills as prior level plus;
- Data Analysis Demonstrated ability to analyze and interpret data to produce actionable business insights.
- Agile Methodologies Demonstrated ability to use agile methodologies to drive continuous improvement and product delivery.
- Automation Demonstrated ability in or knowledge of automation, including designing, implementing, and managing automated tools, processes, or systems to streamline operations.
- Compliance Demonstrated knowledge of and adherence to regulatory, legal, and organizational compliance requirements.
- Quality Assurance Demonstrated ability in or knowledge of quality assurance, including ensuring adherence to standards and implementing quality control measures.
- Scripting Languages Demonstrated ability in or knowledge of scripting languages, including writing and maintaining scripts to improve system efficiency.
- Software Test Plans Demonstrated ability to develop and execute effective software test plans to validate product quality.
- User Experience Development Demonstrated ability in or knowledge of user experience development, including designing intuitive and effective user interfaces and content.
- Code Review Demonstrated ability to conduct in-depth code reviews for software quality assurance.
- Embedded Systems Demonstrated ability to develop embedded systems, balancing hardware and software for optimal performance.
- Software Estimation Demonstrated ability to provide accurate software effort and complexity estimates for project planning and scheduling.
Coding Experience
6 years of experience with programming and/or scripting languages (e.g., SQL, C/C++, JavaScript).
Preferred Job Qualifications
Education and/or Experience
11 years of experience in software development
OR
Bachelor's of Technology (B.Tech) Degree in Computer Science, Computer Engineering, Software Engineering, Electrical/Electronics Engineering, Computer Information Systems, Information Systems, Information Technology, Telecommunications, Mathematics, Physics, or related field AND 7 years of experience in software development
OR
Bachelor's Degree in Computer Science, Computer Engineering, Software Engineering, Electrical/Electronics Engineering, Computer Information Systems, Information Systems, Information Technology, Telecommunications, Mathematics, Physics, or related field AND 7 years of experience in software development
OR
Master's of Technology (M.Tech) Degree in Computer Science, Computer Engineering, Software Engineering, Electrical/Electronics Engineering, Computer Information Systems, Information Systems, Information Technology, Telecommunications, Mathematics, Physics, or related field AND 5 years of experience in software development
OR
Master's Degree in Computer Science, Computer Engineering, Software Engineering, Electrical/Electronics Engineering, Computer Information Systems, Information Systems, Information Technology, Telecommunications, Mathematics, Physics, or related field AND 5 years of experience in software development
OR
Doctorate in Computer Science, Computer Engineering, Software Engineering, Electrical/Electronics Engineering, Computer Information Systems, Information Systems, Information Technology, Telecommunications, Mathematics, Physics, or related field AND 3 years of experience in software development.
Budget Experience
1 year of experience working with operating budgets and/or project financials.
Cloud Platforms Experience
3 years of experience with cloud platforms (e.g., AWS, Azure, Google, Oracle Cloud).
Job description provided by Oracle.
View the original posting