Turnitin is seeking a Senior Software Engineer, Frontend to design and deliver intuitive, high-performing, and reliable user interfaces for their educational platform. This role involves close collaboration with backend engineers, designers, and product managers to build scalable and engaging solutions used by educators and students worldwide.
What You'll Do
- Design, develop, and maintain highly efficient, reusable, and scalable web components using TypeScript, Stencil.js, and React.
- Build modular and reusable UI components to ensure consistency and maintainability across projects.
- Establish and enforce best practices for system design, including accessibility (WCAG compliance), performance optimization, and responsive design.
- Collaborate with the team to define the architecture of the design system or component.
- Ensure seamless integration of web components into various applications, within Stencil.js and React projects.
- Work closely with backend engineers to design APIs that enable efficient data flow and interaction with frontend components.
- Write clean, maintainable, and well-documented code, adhering to modern standards and practices.
- Perform regular code reviews and ensure adherence to best practices and coding standards.
- Create robust unit and integration tests.
- Debug and resolve performance bottlenecks and other frontend issues.
- Work closely with designers and product managers to understand requirements and provide technical insights during the planning phase.
- Mentor junior frontend engineers, sharing knowledge on web components, Stencil.js, TypeScript, and React.
- Continuously improve the performance of frontend applications, ensuring compatibility with various browsers and platforms.
- Optimize assets and rendering pipelines for faster load times and better user experience.
- Create comprehensive documentation for the developed reusable components, including usage guidelines and examples.
- Provide technical support to teams integrating the components into their projects.
- Stay up-to-date with emerging frontend technologies.
- Proactively suggest improvements to existing tooling, frameworks, or processes to enhance team efficiency and product quality.
- Collaborate with DevOps to streamline CI/CD processes for frontend builds and deployments.
- Ensure smooth handoff of frontend deliverables to QA and collaborate on addressing issues during testing.
What We're Looking For
- Strong expertise in modern frontend technologies such as web components, React, and Microfrontends.
- Experience designing and delivering intuitive, high-performing, and reliable user interfaces.
- Proficiency in TypeScript, Stencil.js, and React.
- Ability to design, develop, and maintain efficient, reusable, and scalable web components.
- Experience with system design best practices including accessibility (WCAG compliance), performance optimization, and responsive design.
- Proven ability to integrate web components into Stencil.js and React projects.
- Experience working with backend engineers to design APIs for frontend interaction.
- Strong skills in writing clean, maintainable, and well-documented code.
- Experience performing code reviews and enforcing coding standards.
- Experience creating unit and integration tests.
- Ability to debug and resolve frontend performance issues.
- Strong collaboration skills with designers, product managers, and engineers.
- Ability to mentor junior engineers and share technical knowledge.
- Experience optimizing frontend performance across browsers and platforms.
- Ability to create comprehensive documentation for reusable components.
- Proven track record of providing technical support for component integration.
- Commitment to continuous learning and improvement in frontend technologies.
- Experience collaborating with DevOps on CI/CD processes for frontend builds and deployments.
- Ability to ensure smooth handoff of frontend deliverables to QA and resolve testing issues.
Technical Stack
- TypeScript
- Stencil.js
- React
- Web Components
- Microfrontends
