What are the responsibilities and job description for the Software Developer position at Oracle?
Design, develop, troubleshoot, and debug the Kubernetes platform that will be used by NetSuite
Career Level - IC3
Responsibilities
This is an opportunity to have a direct and significant impact on the Cloud Operations framework used for managing the foundation upon which Oracle NetSuite is built. In this role, you will help us design, develop, and promote adoption of the NetSuite Kubernetes solution, which will be the future for running applications for NetSuite. You will help us apply the best aspects of the DevOps process, designing and engineering the systems that allow our application suite to be delivered to a growing customer base rapidly, reliably, and using a repeatable and testable process.
Job duties include:
- Translation of feature specifications into technical design documents and implementation of the resulting designs.
- Building the core framework and platform used for NetSuite applications.
- Understanding the big picture and distributed architectures; you will be working with services which need to work seamlessly across multiple data centers in different geographies and time zones.
- Understanding the requirements of multiple product teams to effectively develop tooling to assist them in meeting their goals and delivering the associated product features.
Preferred Qualifications/Skills:
- B.S. or Masters in Computer Science, Engineering or equivalent.
- Experience with Docker, Kubernetes, and service mesh for automating deployment, scaling, and management of containerized applications.
- Experience with GitOps (using tools like ArgoCD or Flux)
- Experience provisioning, deploying, and managing complex application deployments in IaaS environments (e.g. Amazon EC2, Microsoft Azure. Oracle Cloud).
- Experience designing, architecting, and building scalable multi-tier systems.
- Experience designing, building, and deploying distributed microservice architectures.
- Strong communication skills. You should be able to convey technical detail in clear and simple terms to a variety of audiences.
- Strong problem-solving skills. You will need to analyze, diagnose, and resolve unexpected behavior in complex, distributed systems.
- Experience building testing, and maintaining cloud systems written in Java, Python or similar languages.
- Experience with continuous integration and deployment frameworks and strategies, such as TeamCity.
- Knowledge of the CI DSL, and how to use it is a plus.
- Comfortable analyzing complex problems at all levels of the stack, on both client and server (OS, Network, JVM, Application/Browser/CLI, Storage).
- Passion for high-quality code.
- Interest and enthusiasm for new technologies that can be applied to large-scale cloud systems.