Associate Principal, Software Engineering: Java
Listed on 2026-10-11
-
Software Development
Java Developer, Software Architect, Software Engineer, Senior Developer
As an Associate Principal, you will be a senior individual contributor on OCC’s Automation Testing Framework engineering team, leading the design, development and evolution of the framework that supports critical risk technology systems. You will own complex technical deliverables end to end, set engineering standards, and mentor Associates while partnering with testing teams, architects and business stakeholders.
Primary Duties and ResponsibilitiesTo perform this job successfully, an individual must be able to perform each primary duty satisfactorily.
To perform this job successfully, an individual must be able to perform each primary duty satisfactorily.
- Design and write clean, maintainable, well-tested Java code, and lead debugging and root-cause analysis of complex framework and integration issues.
- Lead the design, development and enhancement of automation testing framework features, and drive adoption by testing teams through guidance, documentation and enablement.
- Lead code reviews, uphold engineering standards and best practices, and drive continuous improvement of the codebase and delivery practices.
- Champion secure software delivery by integrating and acting on findings from Sonar Qube, Snyk, Sysdig, Veracode, and Black Duck, and partner with security teams to remediate vulnerabilities.
- Own and improve CI/CD automation using Jenkins and containerized deployment with Docker, Harness, and Rancher, focusing on reliability, speed and repeatability.
- Serve as an escalation point for testing teams, resolving complex automation framework issues and identifying recurring problems to eliminate at the source.
- Lead design discussions and proof of concept efforts, evaluate technical alternatives, and drive architectural decisions for the framework in collaboration with architects and engineering leadership.
- Solve ambiguous problems creatively, communicate clearly to technical and executive audiences, and take initiative in technical decisions to achieve objectives.
- Mentor and coach Associates and other engineers, and collaborate effectively with business, technical and non-technical professionals in an agile environment, including contributing to sprint planning, estimation and roadmap discussions.
No formal direct reports; provides technical leadership, mentoring and guidance to Associates and other engineers, and may lead small project teams.
Qualifications- 5+ years of professional software engineering experience with production systems, including distributed systems and backend microservice development, with a track record of delivering complex solutions with minimal supervision.
- Experience with distributed computing frameworks such as Kafka Streaming and message queues, including designing for scale, resilience and fault tolerance.
- Strong experience in API development, SQL databases, and data storage such as S3.
- Strong working knowledge of CI/CD, Dev Ops tools, Git, and test automation frameworks, with experience improving pipelines and release processes.
- Deep understanding of OOP, microservices architecture, REST APIs, and Java 8+ features, with the ability to apply design patterns and make sound architectural trade-offs.
- Experience leading work within Agile delivery models, including sprint planning, code reviews, backlog refinement, and cross-team communication.
- Demonstrate intellectual curiosity, a strong desire to learn fast, and the ability to mentor others and help the team adopt new technologies.
- Advanced Java programming expertise including object-oriented design, concurrency and multithreading, performance tuning, and substantial experience with Spring Boot.
- Strong working knowledge of Kafka including producers, consumers, topics,…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).