Principal Application Software Engineer
Job Description
Oracle invites you to join as a Principal Application Software Engineer in Seattle, WA on-site. In this role you will lead end-to-end application software development, architecture, and API integration, guiding design reviews, testing, and optimization while mentoring engineers and coordinating with stakeholders. You will collaborate closely with product and design teams, embed security practices, and uphold system availability across enterprise applications.
Responsibilities
- Drive feature development within an application and steer related lifecycle decisions.
- Provide global production support for cloud-based applications to address critical issues, leveraging expertise in at least one specialty area.
- Troubleshoot and debug routine and non-routine Oracle applications services, Oracle Cloud infrastructure, end-user integrations, or acquisitions.
- Partner with QA and engineering teams to discuss changes affecting functionality and ensure quality and consistency across applications.
- Consider existing software architecture when writing new code.
- Translate requirements into a structured, scalable, maintainable, and performant code plan.
- Contribute to defining dependencies, such as APIs, that support application functionality.
- Discuss requirements with customers, weigh scalability and reliability, and define build priorities within teams.
- Refine requirements using feedback from online forums and site maintenance reports.
- Collaborate with Designers, Product Managers, Software Engineers, and stakeholders to evaluate and integrate customer specifications and business needs.
- Design software solutions and analyze requirements to meet business and operational goals, sharing results with management upon completion.
- Adhere to and improve the software development lifecycle, providing coaching to engineers to raise standards.
- Develop and guide new features with an emphasis on accessibility and document design and code clearances.
- Lead code reviews across multiple areas to drive quality improvements.
- Debug and resolve complex software issues, delivering timely fixes as needed.
- Implement comprehensive testing, QA processes, error logging, monitoring, and observability for effective debugging, reporting outcomes to leadership.
- Profile performance and optimize coding to build scalable solutions and prevent potential problems.
- Troubleshoot complex API functionality and integrations, including API versioning, lifecycle, and interoperability strategies.
- Develop software, systems, and services with managed reviews and defined scope as appropriate.
- Provide technical guidance and coaching to less experienced developers and maintain architectural alignment.
- Participate in periodic reviews to ensure adherence to architectural standards and best practices.
- Collaborate with stakeholders and external networks to ensure alignment with software architecture.
- Implement performance optimization and scalability strategies in software design.
- Occasionally conduct technology research and evaluate architectural changes that could impact the team.
- Understand customer issues and align solutions, offering advanced guidance or customer support as needed.
- Advocate for customers' interests and propose product enhancements based on feedback.
- Ensure customer satisfaction through timely resolution of issues and effective communication.
- Identify and implement customer issue and defect handling and training processes.
- Investigate and resolve broad maintenance issues, aligning short- and long-term solutions with customers.
- Follow development practices and coding standards, coaching junior team members as appropriate.
- Participate in peer reviews, provide technical leadership, and ensure code quality against acceptance criteria.
- Apply industry best practices to software development processes and secure coding techniques to prevent vulnerabilities.
- Perform maintenance and testing operations for upgrades or patches, sharing results with leadership upon completion.
- Drive improvements by improving automation, testing, and debugging to ensure service availability and reliability.
- Coordinate moderately complex tasks, managing timelines and deliverables across projects with technical oversight.
- Collaborate across the organization to align expectations and achieve shared objectives, fostering an inclusive and respectful environment.
- Identify and address moderately complex issues by analyzing data and escalating when necessary, documenting solutions.
- Pursue learning opportunities and mentor junior teammates to promote knowledge sharing across teams.
- Suggest process improvements to increase efficiency and evaluate impact on stakeholders.
- Contribute to the talent development pipeline by participating in candidate interviews and providing hiring recommendations.
Technologies
Oracle Applications, Oracle Cloud Infrastructure