Responsibilities
- Develop and maintain modular, reusable React components to deliver rich, responsive user interfaces
- Collaborate closely with designers and product managers to enhance UI/UX, improve existing interfaces, and design new user flows
- Write and maintain comprehensive test cases to ensure code quality, reliability, and long-term maintainability
- Act as a communication bridge between UI/UX designers, backend engineers, and end users, ensuring alignment between design intent and functionality
- Contribute to frontend architecture decisions and participate in design and code reviews to uphold best practices
- Build interactive, visual-driven interfaces, such as drag-and-drop layouts, WYSIWYG editors, and topology-style device maps
- Implement advanced UI interactions, including element snapping, dynamic resizing, collision detection, and visual feedback, to support smooth drag-and-drop workflows
- Develop scalable frontend visualization components for displaying device relationships, floorplans, and system topologies
Requirements
- Strong proficiency in HTML, CSS, JavaScript (ES2015+), and TypeScript
- Extensive hands-on experience developing applications with React
- Experience with CSS-in-JS solutions, such as styled-components or similar libraries
- Solid understanding of state management patterns, including Redux and React-Redux
- Proficiency with modern React patterns, including hooks, context, and functional components
- Strong foundation in software design principles and patterns, such as Clean Architecture and Single Responsibility Principle
- Familiarity with modern web protocols and frontend security best practices
- Proven ability to analyze, debug, and solve complex technical problems
- Passion for clean code, performance optimization, and responsive UI design
- Experience working in Agile/Scrum teams, using Git and Git flow for collaboration
Nice to Have
- Fluent English communication skills, with the ability to clearly discuss APIs, implementation changes, and technical trade-offs with global teams
- Experience with AI-assisted development workflows, including spec-driven development
- Hands-on experience with Micro-Frontend architectures, such as Module Federation
- Proven track record in frontend performance optimization, including perceived performance improvements, code splitting, and lazy loading
- Experience building and publishing npm packages or shared libraries, with knowledge of bundle optimization and mono-repo tooling (e.g., Yarn Workspaces, Lerna, pnpm)
- Background in IoT device interfaces, networking, or connectivity-related domains
- Experience building products from scratch (0-to-1), including side projects demonstrating end-to-end ownership
- Familiarity with map libraries or data visualization libraries
- Experience with frontend testing frameworks
- Exposure to Node.js and full-stack development concepts
- Ability to quickly adapt to new domains, proactively seek context, ask the right questions, and take ownership of complex challenges