Principal Software Developer
Redwood City, CA, USA | Oracle
Functions:IT / Information Technology
Job Description:50 people have viewed this job
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 largest challenges in the world.
OCI offers unique opportunities for smart, hands-on Software Developers with expertise and passion in solving difficult problems in distributed systems, virtualized infrastructure, and highly available services. At every level, our developers have a meaningful impact crafting and building innovative new systems to power our customers’ business critical applications. At Oracle, you can design and build inventive new systems from the ground up. These are exciting times in our space - we are growing fast, still at an early stage, and working on ambitious new initiatives. As part of our team, you will have significant technical and business impact!
What You Will Do!
As a Software Developer you will own and lead software design and development for major components of our Cloud Infrastructure. You should be comfortable at multiple layers of the stack ranging from low level operating systems to large scale distributed systems. You need to be able to understand and design for broad systems interactions, while being very hands-on, able to dive deep into any part of the stack and higher level system interactions. You should value simplicity at scale, work comfortably in a collaborative, agile environment, and be excited to learn.
Join us in this ground floor opportunity as we create the premiere IaaS solution for the world’s largest, most demanding enterprises.
We are looking for smart, passionate object oriented Software Developers. Are you passionate about your craft and love big technical challenges, then this is for you.
The ideal candidate will be technically strong, highly productive, and enjoy collaborating. You’ve worked on services that are highly available, scalable, and redundant. You understand that simple systems are easier to operate and tackle. You can balance speed and quality with iteration and incremental improvements. You’ve made life easier for other developers and have motivated your teams to make both process and service improvements with your ability to automate and instrument properly to get the right data. You understand operational quality and how to instill a culture of being proactive with your teammates. You find anomalies in graphs that didn’t trip any alarms and root cause problems before they become real problems.
Challenges for the Team
The biggest challenges currently for the team are scalability, performance and availability. The growth of the business is driving us to improve the ability of our systems to scale out and handle traffic patterns that are several orders of magnitude greater than what we can support today.
We understand that software is living and needs investment. The challenge is making the right tradeoffs, communicating those decisions optimally, and streamlined execution.
We need developers who can build services that handle millions of requests per second. We need team members who can determine how we can survive regional data center outages and protect our customers. We need passionate people who can construct services that enable us to offer even more options to customers and supply to the overall growth of Oracle Cloud.
1+ years’ experience in a software development environment
Strong development experience in Java, or similar OO languages, e.g. C++, C#, etc.
Hands-on experience building and operating highly-available, high-traffic web services
Experience developing RESTful web services
Experience with at least one scripting language for automating tasks, proof of concept work, or command line tools
Computer Science degree
Distributed service engineering
Hands-on experience developing services on a public cloud platform (e.g., AWS, Azure, Oracle)
Experience and understanding of multi-AD/AZ and regional data centers
Building continuous integration/deployment pipelines with robust testing and deployment schedules
Experience with Docker
Experience working with internal customers and translating requests into prioritized work or features
Expertise in applying threat modeling or other risk identification techniques to develop security solutions
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.
Already a member? Sign In