Principal Software Engineer - Network Monitoring, OCI in Santa Clara, CA

View All Information Technology jobs


Information Technology   •  

11 - 15 years

Posted 7 weeks ago

The Oracle Cloud Infrastructure (OCI) team can provide you the opportunity to build and operate a suite of massive scale, integrated cloud services in a broadly distributed, multi-tenant cloud environment. OCI is committed to providing the best in cloud products that meet the needs of our customers who are tackling some of the world's biggest challenges.

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. At every level, our engineers have a significant technical and business impact designing and building innovative new systems to power our customer's business critical applications.

Are you interested in building large-scale distributed monitoring & analytics solutions for the cloud? Do you love the idea of working in an environment with the excitement of a start-up, but the financial backing of a Fortune 100 company? You'll be joining a fast-growing venture that offers lot of autonomy and a lot of variety. This role offers huge upside potential, high visibility, and fast career growth without the risks of a typical start-up. This is a unique opportunity to work with smart people to solve complex problems in distributed systems, data processing, metrics collection, data analytics, network monitoring, multi-tenant Infrastructure-as-a-Service (IaaS) operating at massive scale.

Our customers want higher availability, more visibility, greater network security, better network performance and throughput, better capacity planning, root cause analysis, and prediction of failures. We help Oracle build the best-in-class cloud monitoring solution to provide performance monitoring, what-if analysis, root cause analysis, prediction, and capacity planning for Oracle's global cloud network infrastructure. Our mission is to build monitoring services that comprehensively view, analyze, plan, and optimize to scale and operate our networks.

We are looking for a Software Development Engineer who will lead software design and development for major components in our Network Monitoring & Analytics team. You should be comfortable at building complex distributed systems involving huge amount of data handling - collecting metrics, building data pipelines, and analytics for real time processing, online processing, and batch processing. Prior experience with data processing and distributed systems and/or Networking is a plus. You should value simplicity and scale, work comfortably in a collaborative, agile environment, and be excited to learn.

Come join us!

Required Qualifications:

  • 10+ years of experience in software development
  • 3+ years of experience in developing large scale distributed services / applications
  • Proficiency with Java and Object Oriented (OOA/P) programming
  • Experience developing using Web Services, NoSQL, SQL
  • Experience developing high traffic/throughput, distributed, scalable, multi-node systems
  • Excellent organizational, verbal, and written communication skills
  • Bachelor's degree in Computer Science or related field

Preferred Qualifications:

  • Knowledge of cloud computing & networking technologies including monitoring services
  • Prior experience with datacenter monitoring and management
  • Networking Technologies such as SNMP, Netflow, Flow analysis, BGP
  • Experience developing service oriented systems, REST, python
  • Exposure to Hadoop, Spark, Kafka, Storm, Ganglia, Nagios, openTSDB, Elasticsearch or other distributed compute platforms
  • Knowledge of Scrum & Agile Methodologies
  • Masters / PhD degree in Computer Science

Detailed Description and Job Requirements

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. 7 years of software engineering or related experience.