You will join an international frontend team responsible for maintaining and evolving a modern cross-framework UI component library used across several frontend platforms. The project is focused on building scalable, reusable Web Components using Stencil.js, supporting integration with React, Vue, and Angular. You will work in a monorepo environment, support internal consumers, maintain documentation, and help drive adoption across the organization.
Position: UI Developer
Start Date: August 2025
Duration: 2–3 months (with possible extension)
Engagement: Full-time, B2B
Location: Remote (EU Based)
Language: English
What you’ll do:
- Develop and maintain reusable UI components using Stencil.js for use in React, Vue, and Angular.
- Build and optimize Web Components for seamless cross-framework compatibility.
- Work within a monorepo structure (managed with Lerna).
- Write clean, scalable, and maintainable code in TypeScript.
- Develop components in isolation using Storybook.
- Perform rigorous unit and E2E testing with Jest and Puppeteer.
- Support consumers of the library with onboarding and usage.
- Communicate updates, facilitate AMA sessions, and contribute to documentation using Docusaurus.
- Collaborate with global teams across time zones and cultures.
What we’re looking for:
- Strong hands-on experience with JavaScript / TypeScript.
- Solid knowledge of at least one major frontend framework (React, Vue, or Angular).
- Proven experience with Stencil.js or Web Components (strong advantage).
- Familiarity with monorepo tools (e.g., Lerna, Nx).
- Ability to analyze and learn from existing Design Systems (e.g., Material UI, Ant Design).
- Comfortable working with Figma Dev Mode, inspecting designs, and working with design tokens.
- Good understanding of a11y standards – WCAG, ARIA roles, screen reader testing.
- Testing mindset – experienced with Jest, Puppeteer, or similar tools.
- Agile team experience – familiar with Scrum ceremonies (standups, retros, planning).
- Awareness of CI/CD tools, preferably Azure DevOps.