InterviewStack.io LogoInterviewStack.io
Browse more Software Engineer jobs

Principal Data Systems Software Engineer

Oracle

BENGALURU, KARNATAKA, India3 days ago
4 views1 saves0 applies

Prepare for this role


Job Type

full time

Description

Required Skills

  • A minimum of six years working on mission critical large scale systems
  • Experience with complex distributed systems
  • Deep experience in troubleshooting networking and operating systems issues, root cause analysis, with a deep ability to identify new metrics for monitoring
  • Deep experience with cloud scale infrastructure. More specifically, knowledge of one or more of the following
    • Kubernetes
    • Prometheus
    • ELK
  • Strong knowledge of scripting with knowledge of one or more of the following
    • Shell programming
    • Scripting in Ruby
    • Python programming
  • Working knowledge of Apache Tomcat, Nginx, or Netty
  • Strong problem analysis skills
  • Exceptional written and verbal communication skills
  • BS in computer science or equivalent experience

Highly Desirable Skills

  • Knowledge of shared nothing database systems (Cassandra, HBase, DynamoDB, CosmosDB)
  • Knowledge of log structured storage systems
  • Knowledge of performance tuning and analysis in large scale distributed systems
  • Programming skills in one of the following languages
    • Java
    • C++, or C

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.

Career Level - IC4

This job is found at InterviewStack.io

Skills

distributed systemsmonitoringkubernetesprometheuselkrubypythonapachenginxcassandradynamodbjavac++accessibilitydebuggingobservabilitysoftware architecturescalabilityautomationproduct managementprocess improvementroot cause analysisperformance optimizationcode reviewquality assurancefunctional testing

About Oracle

Oracle offers integrated suites of applications plus secure, autonomous infrastructure in the Oracle Cloud.

software, cloud computingWebsite