Principal Member of Technical Staff- OCI Container Instance team

  • Bengaluru
  • Oracle
Oracle’s Cloud Infrastructure Container Instance team provides Infrastructure-as-a-Service technologies that operate at a large scale in a broadly distributed multi-tenant cloud environment. OCI Container Instances provides a serverless compute service that enables customers to instantly run containers without handling any servers. Container Instances runs containerized workloads that do not require container orchestration platform like Kubernetes.

https://www.oracle.com/cloud/cloud-native/container-instances/

We’re looking for hands-on engineers with expertise and passion for solving complex problems in distributed systems, virtualized infrastructure, and highly available services. If this is you, you can be a leader of the team that will build the best-in-class service. These are exciting times for the service - we are growing fast, and delivering on innovative, enterprise-class features to satisfy the most demanding applications for our customers.

As an ideal candidate, you will have designed and implemented large-scale services in a distributed cloud environment. In addition, you will have an understanding of Linux/Unix fundamentals and will combine this knowledge with your hands-on experience in software development. You will champion creating an engineering environment that embodies the best development and testing practices for delivering secure, scalable, and highly available services.

As a Principal Member of Technical Staff, you will be responsible for the software design and development for major components of Oracle’s Cloud Infrastructure. You should be a rock-solid coder, and a distributed systems generalist who can dive deep into any part of the stack and low-level systems and design broad distributed system interactions. You should value simplicity and scale, work comfortably in a collaborative, agile environment, and be excited to learn.

Skills BS/MS in Computer Science or related technical field or equivalent practical experience. 10+ years of experience delivering and operating large-scale, highly available distributed systems. Must have a strong knowledge of object-oriented paradigms, data structures, algorithms, operating systems, and distributed systems fundamentals. Strong knowledge of Java is preferred and experience in one of the scripting languages such as Python, Perl, Bash, etc is a strong plus. Knowledge of Golang, and Terraform is a strong plus. Experience in microservices architecture, API-driven service-oriented architecture, Kubernetes, Containers, and Cloud Control Plane is a plus. Working familiarity with networking protocols (TCP/IP, HTTP, HTTPS), and security architectures is preferred. Results-driven; thrives in a development environment that is agile, collaborative, and in start-up mode, even when faced with ambiguity. Must possess strong troubleshooting skills. Experience building multi-tenant, virtualized distributed infrastructure is a strong plus. Excellent written and verbal communication skills with the ability to present complex information clearly and concisely to all audiences.

Systems Fundamentals Working familiarity with networking protocols (TCP/IP, HTTP) and standard network architectures. Strong understanding of databases, NoSQL systems, storage, and distributed persistence. Knowledge of Linux/Unix fundamentals.

Technologies Experience with build automation, continuous integration, or continuous deployment tools. Strong troubleshooting and performance tuning skills. Experience building multi-tenant infrastructure is a strong plus Experience with containerization technologies such as Docker and Kubernetes is a strong plus. Experience in developing complex solutions, systems integrating various hardware solutions/components.

Top 3 skill sets/technologies in the ideal candidate: Software Engineering experience with distributed systems within large-scale environments. 5-12+ years of experience leading engineering teams to deliver on critical business goals. Experience working on Linux/virtualization/networking/security domains especially in the cloud context would be a huge plus.

Responsibilities As a member of the software engineering division, you will take an active role in the definition and evolution of standard practices and procedures. Define specifications for significant new projects and specify, design and develop software according to those specifications. You will perform professional software development 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. 10 years of software engineering or related experience.