Senior Application Software Engineer
Oracle
Oracle
Join the ECPRT engineering team within Oracle Cloud Infrastructure (OCI) Networking. We are building cutting-edge distributed software for monitoring, AI-driven workflows, and media capabilities.
Our platform is designed to handle evolving use cases across data center monitoring, remote operations, and high-performance media streaming. This is an opportunity to work on a dynamic and impactful cloud infrastructure project.
We are seeking a software engineer with robust system design skills and practical experience in developing services, primarily using Go and Python. In this role, you will take ownership of features from inception to completion, make critical architectural decisions, and effectively solve complex problems across application services, asynchronous workflows, and underlying infrastructure.
Take ownership of designing, developing, and maintaining robust services and workflows utilizing Go and Python.
Drive features through the entire lifecycle: requirements analysis, system design, implementation, testing, deployment, and ongoing production support.
Make and thoroughly document architectural decisions, carefully evaluating trade-offs related to scalability, reliability, performance, security, and maintainability.
Construct asynchronous, event-driven workflows, leveraging technologies like NATS and associated messaging patterns.
Design for resilience by anticipating and handling failure scenarios, including retries, timeouts, duplicate messages, partial failures, and service recovery.
Develop sophisticated APIs and integrations connecting monitoring, AI, and media components.
Enhance system observability through actionable metrics, structured logging, comprehensive dashboards, and effective troubleshooting tools.
Investigate and resolve complex issues spanning services, messaging infrastructure, networking, and media processing.
Collaborate closely with Site Reliability Engineering (SRE) and partner teams to enhance deployment readiness and operational reliability.
Actively participate in design and code reviews, mentor junior engineers, and contribute to strengthening technical documentation and knowledge sharing.
Demonstrate strong software engineering experience in delivering and supporting production-ready services.
Possess proficiency in Go or Python, with the ability to work effectively across both languages.
Exhibit strong system design knowledge, evidenced by the successful design and delivery of distributed systems or backend platforms.
Understand core concepts of service boundaries, API design, concurrency, data management, and the nuances of synchronous versus asynchronous communication.
Be adept at reasoning about scalability, availability, consistency, fault tolerance, and performance trade-offs.
Apply strong debugging and problem-solving skills to investigate issues across multiple services.
Have experience with automated testing, version control, code reviews, and CI/CD practices.
Possess familiarity with Linux environments and fundamental networking concepts.
Exhibit the ability to independently drive technically complex work, clearly communicate design decisions, and foster collaboration across diverse teams.
Hold a Bachelor's degree in Computer Science, Engineering, or a related discipline, or possess equivalent practical experience.
Oracle
Technology