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 customers business critical applications.
Position: Software Engineer
Location: Seattle, WA or Santa Clara, CA
Reports to: Manager, Software Development
This individual will be a member of the Engineering organization supporting Oracle Cloud Infrastructure. Primarily focused on delivering the implementation and operational automation for our Email Delivery Data plane. Day-to-day activities will range from software development, production systems operations, monitoring and toolchain management. The ideal candidate will be self-motivated and is driven to learn new technologies and skills quickly.
• Develops and maintains backend applications and infrastructure through iterative improvements
• Provides experience in web application technologies such as building and consuming REST APIs
• Work collaboratively with the team to build, deploy and operate our systems
• Help automate and streamline our operations and processes
• Build and maintain tools for deployment, monitoring and operations in all environments
• Troubleshoot and resolve issues in our development, test and production environments
• Work closely with both internal and external resources as well as IT/network operations and the consumers of our product
• Manage CI and CD tools within the team and collaborate within larger automation organization
• Participate in our team-wide on-call rotation to support our product
• Demonstrated ability to deliver the items listed in the major duties section
• Familiarity with coding in Java, Python, Ruby
• Experience with Linux operating systems
• General knowledge of the following categories of network systems: Multiprocessing, Threading, Distributed systems, Load Balancing, High Availability, and basic networking principles
• Excellent written and verbal communication skills
• Demonstrated ability to work effectively within a team
• Should be a flexible, resourceful, team player that is able to thrive in a fast-paced, constantly changing environment
• Creative thinking and critical analysis are essential
• Knowledge of Internet protocols and standards, including SMTP, REST, SSL and HTTP
Additional Skills and Experience a plus:
• Experience with cloud solutions
• Experience with Bitbucket
• Knowledge of Redis
• Experience with configuration management systems. Chef, Ansible
• Experience with containers and supporting orchestration systems. Docker, Kubernetes
• Experience with cloud orchestration tools, such as Terraform
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 apply basic to intermediate knowledge of software architecture to perform software development tasks associated with developing, debugging or designing software applications or operating systems according to provided design specifications. Build enhancements within an existing software architecture and occasionally suggest improvements to the architecture.
Duties and tasks are standard with some variation; displays understanding of roles, processes and procedures. Performs moderately complex problem solving with assistance and guidance in understanding and applying company policies and processes. BS degree or equivalent experience relevant to functional area. 1 year of software engineering or related experience.