Overview:
The Principal Application Support Developer is a senior individual contributor responsible for ensuring the stability, performance, and continuous improvement of backend applications, with a primary focus on Java-based systems. This role combines deep technical expertise in backend development with advanced application support capabilities, including troubleshooting, optimization, and incident resolution.
The position requires a proactive engineer who can diagnose complex issues, enhance system reliability, and contribute to the evolution of backend services. While Java is mandatory, the role may expand to include other backend technologies, requiring adaptability and a continuous learning mindset.
Key Responsibilities:
- Design, develop, and maintain scalable backend services using Java and Spring Boot, ensuring high performance and reliability
- Architect and implement robust service integrations with relational databases using ORM frameworks, ensuring data integrity and efficiency
- Build, optimize, and maintain RESTful APIs and microservices, adhering to best practices in API design and versioning
- Integrate backend services with enterprise authentication and authorization frameworks (SSO, RBAC, OAuth2/OIDC)
- Containerize applications and manage deployments in Kubernetes environments using tools such as Helm
- Contribute to system design and architecture decisions, promoting scalability, resilience, and maintainability
- Collaborate cross-functionally with frontend, DevOps, and product teams to deliver end-to-end, high-quality solutions
- Ensure backend systems meet security, reliability, and scalability standards, including secure coding practices and performance optimization
- Implement and enhance observability practices, including monitoring, logging, and alerting to ensure system health and performance visibility
- Lead production support activities, including incident investigation, root cause analysis (RCA), and resolution of complex issues
- Write clean, maintainable, and well-documented code, following coding standards and peer review practices
- Drive continuous improvement in development practices, tools, and system performance.
Qualifications:
Education:
- Bachelor's degree in Computer Science, Software Engineering, or a related technical field.
Experience:
- 6–10 years of experience in development of Back-end applications.
- Solid experience with relational databases (PostgreSQL) and Object Relational Mapper (ORM) frameworks such as JPA/Hibernate.
- Experience with CI/CD pipelines and build tools such as Jenkins and Maven.
- Experience with cloud platforms (OCI, AWS, Azure, or GCP).
Skills & Competencies:
- Strong proficiency in Java and the Spring Boot framework.
- Familiarity with containerization (Docker) and orchestration (Kubernetes, Helm).
- Understanding of authentication and security frameworks such as Keycloak and Spring Security.
- Familiarity with observability tooling and experience writing automated tests using JUnit.
- Strong troubleshooting skills and ability to support production environments.
- Working knowledge of C# and/or Python is preferred