Frontend Engineer (React/TypeScript) — Real-Time Chat UI for Slack-Style Platform (WebSocket)
Worldwide
We are building TeamChat, a workspace-based team collaboration platform (similar to Slack). This role owns the entire web client: a fast, polished, real-time chat UI. We have detailed UI requirements and an API/event contract from the backend team ready to share with shortlisted candidates. One of 5 parallel roles; strong performance leads to ongoing, long-term collaboration. CORE RESPONSIBILITIES & SCOPE OF WORK 1. App Shell & Navigation: Workspace switcher, channel sidebar with sections/unread badges, quick switcher (Cmd+K), responsive layout down to tablet. 2. Message List: Virtualized infinite scroll (tens of thousands of messages), day separators, new-message divider, edit/delete states, reactions, threads in side panel, optimistic sending with retry/failed states. 3. Composer: Rich text (bold/italic/code blocks), @mention and emoji autocomplete, file attach with upload progress, draft persistence per channel. 4. Real-Time Integration: WebSocket event handling (new message, edits, presence, typing, read receipts) with reconnection and state reconciliation; client state via Zustand/Redux + TanStack Query. 5. Notifications UI: Unread/mention badges, notification preference screens, in-app toasts. 6. Quality: Component library with Storybook, unit tests (Vitest/RTL), Lighthouse performance budget, dark mode. REQUIRED TECH STACK - React 18+, TypeScript (strict), Vite - State: Zustand or Redux Toolkit + TanStack Query - Styling: Tailwind CSS - Real-time: native WebSocket handling - Testing: Vitest, React Testing Library, Storybook PROJECT DETAILS - Engagement: Hourly, $13–$30/hr depending on experience. 30+ hrs/week, initial 3 months, ongoing long-term for the right person. - Process: Daily async standup (English, text), code review via GitHub PRs, 2-week sprints. At least 3–4 hours of overlap with JST (UTC+9). - IP & Code: All code delivered in our GitHub org from day one; full source ownership by us. - Language: English required. Urdu-speaking developers welcome. QUESTIONS TO ANSWER IN YOUR PROPOSAL 1. Share a complex real-time or data-heavy UI you built (links/screenshots/GitHub). What was the hardest rendering-performance problem and how did you solve it? 2. How would you implement optimistic message sending with failure recovery? 3. Have you built a virtualized message/feed list before? With which library, and why? 4. Timezone, weekly availability, proposed rate. 5. Start your proposal with the word TEAMCHAT.
- More than 30 hrs/weekHourly
- 3-6 monthsDuration
- IntermediateExperience Level
$13.00
-
$30.00
Hourly- Remote Job
- Complex projectProject Type
Skills and Expertise
Activity on this job
- Proposals:20 to 50
- Interviewing:0
- Invites sent:0
- Unanswered invites:0
About the client
- Japan渋谷区4:42 PM
Explore similar jobs on Upwork
How it works
Create your free profileHighlight your skills and experience, show your portfolio, and set your ideal pay rate.
Work the way you wantApply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
Get paid securelyFrom contract to payment, we help you work safely and get paid securely.
About Upwork
- 4.9/5(Average rating of clients by professionals)
- G2 2021#1 freelance platform
- 49,000+Signed contract every week
- $2.3BFreelancers earned on Upwork in 2020
Find the best freelance jobs
Growing your career is as easy as creating a free profile and finding work like this that fits your skills.
Trusted by
Other open jobs by this Client (5)
- AI Engineer — LLM Features for Team Chat (Summarization, Smart Replies, AI Assistant)Hourly
- DevOps Engineer — AWS, Terraform, CI/CD & WebSocket Scaling for Real-Time Chat PlatformHourly
- Frontend Engineer (React/TypeScript) — Real-Time Chat UI for Slack-Style Platform (WebSocket)Hourly
- AI Engineer — RAG & Semantic Search for Team Chat Platform (Python, pgvector, Embeddings)Hourly
- Python/FastAPI Backend Engineer — Real-Time Slack-Style Chat (WebSocket, Redis, PostgreSQL)Hourly