Software Architect, Oracle Public Cloud-18000UH8
Oracle Public Cloud delivers enterprise grade software defined elastic cloud infrastructure at global scale with IaaS, PaaS and SaaS that provides customers flexibility, agility and room for innovation while fitting more easily into the corporate governance structure, security and availability concerns written by thousands of internal developers and thousands of customers to provide the largest business automation cloud on the planet. The IaaS infrastructure that enables this innovation and value is evolving to fully embrace lights-out operations, single-click deploy to tens of thousands of nodes, and services that self-heal and self-optimize.
Oracle Public Cloud is building out our IaaS cloud service team to redefine the way we deliver, deploy, operate, secure, monitor, and repair our elastic cloud infrastructure at our data centers and the code that runs across them - at consumer web scale. We're looking for engineers who bring fresh ideas from all areas, including software defined networking, distributed computing, large-scale system design, and security. The list goes on, and is growing every day. As a software architect, you will work on a specific project critical to Oracle Public Cloud needs with opportunities to switch projects as you and our fast-paced business grow and evolve. We need our engineers to be versatile, display leadership qualities and be eager to take on new problems across the full-stack as we continue to push technology forward.
You will be responsible for building software defined networking infrastructure to operate and manage Oracle Public Cloud networks. This includes building software for distributed services, abstractions, and the components of the system that operates and powers the OPC network infrastructure, from Virtual Networks, to Network Gateways, to the peering edge of our infrastructure. You will be writing the SDN software that controls this network, to take Oracle Cloud Infrastructure and the networking industry far beyond what industry standard networking systems can deliver. SDN (Software Defined Networking) engineers are expected to solve the most difficult problems of scale, reliability and security in SDN networking and also develop services like Network Gateways, Load Balancers, Fast Connect, VPNaaS, DNS etc.
Our ideal candidate will…
design and develop software defined network software for one of the largest networks in the world.
be familiar with crash-only and recovery-oriented software design.
be passionate about building reliable, self-healing services on unreliable hardware.
be self- motivated and able to manage individual project priorities, deadlines, and deliverables.
be capable of driving and delivering thin slices of functionality on a regular cadence with data-driven feedback loops.
MS or PHD degree in Computer Science or related technical field or equivalent practical experience.
Software development experience in one or more of the following programming languages: Java, C/C++, Python, or Go.
Experience with distributed services Zookeeper, Messaging Rabbit MQ or Kafka etc.
Knowledge of No SQL databases like Cassandra or Oracle NoSQL DB or CouchDB etc.
Experience with network fundamentals (e.g., TCP/IP, IP Tables, NAT, routing protocols), UDP, DNS, OSI layers, load balancing, routing, service discovery.
Knowledge with Software Defined Networking, Network Virtualization, OpenvSwitch, OpenFlow.
Experience with Agile development methodology and Test-Driven Development
Extensive experience architecting and developing software for scalable, distributed systems
Experience with Resource Management or scheduling in cloud infrastructure is a plus.
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. Suggest and justify product directions within approved directions. Define responsibilities for new projects and specifies, designs and develops software according to those specifications. Provide consultative software guidance and strategic direction associated with the developing, designing and debugging of software applications or operating systems.
Acknowledged expert/professional within company and/or industry nationally and internationally. Provides leadership in the development and strategic direction of new products, processes, techniques. Acts as primary consultant on large projects that effect the organization*s long term objectives / strategy. BS or MS degree or equivalent experience relevant to functional area. 10 more years of software engineering or related experience.
Oracle is an Equal Employment Opportunity Employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, national origin, sexual orientation, gender identity, disability and protected veterans status or any other characteristic protected by law.