Description
We are looking for a Software Engineer to join our Authentication Core team at Salesforce. As a Software Engineer, you will architect, design, implement, test, and deliver highly scalable authentication and session services on Salesforce Core (Java), with strict availability and latency requirements.
Responsibilities:
- Build and evolve standards-based identity protocols, including OAuth 2.0/2.1, OpenID Connect, SAML 2.0, and newer ones such as PKCE, DPoP, mTLS-bound tokens (RFC 8705), token exchange, and Device Bound Session Credentials (DBSC)
- Harden sessions and credentials against hijacking, replay, phishing, and credential stuffing, using token binding, refresh-token rotation, secure cookie design (SameSite, CHIPS), and step-up authentication
- Threat-model new features, work with Product Security, and fix findings from penetration tests, bug bounty, and incident reviews
- Roll out security enforcement safely for customers using feature flags, phased cohorts, telemetry-driven decisions, backward compatibility, and clear deprecation plans for legacy endpoints
- Master our development process, culture, and code base, then improve it
- Operate optimally in the hybrid engineering model where engineers are encouraged to be able to craft and complete the vital work to ensure quality in their own code as well as other engineers
- Mentor others in development technologies, tools, processes, and secure-coding practices
- Present your own designs to internal/external groups and review designs of others
- Develop test strategies, design automation frameworks, and write unit/functional tests, including negative and abuse-case tests for authentication paths
- Participate in the team’s on-call rotation to address sophisticated problems in real time, including authentication outages and security incidents, and keep services operational and highly available
- Build and ship high-quality, production-grade software using modern engineering practices, with AI as a core part of your development workflow by pushing the boundaries of AI development tools to deliver secure, optimized, and high-quality code
- Design and orchestrate complex systems where AI agents integrate seamlessly into human workflows, driving efficiency and innovation at scale
- Contribute to building and maintaining the shared system context, an explicit repository of system designs, constraints, and standards that enables AI to operate accurately and reliably
- Critically evaluate code (human or AI-generated) for correctness, quality, security, and performance, especially authentication, authorization, and cryptographic logic, where subtle mistakes become vulnerabilities
Requirements:
- A related technical degree required
- 3+ years of professional software development experience (Senior Level: 5+ years, including ownership of production services)
- Strong Java and object-oriented design skills; experience with large, multi-tenant codebases is a plus
- Solid grasp of authentication and authorization basics: identity vs. access, session lifecycle, and token types (access, refresh, ID), with hands-on experience with at least one of OAuth 2.0, OpenID Connect, or SAML
- Working knowledge of applied cryptography: symmetric vs. asymmetric encryption, hashing, HMAC, password hashing (bcrypt, scrypt, Argon2, PBKDF2), digital signatures, PKI and X.509 certificates, TLS and mTLS, JWT/JWS/JWE, and key management and rotation, plus the judgment to use vetted libraries rather than writing your own
- Secure-coding fundamentals: OWASP Top 10, CSRF, XSS, session fixation, open redirects, injection, timing side channels, and safe handling of secrets and PII
- Understanding of the browser security model: cookies and their attributes, same-origin policy, CORS, CSP, and security headers
- Proven understanding of web technologies, such as JavaScript, HTML5, JSON, and HTTP
- Validated understanding of database technologies such as SQL and relational database schema design
- Experience in automated testing including unit and functional testing using Java, JUnit, and Selenium
- A demonstrated, genuine AI-first approach to engineering: using AI to move faster, build fluency across the stack, and contribute well beyond your core specialty, while using it responsibly with security-sensitive code (checking AI-generated cryptographic and authentication logic against specs, and never exposing secrets or customer data in prompts)
- Experience using AI tools (e.g., Claude Code, GitHub Copilot, Codex, Cursor) in development workflows
- Advanced prompt engineering skills and the ability to write precise, structured prompts and cultivate the system context that makes AI outputs reliable, secure, and production-ready
- Excellent interpersonal skills
Benefits:
- Office-Flex: Work in-person three days per week; or 10 days per quarter for some engineering teams
For more fresh new jobs, check out yubhub.co.