Description
At Instructure, we believe in the power of people to grow and succeed throughout their lives.
As a Senior Software Engineer on the Platform Identity team at Instructure, you will play a pivotal role in designing, developing, and maintaining core components of our identity and access management (IAM) solution,which underpins all of Instructure's products.
Responsibilities
- Design, develop, and deploy robust and scalable IAM services, including authentication, authorization, user provisioning, and directory services.
- Lead technical discussions, conduct architectural reviews, and provide mentorship to junior and mid-level engineers on the team.
- Collaborate closely with product managers, security engineers, and other engineering teams to define requirements, design solutions, and integrate identity services across Instructure’s product ecosystem.
- Implement and enforce best practices for security, data privacy, and compliance within identity systems.
- Optimize existing identity solutions for performance, reliability, and maintainability.
- Participate in on-call rotation and provide support for production identity systems, efficiently troubleshooting and resolving complex issues.
- Contribute to the continuous improvement of development processes, tools, and infrastructure.
- Stay current with industry trends and emerging technologies in identity management and security.
Requirements
- Bachelor’s degree in Computer Science, Software Engineering, or a related field; or equivalent practical experience.
- 5+ years of professional software development experience, with a significant focus on identity and access management systems.
- Strong proficiency in at least one modern programming language (e.g., Ruby, Go, Java, Python, C#) and experience with relevant frameworks.
- Demonstrable experience with identity protocols and standards (e.g., OAuth 2.0, OpenID Connect, SAML, SCIM).
- Solid understanding of security principles, cryptography, and best practices for securing web applications and APIs.
- Experience designing and building highly available, scalable, and fault-tolerant distributed systems.
- Proficiency with relational databases (e.g., PostgreSQL, MySQL) and NoSQL databases.
- Experience with cloud platforms (e.g., AWS, Azure, GCP) and containerization technologies (e.g., Docker, Kubernetes).
- Excellent problem-solving skills, with the ability to analyze complex technical issues and propose effective solutions.
- Strong communication and interpersonal skills, with the ability to effectively collaborate with cross-functional teams.
Benefits
- Competitive compensation, plus all full-time employees participate in our ownership program
- Flexible work culture
- Generous time off, including local holidays and our annual “Dim the Lights” period
- Comprehensive wellness programs and mental health support
- Learning and development resources, including professional development tools and tuition reimbursement
- The technology and tools you need to do your best work
- Motivosity employee recognition program