Calmis, a startup building a secure corporate messenger based on the Matrix protocol, is hiring a Tech Lead Frontend Engineer to lead frontend architecture and team development.

Responsibilities:

  • Provide technical leadership and mentorship to frontend developers.
  • Manage the team: assign tasks, conduct code reviews and 1:1s, evaluate and develop employees.
  • Design SPA and state-management architecture without Redux, using singleton stores and a Flux dispatcher.
  • Develop and maintain a fork of Element Desktop, including main/renderer, IPC and electron-builder.
  • Build SPA pages and widgets with React and TypeScript, integrating the Matrix SDK.
  • Write unit tests and ensure quality; optimize performance through React profiling, virtualization and reducing re-renders.
  • Integrate REST APIs and JavaScript SDKs, including authorization and error handling.
  • Work in a large legacy codebase and fork, make targeted changes, patch dependencies and merge upstream updates.
  • Participate in hiring, onboarding and developing engineering culture; coordinate with product, backend and leadership.

Requirements:

  • 5+ years of frontend experience with React 19 and strict TypeScript, including hooks, useSyncExternalStore, generics and discriminated unions.
  • 3+ years of management experience leading a team of 2+ people, including code reviews, mentoring and planning.
  • Technical leadership experience, including architectural decisions, technology selection and quality control.
  • Willingness to work with legacy class components and a Flux dispatcher.
  • Experience with large unfamiliar legacy codebases and forks; confident Git use, including rebase, merge conflict resolution and bisect.
  • Understanding of SPA architecture and separation of concerns; experience integrating REST APIs and JavaScript SDKs.
  • HTML/CSS, CSS Modules, PostCSS, design tokens and multi-theming. Tailwind is not used.
  • Unit testing with Jest, Vitest and Testing Library; familiarity with linting, i18n, accessibility and code review.
  • English sufficient for reading documentation (B1+).

Nice to have: production Electron experience; MVVM, Feature-Sliced Design and Flux stores; architectural knowledge of RxJS; WebRTC and LiveKit; Vite, Webpack, pnpm/Yarn Berry, dependency patching and Nx; Playwright, testcontainers and Storybook; Matrix or other messenger APIs; open-source forking; experience establishing processes in a startup.

Conditions: Remote, full-time, flexible schedule aligned with Moscow time. Payments twice a month. The team offers interesting technical challenges.

Hiring process: resume screening, brief Telegram cross-interview, technical interview with the team, leadership interview and offer.