About the Role
Seeking an engineer to take on the full lifecycle of OpenID Provider and authentication system development, from requirements definition to initial operations, potentially as a solo contributor. This role involves designing and implementing authentication and authorization servers based on OAuth2/OpenID Connect protocols, developing token issuance, multi-factor authentication (MFA), and WebAuthn features, as well as designing and developing RESTful and SOAP APIs.
Responsibilities
- Take on the full lifecycle of requirements definition, design, implementation, deployment, and initial operations, or most of the process, as a solo engineer.
- Design and implement OpenID Provider.
- Design and develop authentication/authorization servers based on OAuth2/OpenID Connect protocols.
- Implement token issuance functionality.
- Design and implement authentication systems.
- Develop authentication features such as login, user registration, and password reset.
- Develop multi-factor authentication (MFA) functionality.
- Develop WebAuthn authentication functionality.
- Design and develop APIs.
- Design and implement RESTful APIs.
- Design and implement SOAP APIs.
- Create and maintain API documentation.
- Build and manage CI/CD pipelines.
- Design and implement Continuous Integration/Continuous Delivery (CI/CD) pipelines.
- Monitor and troubleshoot pipelines.
- Deploy and operate systems.
- Deploy systems in cloud environments (AWS, Azure, GCP, etc.).
- Handle system failures.
Requirements
- Experience with Java, OAuth2, Spring, and Docker.
- Over 10 years of experience.
- Experience with Java and JavaScript programming languages.
- Over 5,000 hours of practical experience developing software using Java.
- Over 1,000 hours of practical experience developing software using JavaScript.
- Experience developing J2EE web applications (EJB is not required).
- Experience using frameworks such as Spring Boot.
- Self-developed web applications that are commercially operational on the internet.
- Understanding of OAuth 2.0 and OpenID Connect protocols.
- Deep understanding and implementation experience with OAuth 2.0 and OpenID Connect protocols.
- Design and implementation of authentication and authorization flows.
- Experience with security protocols and encryption technologies.
- Understanding of security protocols such as public-key cryptography, PKI, TLS, and challenge-response.
- Practical experience with data encryption and security best practices.
- Linux operation capabilities.
- Experience developing and operating web applications in a Linux environment.
- Fluent operation of shells and editors, able to perform tasks such as changing OS and application settings, file management, program startup/shutdown, and monitoring without hesitation.
- Creation and automation of shell scripts.
- Experience with Docker and Kubernetes.
- Experience using containerization technologies like Docker.
- Experience developing Kubernetes manifests.
- Self-deployed applications that are commercially operational on the internet.
- Ability to read English specification documents.
- Ability to read English specifications for OAuth2/OIDC/WebAuthn/NIST SP 800-63 series, etc.
Skills
- Java
- OAuth2
- Spring
- Docker
- JavaScript
- J2EE Web Application Development
- Spring Boot
- OpenID Connect
- Authentication/Authorization Flows
- Security Protocols
- Encryption Technologies
- Public-key Cryptography
- PKI
- TLS
- Challenge-Response
- Linux Operations
- Shell Scripting
- Kubernetes
- CI/CD
- RESTful API Design
- SOAP API Design
- API Documentation
- Cloud Deployment (AWS, Azure, GCP)
- Communication Skills
- Problem-Solving
- System Diagramming
Experience Level
- 10+ years
About the Company
- DXC Technology believes that strong community ties are key to success.
- DXC's work model emphasizes in-person collaboration while offering the flexibility to support employee well-being, productivity, individual work styles, and living situations.
- DXC is committed to creating an inclusive environment where everyone can thrive.
Equal Opportunity
- DXC is committed to creating an inclusive environment where everyone can thrive.
- DXC does not make employment offers through social media networks and does not ask applicants for money or payments at any stage of the recruitment process.
- DXC does not ask job seekers to purchase IT equipment or other equipment on our behalf.
