Senior Backend Software Engineer Location Redwood City, CA : Fusion Applications (FA) is Oracle's leading SaaS offering of several critical business applications like Enterprise Resource Planning(ERP), Human Capital Management(HCM), Customer Relationship Management(CRM) and many more. The enterprise grade application suite serves as one of the focal points of Oracle's business value. While Fusion Applications has been a huge success, the basic architecture is based on an on-premise, Fusion Middleware stack that has not changed since its inception. We, are the the Fusion Applications Technical Architecture team and have been tasked with defining the next generation architecture (codename Spectra) based on cloud native principles running in Oracle Cloud Infrastructure (OCI). The migration from a monolith to a modern cloud based micro-service architecture opens up new avenues to work with a wide range of state-of-the-art technologies and OCI services. It will also mean instituting better processes and practices as we transform to software as a service development model that includes following industry standard developer workflows, CICD pipelines, safe deployment practices, cloud based automated testing, DevOps culture, etc.
For this new Spectra architecture team, we're looking for talented software engineers to join us and build out the frameworks and services for Health Monitoring and Chaos Engineering. As you can imagine, this service will be a critical part of hundreds of other services, helping to improve the resiliency of the services and help service owners to maintain their SLOs. This is a startup team and comes with a service ownership role that is hands-on, with lots of opportunity for large contributions and impact across the organization. At this stage, we're looking for highly passionate engineers with varying levels of experience and areas of expertise to join the team. As with most service teams, there will eventually be a periodic on call rotation as part of this role.
You should be a rock-solid coder, and a generalist who can dive deep into any part of the stack and low-level systems. Your passion for excellence combined with your experience will help you be an outstanding technical contributor as you look to grow your influence and career. You should be able to work independently and as part of a team in an Agile environment. You should be a great communicator to both technical and non-technical stakeholders in multiple locations around the globe. You should also be able to manage multiple projects and priorities in a fast-paced environment, be results-driven, and thrive even when faced with ambiguity and uncertainty. Most importantly, you should be a team player, someone who is eager to learn, and willing to do whatever it takes to help the team succeed.
Career Level - IC3
#LI-JS14
Responsibilities:
~ Developing and implementing features based on given requirements and use cases.
~ Work with peers to propose and review design, solutions and implementation with an emphasis on metric driven results.
~ Writing quality backend code, including validation tests using languages including, but not limited to, Java, and Python.
~ Working with cloud native technologies such as Docker, Kubernetes, and gRPC.
~ Ensuring safe and compliant release management across different stages.
~ Operating the service through production, including making operational and continuous improvements.
~ Analyzing and debugging issues, including bugs, customer issues, and performance issues.
Collaborating and contributing in an inclusive and diverse environment to continuously build a healthy work culture. Minimum Qualifications:
~ BS or MS degree in computer science, or equivalent
~3-5+ years of developing and shipping enterprise distributed and/or cloud native systems
~3+ years of experience with REST API development
~ Strong knowledge of microservices, data structures, algorithms, operating systems, and distributed systems
~ Excellent troubleshooting, debugging, and performance tuning skills.
~ Excellent written and verbal communication skills with the ability to present complex information clearly and concisely to all audiences.
~ Strong grasp of system design fundamentals and distributed systems architectural best practices
~ Demonstrated ability to write great code in Java, Python, or similar OO languages
~ Experienced at building highly available and scalable distributed services, possessing knowledge of common service-oriented design patterns and service-to-service communication protocols
~ Experience with containers and container orchestration technologies (Kubernetes, Docker)
~ Strong desire to make an impact and thrive in collaborative and energetic environments
~ Ability to effectively communicate technical concepts verbally and through design aspects
Systematic problem-solving approach, strong communication skills, a sense of ownership, and drive. Preferred Skills and Experience:
~ Programming languages: Proficiency in Java, Python, and JavaScript is preferred.
~ Experience with AI/ML frameworks and libraries is a significant asset.
~ Production experience with Cloud and ML technologies
~ Experience working in the below areas and algorithms will be ideal but not mandatory: Generative AI Modeling: Customizing LLM's, build and deploy LLM's at scale for large scale data generation
~ Algorithms: Transformer models, Attention mechanism, Prompt tooling
~ Experience with build automation, continuous integration, or continuous deployment tools such as Git, Jenkins, Maven, Grunt, RunDeck, Ansible, etc.
~ Experience in developing and designing solutions with containerization technologies such as Docker and Kubernetes.
~ Experience with observability tools and practices.
~ Experience with working flexible hours and working with team members in a global setting with distributed time zones.