Position Summary
We are seeking a skilled and security-focused Software Engineer to design, develop, and enhance Identity and Access Management (IAM) components for our modern SaaS platform. The ideal candidate will have strong expertise in Role-Based Access Control (RBAC) and Attribute-Based Access Control (ABAC), building secure microservices using Java Spring Boot.
Key Responsibilities
- Design and implement scalable, secure IAM systems supporting RBAC and ABAC models
- Develop authentication, authorization, user provisioning, and policy evaluation microservices using Spring Boot
- Define and manage access policies, roles, groups, permissions, and attributes
- Collaborate with security architects to ensure compliance with OAuth2, OIDC, SAML, SCIM, etc.
- Integrate with internal microservices and external identity providers (Okta, Keycloak, Azure AD)
- Implement fine-grained access controls and dynamic authorization logic
- Participate in architectural decisions, code reviews, and technical documentation
- Ensure performance, reliability, and security of IAM services
- Follow DevSecOps practices including secure coding, testing, and monitoring
Basic Qualifications
- Bachelor's or Master's degree in Computer Science or a related field
- 3+ years of hands-on experience with Java and Spring Boot
- Strong knowledge of IAM concepts including RBAC, ABAC, authentication/authorization protocols, and directory services
- Solid understanding of microservices architecture, API security, and distributed systems
- Familiarity with OAuth2, OIDC, SAML, JWT security models
- Experience with policy engines such as OPA, Keycloak Authorization Services, or XACML
- Proficiency in RESTful API development and secure coding practices
Preferred Qualifications
- Experience with cloud platforms (AWS, GCP, or Azure)
- Familiarity with DevOps tools like Docker, Kubernetes, and CI/CD pipelines
- Understanding of multi-tenant SaaS access control models
- Experience with SCIM for user/group provisioning
- Knowledge of auditing, logging, and monitoring access events