Senior React/PWA Developer Clean Up Existing Production App + Complete Remaining Features

via Freelancer ·

Budget / SalaryC$30–250
TypeFreelance project
LocationRemote
Posted2 hours ago
We have an existing **Progressive Web App built in React that is already live and being used**, but the codebase grew quickly during the initial development phase. We are now looking for an experienced React developer/engineer to step in, understand the existing system, clean up the architecture, resolve technical issues, and complete several unfinished or unreliable features.

**This is not a greenfield project and we do not want the application rebuilt from scratch.**

The goal is to take what already works, preserve it, remove unnecessary complexity, fix weak areas properly, and leave us with a clean, stable, scalable codebase that another developer can easily maintain in the future.

### What We Need

The first step will be to review the existing repository and understand how the application currently works before making major changes.

The main responsibilities will include:

* Audit the existing React application and identify messy, duplicated, unnecessary, or fragile code.
* Refactor React components, hooks, utilities, state logic, API/service layers, routing, and supporting files where necessary.
* Simplify overly complicated logic without changing working functionality.
* Remove dead code, unused dependencies, duplicate implementations, temporary fixes, and unnecessary workarounds.
* Improve folder structure, naming conventions, reusable components, and separation of concerns.
* Diagnose existing console errors, warnings, failed requests, runtime issues, and browser-specific problems.
* Fix the **root cause** of bugs instead of simply suppressing errors.
* Review and improve the current service-worker and Workbox implementation.
* Complete unfinished functionality already present within the application.
* Improve general performance, reliability, error handling, and maintainability.
* Ensure changes do not introduce regressions into features that are currently working.

### Priority Features

Three areas currently require particular attention:

**1. Authentication & Session Management**

Authentication needs to work reliably across login, logout, session restoration, protected routes, refreshes, expired sessions, and different user states.

We want authentication logic to be centralized, predictable, secure, and easy to maintain.

**2. Progressive Web App / Offline Functionality**

The app should behave like a proper PWA.

This includes reviewing:

* Service worker registration
* Workbox configuration
* Cache strategies
* Static asset caching
* Runtime caching
* Offline fallback behaviour
* App updates
* Cache invalidation
* Version changes
* Network failures
* Reconnection behaviour

Users should not experience broken screens or stale application versions because of incorrect caching.

**3. Push Notifications**

Review the existing push-notification implementation and complete or repair it so notifications work reliably.

This includes browser permissions, token/subscription management, service-worker handling, foreground/background behaviour, and notification interaction where applicable.

### Existing Stack

The application currently uses:

* React
* Create React App
* JavaScript
* HTML
* CSS
* Progressive Web App architecture
* Service Workers
* Workbox

You will receive repository access along with documentation explaining the current application structure, routing, known problems, and areas of the codebase that require the most attention.

Screenshots, console errors, reproduction steps, and additional technical context can also be provided.

### Important Development Approach

We are specifically looking for someone who can **understand an existing system before changing it**.

We do not want someone to immediately rewrite the application, replace major technologies, or introduce unnecessary frameworks simply because they prefer another stack.

Where architectural changes are recommended, explain:

* What the current problem is
* Why the change is necessary
* What risk it solves
* Whether it could affect existing functionality

Major architectural changes should be discussed before implementation.

The application is already live, so changes must be made carefully and tested properly.

### Deliverables

By completion, we expect:

1. **Codebase Audit**

* Clear identification of major technical problems, unnecessary complexity, duplication, and architectural weaknesses.

2. **Refactored Codebase**

* Cleaner React components and hooks
* Better organization
* Reduced duplication
* Removal of unnecessary code
* Improved error handling
* Clear comments only where they genuinely help explain non-obvious logic

3. **Bug Resolution**

* Existing console/runtime errors investigated and fixed at their source.

4. **Working Authentication**

* Reliable authentication, sessions, protected routes, logout/login behaviour, and state restoration.

5. **Reliable PWA / Offline Support**

* Proper service-worker behaviour
* Predictable caching
* Offline functionality
* Correct application updating/version behaviour

6. **Working Push Notifications**

* Proper registration, permission handling, subscriptions/tokens, foreground/background behaviour, and notification interaction.

7. **Browser Verification**

* Core functionality verified in the latest versions of Chrome and Microsoft Edge.
* Mobile/PWA behaviour should also be checked where applicable.

8. **Regression Testing**

* Existing working functionality should remain functional after refactoring.

9. **Change Log**

* A concise summary explaining:

* What was changed
* Why it was changed
* Bugs discovered
* Bugs resolved
* Remaining technical debt
* Recommended future improvements

10. **Clean Repository Handover**

* Final code committed in a structured manner with meaningful commit messages and no unexplained temporary/debug code left behind.

### Who We Are Looking For

This project is best suited for a **senior React developer or full-stack JavaScript engineer with strong debugging and architecture skills**, rather than someone who mainly builds basic React interfaces.

Strong experience with the following is highly preferred:

* Maintaining and refactoring existing production React applications
* React architecture and hooks
* JavaScript debugging
* Progressive Web Apps
* Service Workers
* Workbox
* Browser caching strategies
* Authentication/session management
* Web push notifications
* Chrome DevTools
* Performance/debugging tools
* Git and structured production workflows

Experience troubleshooting complicated existing codebases is especially important.

### When Applying

Please briefly explain:

* Your experience repairing or refactoring an existing React application rather than building one from scratch.
* A PWA, service-worker, offline-cache, or push-notification project you have worked on.
* How you normally approach an unfamiliar production codebase before making changes.
* How you would diagnose service-worker/cache problems without disrupting existing users.
* Whether you are comfortable documenting technical debt and recommending a phased cleanup instead of unnecessarily rewriting the application.

Please include relevant GitHub repositories, portfolio work, or examples if available.

Generic proposals will not be prioritized.

We are looking for someone who can **take ownership of the technical quality of the application, understand why problems are happening, clean up what already exists, and help us move from a rushed first release to a stable production-grade platform.**
javascript css html5 jquery / prototype agile development debugging git web development frontend development architecture
Apply on Freelancer →

Project sourced from Freelancer.com. Applications happen directly on the original platform — we never collect your data.