Software Developer
Oracle
Bengaluru, Karnataka, India
Job Description Design, develop, troubleshoot and debug software programs for databases, applications, tools, networks etc. 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. Oracle’s Cloud Infrastructure (OCI) builds Infrastructure-as-a-Service that operates at a high scale in a broadly distributed multi-tenant cloud environment. Our customers run their businesses on our cloud, and our mission is to provide them with best-in-class compute, storage, networking, database, security, and an ever-expanding set of foundational cloud-based services. These are exciting times in our space - we are growing fast and working on ambitious new initiatives. We are building a new Zero Trust service team at OCI. Our mission is to build and operate a set of Zero Trust Network services through a combination of network security technologies with OpenZiti, identity and access management (IAM) solutions, multi-factor authentication (MFA), software-defined perimeters (SDP), and cloud-based security solutions. The goal is to create a more resilient and secure network that reduces the risk of data breaches and cyberattacks, especially in today's highly dynamic and distributed computing environments. The secure edge zero trust service will provide policy mapping, edge routers and controllers to perform a user to device to workload mapping for access. These functions will generate logs, audit trails, metrics, and alerts to enable automated and manual assurance of code as well as ingress/egress traffic. The team will develop and maintain the secure edge code as well as operate the service infrastructure for the application. The team will be responsible for the performance, scalability, and reliability of the service too. In particular, they will be responsible for ensuring that the performance of the application, as well as the developer velocity of the application teams, are not negatively impacted by the zero trust service. They will optimize the code to ensure low overhead and they will scale the secure edge routers, controllers to handle increases in traffic and in the frequencies of application updates. Responsibilities 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. As a Software Engineer, you will work with a team of software engineers responsible for the software design, development, and operations of our secure edge zero trust services. You should be able to understand broad systems interactions, be hands-on, be able to dive deep into any part of the stack, and have a good sense of cloud infrastructure and networking knowledge. You should value simplicity and impact, work comfortably in a collaborative, agile environment, and be excited to learn. The ideal candidate will be technically strong and productive; someone who knows how to balance speed and quality with iterative and incremental improvements. You understand operational excellence and know-how to infuse a culture of being proactive within your team. You have the ability to recommend and justify changes to new and existing products and establish consensus with data-driven approaches. Basic Qualifications: BS degree in Computer Science or related technical field involving coding or equivalent practical experience. 2+ years of experience with back-end development for cloud network services Proficient at high-level programming languages, preferably GO and Java. Good knowledge of scripting languages such as Python. Good Knowledge of Computer Networking (OSI layers, HTTP, DNS, TCP/IP, DHCP, Routers, Gateways, Subnets, etc) Security principles of Zero Trust and understanding of Open Ziti Systematic problem-solving approach, strong communication skills, a sense of ownership, and drive Preferred Qualifications: Masters degree in Computer Science. Prior Hands-on experience developing cloud services and tools on Oracle Cloud/AWS/GCP/Azure. Experienced with microservice design patterns and service-to-service communication protocols along with developing highly reliable services. Experience working on large scale, highly distributed services infrastructure. Experience working on Kubernetes. Ability to deliver products from the ground up going through a product life cycle Knowledge of Linux internals, Linux/Unix troubleshooting skills Familiarity with Infrastructure as Code (IAC) languages, preferrably Terraform. Experience with devising, managing, and extending monitoring solutions for large scale environments. Familiarity with databases (SQL and noSQL) Understanding of service metrics and alarms through the development of dashboards, service KPIs, alarming systems. Experience working in an operational environment with mission critical tier one services with associated pager duty Familiarity with host virtualization technologies (KVM, Containers, Docker, etc.) Required Skills Java (Programming Language)