We are seeking a Senior Application Software Developer and Team Lead to join the AI4Support team and build scalable, cloud-based machine learning and AI solutions. This role will focus on developing and productionizing ML models and intelligent applications leveraging machine learning, NLP, large language models, and generative AI. The successful candidate will work closely with applied scientists, Machine learning engineers, software engineers, and cross-functional teams to transform complex data and business challenges into reliable, scalable solutions that deliver measurable customer impact.
The ideal candidate is a hands-on engineer and technical leader who can tackle complex, ambiguous problems and drive solutions from experimentation through production. This includes contributing to model development and evaluation, Java microservice orchestration, ML system design, deployment, monitoring, and optimization, while helping establish strong MLOps, testing, observability, and cloud
Adheres to and suggests improvements to all phases of the application software development lifecycle. Utilizes working knowledge to develop new application features and enhancements following design specifications, and develops documents to clarify application design and code. Leads code reviews in designated application areas to help drive improvements. Conducts debugging and troubleshooting to identify and fix moderately complex application issues. Develops fixes for identified issues. Troubleshoots and resolves moderately complex issues related to application programming interface (API) functionality, integration, and service-to-service interactions. Designs and develops application software, systems, and services aligned to pre-defined application architecture. Collaborates within and beyond the immediate team to understand customer use cases and align application solutions. May provide technical guidance and support to customers regarding application-related issues, independently. Collaborates with the team to establish and follow application development practices, secure coding standards, and code quality. Performs periodic maintenance and testing operations for application systems that require upgrading or patching (e.g., for critical vulnerabilities).
Key Responsibilities
Application Software Development:
Drives medium features and quality improvements with measurable performance and reliability outcomes.
Provides global production support for critical issues with minimal guidance; improves playbooks/alerts.
Troubleshoots and debugs non-routine issues spanning application layers and common OCI services; proposes fixes.
Partners with QA to define test strategy (unit/integration) for features; ensures consistency across modules.
Considers trade-offs in existing architecture; proposes moderate design improvements.
Translates ambiguous requirements into scalable designs and implementation plans.
Defines and stabilizes API contracts and dependencies for the application area.
Recommends build priorities within the team using data from incidents, telemetry, and customer feedback.
Systematically incorporates external feedback (forums, live-site reports) into backlog refinement.
Mentors junior engineers; coordinates cross-functionally on feature delivery.
Software Development and Coding - Design, Testing, and Optimization:
Designs software solutions and analyzes and helps identify requirements to achieve business and operational goals, independently.
Adheres to and suggests improvements to all phases of the software development lifecycle.
Utilizes working knowledge to develop new software features and enhancements following design specifications and develops documents to clarify software design and code.
Leads code reviews in designated areas to help drive improvements.
Conducts debugging and troubleshooting to identify and fix moderately complex software issues.
Develops fixes for identified issues.
Implements software testing (e.g., functional…