We are seeking a Frontend Developer with strong hands-on expertise in React to design and implement modern, scalable, and highly interactive web interfaces. The role focuses on building production-grade frontend applications, including complex UI components such as visual workflow and drag-and-drop editors, while integrating reliably with backend services.
The ideal candidate understands not only React, but how frontend applications communicate with APIs, manage client-side state, and behave inside the browser runtime.
Key Responsibilities:
Frontend Development (React)
- Develop and maintain modern web applications using React.
- Build reusable components using functional components and hooks.
- Implement state management solutions (e.g., Redux / Redux Toolkit, Context API, or equivalent).
- Integrate frontend applications with RESTful APIs, handling authentication, data fetching, errors, and edge cases.
- Implement client-side routing, form handling, and validation.
- Ensure responsiveness, accessibility, and cross-browser compatibility.
- Optimize performance and rendering behavior.
API Integration & Browser Runtime
- Consume and manage data from REST APIs using appropriate client-side patterns.
- Handle authentication tokens, session data, and API headers securely on the client.
- Work with browser storage mechanisms such as:
- Local Storage
- Session Storage
- Cookies (where applicable)
- Manage caching, persistence, and state rehydration responsibly.
- Handle browser-specific behaviors, refresh flows, and navigation states.
Advanced UI & Interaction Design
- Design and implement complex interactive UIs, including drag-and-drop interfaces.
- Contribute to or build visual workflow or process designers, such as BPMN-style editors, no-code or flow-based builders.
- Implement UI logic for node relationships, transitions, validation rules, and user interactions in visual editors.
- Align UI models with backend workflow or process execution logic.
UI Quality & Delivery
- Work with UI frameworks or design systems (e.g., MUI, Ant Design, Tailwind, or custom systems).
- Follow UI/UX best practices and maintain visual consistency.
- Participate in code reviews and contribute to frontend standards.
- Own frontend features from development through production release.
Requirements
- Bachelor’s degree in Computer Science, Information Technology, or a related field.
- 3–5 years of experience in frontend development with a focus on React.js.
- Strong hands-on experience with React.
- Proficiency in JavaScript; TypeScript is strongly preferred.
- Practical experience with state management (Redux / Redux Toolkit, Context API, or equivalent).
- Experience integrating with RESTful APIs.
- Experience handling browser storage (local storage, session storage, cookies).
- Solid understanding of HTML5, CSS3, and modern layout techniques.
- Experience building interactive and non-trivial UIs, including:
- Drag-and-drop interfaces
- Visual editors or workflow designers
- Familiarity with frontend interaction patterns and libraries used for such components.
- Proficiency with Git-based version control systems.
- Familiarity with frontend build tools and package managers.
- Understanding of frontend performance optimization techniques.
- Experience working with production frontend systems.
Preferred Qualifications
- Familiarity with LLM-based development environments or "vibe coding" methodologies
- Experience working on SaaS or platform-based applications.
- Experience with visual workflow designers (BPMN, no-code, flow editors).
- Exposure to frontend data-fetching libraries (e.g., React Query, SWR).
- Familiarity with frontend testing frameworks.
- Experience integrating frontend applications with complex backend systems.
- Knowledge of data visualization libraries (e.g., D3.js, Chart.js, ECharts) is a plus.
- Arabic language handling and localization experience is an advantage.
Core Competencies:
- Fast learner with a hacker mindset and strong product sensibility.
- Ability to iterate quickly, handle ambiguity, and pivot based on feedback.
- Strong communication and collaboration across technical and non-technical teams.
- Attention to quality and usability even in early-stage prototypes.
- Passion for innovation, experimentation, and building new things.
