Principal Data Systems Software Engineer
oraclecloud
Job Description
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 per