Backend Java Developer
Key Responsibilities:
- Analyze application source code, architecture, APIs, integrations, and backend services to understand system behavior and identify improvement opportunities.
- Provide technical analysis and recommendations for complex engineering and application challenges.
- Review solution designs and implementation approaches with engineering teams.
- Influence technical decisions that improve scalability, resiliency, performance, maintainability, and long-term sustainability.
- Identify, document, and help prioritize technical debt and modernization opportunities.
- Evaluate technologies, frameworks, architectural patterns, and development approaches.
- Support cloud adoption, application modernization, and application lifecycle improvement initiatives.
- Establish and promote reusable engineering patterns, standards, and technical best practices.
- Partner with Security teams and engineering teams to promote secure software development and security-by-design principles.
- Help address application vulnerabilities, penetration-test findings, security gaps, and technical risks.
- Review application authentication, authorization, encryption, secrets management, and API security practices.
- Support threat modeling and secure software development lifecycle (SSDLC) activities.
- Analyze technical risks and identify potential issues before they become production problems.
- Collaborate with cross-functional teams to resolve complex technical dependencies and integration challenges.
- Develop technical documentation, architecture guidance, playbooks, standards, and knowledge-sharing materials.
- Communicate complex technical concepts and recommendations clearly to both technical and non-technical stakeholders.
- Continuously identify opportunities to improve engineering practices, application quality, and platform sustainability.
Qualifications:
- Strong experience in Java backend development and modern software engineering practices.
- Ability to read, understand, troubleshoot, and analyze existing Java source code.
- Strong understanding of application architecture and software engineering principles.
- Experience with REST APIs, microservices, distributed systems, and enterprise integrations.
- Experience designing or supporting scalable, resilient, and highly maintainable applications.
- Understanding of modern cloud-native application architectures.
- Experience with CI/CD, DevOps, and modern software delivery practices.
- Experience identifying and addressing technical risks, application issues, and technical debt.
- Strong understanding of software development lifecycle and application modernization concepts.
- Strong analytical and problem-solving skills.
- Excellent communication and collaboration skills.
Preferred Qualifications:
- Experience working in banking or financial services.
- Experience with Digital Banking platforms.
- Experience with Azure or other major cloud platforms.
- Experience with event-driven architecture and messaging systems.
- Experience with enterprise application integrations.
- Experience with application modernization and cloud migration.
- Experience managing and reducing technical debt.
- Experience participating in architecture governance or technical design reviews.
- Experience establishing enterprise engineering standards and reusable technical patterns.